国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

讓PowerBuilder制作查詢系統的界面更加酷

2024-07-21 02:10:11
字體:
來源:轉載
供稿:網友

在管理信息系統中,查詢系統占了相當重要的地位(sql的中文就是結構化查詢語言),因為它是向用戶開放的,界面一定要友善,要讓別人一看就會操作。根據查詢結果記錄的個數來分,查詢可分為兩種:1.唯一記錄查詢。如:從鍵盤輸入記錄號,查詢該人的檔案。

2. 模糊查詢,結果記錄可能很多。

這里我們以制作婚姻介紹系統為例子,包括了難度較大的模糊查詢,多按鈕式選擇界面,記錄的連動。 工作原理:通過自己定義變量的來傳遞選擇的條件,如:性別可定義變量sex,年齡可定義變量old。注意變量要先定義,后使用。一. 多按鈕選擇界面的制作。在分組框內多個radio button在同一時刻只能選中一個。操作步驟:新建一名字為b2的窗口,窗口內放置控件如下圖。定義變量(重要),按菜單declare的instance variables,在對話框中定義實例變量,鍵盤輸入: string sexinteger old定義變量后查詢按鈕的click事件中輸入如下腳本:if rb_1.checked=true thensex="w"elseif rb_2.checked=true thensex="m"end ifif rb_3.checked=true thenold=30elseif rb_4.checked=true thenold=40elseif rb_5.checked=true thenold=50end if sle_1.text=sexsle_2.text=string(old)若運行窗口(注意不是運行應用程序),選擇后按查詢按鈕,結果如下圖,則變量已被正確地自動賦值。二.數據的過濾。接下來要進行過濾操作,即將變量傳給sql語言中的where語句,在哪里寫sql語句呢?在數據窗口下方的where標簽頁里,可以自動生成sql的過濾語句。在sql anywhere里制作建立并輸入下表,表名為aaa1,表頭:字段 類型 長度 標題頭id char 10 編號name char 10 姓名old integer 年齡sex char 10 性別status char 30 狀況表aaa1的內容:id name old sex status1 小王 23 女 導游會英語2 小李 34 男 個體收入高3 小林 45 女 會計4 小黃 27 男 電腦專家5 小鄭 38 女 教師在數據窗口中新建立兩個數據窗口:數據來源都為aaa1表,要求如下:數據窗口名 字段 數據源形式 顯示格式 sql過濾語句ad1 id,name,old,sex sql select 表格 "aaa1"."sex"=:sex and"aaa1"."old"<=:oldad2 id,name,old,sex,status sql select 自由格式 "aaa1"."id"=:id注意寫sql過濾語句是:在數據窗口中,先點中id和 name兩個字段,在窗口下方按where標簽頁,按colume,并在cloume的下拉條中選中"aaa1"."sex",在valua的一欄中填入 :sex,注意,這里的sex前面有一冒號,再在cloume的下拉條中選中"aaa1". "old",在operator欄選<=,在valua的一欄中填入 :old,按窗口上方的desion菜單,選retriveal arguments,在name一欄填sex,注意,這里的sex前面沒有冒號,type一欄選string,再在name一欄的下一行填old,type一欄選number。同時,為讓個人資料的表格數據按年齡升序排列,在窗口下方按sort標簽頁,將左邊的id字段拖到右邊。按syntax標簽頁可看到自動生成的sql語句。select "aaa1"."id", "aaa1"."name", "aaa1"."old", "aaa1"."sex" from "aaa1" where ( "aaa1"."sex" = :sex ) and ( "aaa1"."old" <= :old ) order by "aaa1"."old" asc這里sql語句的意思是選取性別=變量sex,年齡<=變量old的記錄。只顯示幾個字段。盡管在pb中,這些語句是通過拖動圖標自動生成,但看一看,了解其工作原理還是有好處的。三.數據的連動.可以用鼠標讓記錄的連動的窗口制作如下圖,這里主要用到函數getitemstring(getrow(),1),它可取得雙擊鼠標當前行的左邊第一個字符串,即數據窗口一內當前行id字段的值,并賦給實例變量tttt,tttt再傳給數據窗口二的sql的過濾語句,where id=:id,就可在數據窗口二中顯示id=tttt的記錄。在這兩個數據窗口之間,變量tttt從數據窗口一跑到數據窗口二,起到象橋梁般的連接作用。數據窗口一即dw_1的鼠標單擊事件的腳本如下:ttttt=dw_1.getitemstring (getrow(),1)sle_1.text=tttttb4.dw_1.settransobject(sqlca)b4.dw_1.retrieve(b3.ttttt)dw_2.settransobject(sqlca)dw_2.retrieve(ttttt)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双峰县| 香格里拉县| 怀集县| 新巴尔虎左旗| 灌阳县| 分宜县| 民勤县| 苍溪县| 新田县| 内黄县| 辽宁省| 大渡口区| 仁怀市| 博野县| 广安市| 麦盖提县| 葫芦岛市| 社旗县| 怀集县| 西和县| 嘉义县| 呈贡县| 常德市| 德安县| 略阳县| 荆门市| 双辽市| 靖安县| 曲周县| 明光市| 姚安县| 盈江县| 江达县| 抚松县| 鸡东县| 崇礼县| 台安县| 三河市| 瑞丽市| 湾仔区| 绥宁县|