




已閱讀5頁,還剩88頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第6章數(shù)據(jù)窗口對(duì)象 6 1數(shù)據(jù)窗口對(duì)象在應(yīng)用程序中的地位及作用6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象6 3數(shù)據(jù)窗口的顯示風(fēng)格6 4數(shù)據(jù)源6 5數(shù)據(jù)窗口對(duì)象畫板6 6數(shù)據(jù)窗口對(duì)象設(shè)計(jì)6 7數(shù)據(jù)窗口對(duì)象實(shí)例設(shè)計(jì)小結(jié) 返回總目錄 6 1數(shù)據(jù)窗口對(duì)象在應(yīng)用程序中的地位及作用 數(shù)據(jù)窗口對(duì)象是PowerBuilder中一種功能十分強(qiáng)大的對(duì)象 是Sybase公司的專利技術(shù) 也是PowerBuilder工具的精華所在 數(shù)據(jù)窗口對(duì)象是PowerBuilder開發(fā)應(yīng)用程序的重點(diǎn) 應(yīng)認(rèn)真學(xué)習(xí) PowerBuilder作為一種數(shù)據(jù)庫前端開發(fā)工具 操作對(duì)象的核心是數(shù)據(jù)庫中的數(shù)據(jù) 然而數(shù)據(jù)窗口對(duì)象的作用正是為了顯示數(shù)據(jù)庫中的數(shù)據(jù)并允許用戶進(jìn)行修改 由此可以看出數(shù)據(jù)窗口對(duì)象是對(duì)數(shù)據(jù)庫操作 并將檢索到的數(shù)據(jù)顯示給用戶 起到了中間媒介的作用 圖6 1為客戶訂單數(shù)據(jù)窗口對(duì)象畫板 返回章目錄 本節(jié)完 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 數(shù)據(jù)窗口對(duì)象是用于在窗口界面上進(jìn)行數(shù)據(jù)錄入 查詢 更新和以各種方式表現(xiàn)的區(qū)域 它的數(shù)據(jù)源可以是大型數(shù)據(jù)庫 如SYBASE ORACLE DB2 也可以是各種ODBC數(shù)據(jù)源 它的顯示風(fēng)格更是多種多樣 如網(wǎng)格 標(biāo)簽 統(tǒng)計(jì)圖等 返回章目錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 利用數(shù)據(jù)窗口對(duì)象畫板創(chuàng)建數(shù)據(jù)窗口對(duì)象的步驟如下 1 單擊工具欄上的 New 圖標(biāo) 然后在彈出 New 對(duì)話框中選擇 DataWindow 標(biāo)簽頁 如圖6 2所示 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 2 DataWindow選項(xiàng)頁中列出了11種數(shù)據(jù)窗口的樣式 每一種樣式代表了一種獨(dú)特的顯示風(fēng)格 在后面我們將詳細(xì)地講解 這里我們選擇其中的一項(xiàng)Grid 網(wǎng)格形式 3 選擇好顯示風(fēng)格后單擊 OK 按鈕 彈出圖6 3選擇數(shù)據(jù)源類型對(duì)話框 Power Builder提供了5種數(shù)據(jù)源供用戶選擇 在后面我們將詳細(xì)的講解 這里我們選擇其中的一項(xiàng)QuickSelect 快速選擇數(shù)據(jù)源 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 4 選擇數(shù)據(jù)源之后 單擊 Next 按鈕 彈出 QuickSelect 對(duì)話框 在此對(duì)話框中列出了當(dāng)前連接的數(shù)據(jù)庫中所用的表名 如圖6 4所示 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 5 在圖6 4所列的表中選擇某一項(xiàng) 如選擇 teainfo 項(xiàng) 這時(shí)彈出圖6 5所示界面 在Columns列表中選擇所需的列表項(xiàng) 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 6 完成字段選擇后 單擊 OK 命令按鈕 彈出 SelectColorandBorderSettings 顏色和邊框設(shè)置對(duì)話框 如圖6 6所示 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 7 設(shè)置好顏色和邊框類型之后 單擊 Next 按鈕 彈出 ReadytoCreateGridDataWin dow 對(duì)話框 顯示關(guān)于新建數(shù)據(jù)窗口對(duì)象屬性的列表 供設(shè)計(jì)者檢查 確定 如果有問題 隨時(shí)可以返回上一步操作 重新選擇和設(shè)置數(shù)據(jù)窗口對(duì)象的屬性 如圖6 7所示 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 8 單擊 ReadytoCreateGridDataWindow 對(duì)話框的 Finish 按鈕 打開數(shù)據(jù)窗口畫板 按指定特征創(chuàng)建數(shù)據(jù)窗口對(duì)象 如圖6 8所示 返回本節(jié)錄 6 2創(chuàng)建數(shù)據(jù)窗口對(duì)象 9 單擊工具欄上的 Save 保存按鈕 彈出 SaveDataWindow 對(duì)話框 保存當(dāng)前編輯的數(shù)據(jù)窗口對(duì)象 在 SaveDataWindow 對(duì)話框中輸入數(shù)據(jù)窗口對(duì)象名 這里的數(shù)據(jù)窗口對(duì)象名為 dteacherinformation 點(diǎn)擊 OK 按鈕保存 一個(gè)簡單的數(shù)據(jù)窗口對(duì)象建立完畢 本節(jié)完 返回本節(jié)錄 6 3數(shù)據(jù)窗口對(duì)象的顯示風(fēng)格 6 3 1Freeform風(fēng)格的使用6 3 2Grid風(fēng)格的使用6 3 3Tabular風(fēng)格的使用6 3 4Graph風(fēng)格的使用6 3 5Group風(fēng)格的使用6 3 6Composite風(fēng)格的使用6 3 7N Up風(fēng)格的使用6 3 8Label風(fēng)格的使用6 3 9RichText風(fēng)格的使用6 3 10Crosstab風(fēng)格的使用6 3 11OLE2 0風(fēng)格的使用 返回章目錄 6 3 1Freeform風(fēng)格的使用 Freeform為自由格式 其特點(diǎn)是布局靈活 自由 可以根據(jù)需要任意調(diào)整字段及其標(biāo)題文本在數(shù)據(jù)窗口對(duì)象中的位置 缺省狀態(tài)為所有字段以垂直方式排列在數(shù)據(jù)窗口左側(cè) 一般情況 自由格式的數(shù)據(jù)窗口一屏顯示一條記錄 返回本節(jié)錄 6 3 1Freeform風(fēng)格的使用 例如創(chuàng)建一個(gè)以 SQLSelect 為數(shù)據(jù)源 以 Freeform 為顯示風(fēng)格的數(shù)據(jù)窗口對(duì)象 如圖6 9所示 返回本節(jié)錄 6 3 1Freeform風(fēng)格的使用 選好數(shù)據(jù)窗口對(duì)象的顯示風(fēng)格之后 選擇 dteacherinformation 表及此表中的所有列 創(chuàng)建完畢后 調(diào)整各字段 預(yù)覽此數(shù)據(jù)窗口對(duì)象 顯示結(jié)果如圖6 10所示 圖6 10Freeform風(fēng)格的數(shù)據(jù)窗口對(duì)象預(yù)覽 返回本節(jié)錄 6 3 2Grid風(fēng)格的使用 Grid為表格式 其特點(diǎn)是數(shù)據(jù)的行與列之間通過網(wǎng)格線分隔 所有的字段標(biāo)簽都在第一行顯示 數(shù)據(jù)都位于字段標(biāo)簽下的網(wǎng)格中 但是 在設(shè)計(jì)數(shù)據(jù)窗口對(duì)象時(shí) 不能移動(dòng)列以及列標(biāo)題的左右次序 它是顯示數(shù)據(jù)容量最大的一種樣式 如圖6 11所示 返回本節(jié)錄 6 3 3Tabular風(fēng)格的使用 Tabular為列表格式 其特點(diǎn)與Grid基本相同 數(shù)據(jù)的行與列之間沒有網(wǎng)格線分隔 如圖6 12所示 返回本節(jié)錄 6 3 4Graph風(fēng)格的使用 Graph為統(tǒng)計(jì)圖風(fēng)格 其特點(diǎn)是數(shù)據(jù)以圖形顯示 比較直觀 PowerBuilder提供的統(tǒng)計(jì)圖有十幾種 如直方圖 曲線圖 餅圖等 經(jīng)常用于分析天氣的變化情況 股市的漲幅及商品在市場(chǎng)中的占有比例等 例如創(chuàng)建一個(gè)Graph顯示風(fēng)格的數(shù)據(jù)窗口對(duì)象 用來統(tǒng)計(jì)不同性別的教師人數(shù) 實(shí)現(xiàn)方法如下 返回本節(jié)錄 6 3 4Graph風(fēng)格的使用 1 在單擊 新建 按鈕 定義 QuickSelect 數(shù)據(jù)源及 Graph 顯示風(fēng)格后 選擇表 tteacherinfo 及其中的 teacherid 列和 sex 列 定義后返回 彈出圖6 13所示對(duì)話框 返回本節(jié)錄 6 3 4Graph風(fēng)格的使用 2 在圖6 13所示對(duì)話框的 Category 下拉列表框中選擇橫坐標(biāo)列值為 sex 在 Val ues 下拉列表框中選擇縱坐標(biāo)列值為 Count teacheridforgraph 3 在彈出如圖6 14所示的 DefineGraphStyle 對(duì)話框中 輸入顯示的標(biāo)題及顯示的外觀風(fēng)格 然后單擊 Next 兩次 最后點(diǎn)取 Finish 按鈕 數(shù)據(jù)窗口創(chuàng)建完成 顯示如圖6 15 返回本節(jié)錄 6 3 4Graph風(fēng)格的使用 4 如果要修改其他屬性 打開屬性視圖區(qū) 如圖6 16所示 返回本節(jié)錄 6 3 4Graph風(fēng)格的使用 5 在預(yù)覽窗口中顯示的結(jié)果如圖6 17所示 返回本節(jié)錄 6 3 5Group風(fēng)格的使用 Group格式為分組顯示數(shù)據(jù) 特點(diǎn)是可以將檢索到的數(shù)據(jù)按某一列分組顯示出來 例如 以按 kehu 表的 kehuprovince 省份 分組的數(shù)據(jù)窗口為例 1 單擊 新建 按鈕 定義 QuickSelect 數(shù)據(jù)源及 Group 顯示風(fēng)格后 選擇表 kehu 及其中的 kehuprovince 列和 kehuname 列 定義后返回 彈出如圖6 18所示的對(duì)話框 返回本節(jié)錄 6 3 5Group風(fēng)格的使用 2 在圖6 18中指定分組列 用鼠標(biāo)將左列 kehuprovince 拖到右列 然后單擊 Next 彈出 SetGroupPageData 對(duì)話框 如圖6 19所示 返回本節(jié)錄 6 3 5Group風(fēng)格的使用 3 在圖6 19中可以修改標(biāo)題 缺省標(biāo)題為表名加 Report 按照向?qū)崾军c(diǎn)擊 Next 數(shù)次 直到點(diǎn)擊 Finish 按鈕 數(shù)據(jù)窗口對(duì)象創(chuàng)建完成 如圖6 20所示 預(yù)覽結(jié)果如圖6 21所示 返回本節(jié)錄 6 3 6Composite風(fēng)格的使用 Composite為復(fù)合數(shù)據(jù)窗口對(duì)象 其特點(diǎn)是較多個(gè)數(shù)據(jù)窗口對(duì)象組合起來顯示 但內(nèi)部并沒有任何聯(lián)系 這種數(shù)據(jù)窗口對(duì)象與其他數(shù)據(jù)窗口對(duì)象的不同之處在于它沒有數(shù)據(jù)源 它只是把多個(gè)已創(chuàng)建好的數(shù)據(jù)窗口對(duì)象放在一起 作為一個(gè)數(shù)據(jù)窗口對(duì)象 返回本節(jié)錄 6 3 6Composite風(fēng)格的使用 例如 將數(shù)據(jù)窗口對(duì)象 dkehuname 和 dkehuaddress 合為一個(gè)數(shù)據(jù)窗口對(duì)象 dkehunameaddress 的過程為 1 創(chuàng)建新數(shù)據(jù)窗口對(duì)象 在顯示風(fēng)格中選擇 Composite 類型 在彈出的數(shù)據(jù)窗口對(duì)象的對(duì)話框中選擇 dkehuaddress 和 dkehuname 兩項(xiàng) 然后單擊 Next 按鈕 彈出圖6 22所示窗口 返回本節(jié)錄 6 3 6Composite風(fēng)格的使用 2 對(duì)圖6 22進(jìn)行調(diào)整得到如圖6 23所示預(yù)覽結(jié)果 返回本節(jié)錄 6 3 7N Up風(fēng)格的使用 這種風(fēng)格與Tabular顯示風(fēng)格相似 不同之處在于它可以一行顯示兩條或多條記錄 如圖6 24所示 返回本節(jié)錄 6 3 8Label風(fēng)格的使用 Label為標(biāo)簽風(fēng)格 其特點(diǎn)是數(shù)據(jù)以標(biāo)簽顯示 主要用途是設(shè)計(jì)制作各種標(biāo)簽 如圖6 25所示 返回本節(jié)錄 6 3 9RichText風(fēng)格的使用 這種顯示風(fēng)格主要用于在數(shù)據(jù)窗口對(duì)象中調(diào)入DOC文件或RTF文件 具備了處理文字的功能 不必使用其他的文字處理程序 經(jīng)常作為商業(yè)公文或信函使用 選擇 RichText 作為表現(xiàn)風(fēng)格 再選擇一種數(shù)據(jù)源和所需要的表和列 會(huì)彈出如圖6 26所示的對(duì)話框 單擊按鈕將進(jìn) DataWindow 畫板 一個(gè)新的 Rich Text 表現(xiàn)風(fēng)格的數(shù)據(jù)窗口對(duì)象就被創(chuàng)建了 返回本節(jié)錄 6 3 10Crosstab風(fēng)格的使用 Crosstab為橫向制表顯示風(fēng)格 其外觀類似于 Grid 風(fēng)格 主要用于統(tǒng)計(jì)和分析數(shù)據(jù) 它可以將檢索到的數(shù)據(jù)分類或分組 然后對(duì)不同類或組進(jìn)行累計(jì)求和或求平均值等運(yùn)算 通常用來編制統(tǒng)計(jì)表格 如圖6 27所示 返回本節(jié)錄 6 3 10Crosstab風(fēng)格的使用 圖6 27以 SQLSelect 為數(shù)據(jù)源 Crosstab 為顯示風(fēng)格 選擇表 dd 中的 ddno productno productnumber 用鼠標(biāo)拖動(dòng) ddno 列到 Columns 框中 使 ddno 列成為數(shù)據(jù)窗口的縱向統(tǒng)計(jì)列 用鼠標(biāo)拖動(dòng) productno 列到 Rows 框中 使 productno 列成為數(shù)據(jù)窗口的橫向統(tǒng)計(jì)列 用鼠標(biāo)拖動(dòng) productnumber 列到 Values 框中 使 productnumber 列成為數(shù)據(jù)窗口的統(tǒng)計(jì)值 返回本節(jié)錄 6 3 11OLE2 0風(fēng)格的使用 這種顯示風(fēng)格的數(shù)據(jù)窗口對(duì)象允許用戶在數(shù)據(jù)窗口對(duì)象中嵌入OLE對(duì)象 既能夠顯示非數(shù)據(jù)庫數(shù)據(jù) 比如Word文檔 也能夠顯示數(shù)據(jù)庫中的BLOB 二進(jìn)制大對(duì)象 操作同前 不同的一步是在圖6 28中插入OLE控件窗口 讓操作者選擇某一對(duì)象 本節(jié)完 返回本節(jié)錄 6 4數(shù)據(jù)源 6 4 1QuickSelect數(shù)據(jù)源6 4 2SQLSelect數(shù)據(jù)源6 4 3Query 查詢 數(shù)據(jù)源6 4 4External 外部 數(shù)據(jù)源6 4 5StoredProcedure 存儲(chǔ)過程 數(shù)據(jù)源 返回章目錄 6 4 1QuickSelect數(shù)據(jù)源 快速選擇數(shù)據(jù)源 QuickSelect 是最簡單也是最常用的一種數(shù)據(jù)源形式 其數(shù)據(jù)來自一個(gè)表或一個(gè)視圖 但不能生成計(jì)算列 不支持分組Group 計(jì)算列Computed 提取參數(shù)Having等復(fù)雜的SQLSelect功能 定義快速選擇數(shù)據(jù)源的基本操作步驟在本文開始部分已經(jīng)介紹 需要進(jìn)一步說明的是操作圖6 29快速選擇數(shù)據(jù)源對(duì)話框底部的描述框的基本方法 返回本節(jié)錄 6 4 1QuickSelect數(shù)據(jù)源 1 圖6 29中 Column 行為選中各列的標(biāo)題列表 2 圖6 29中 Sort 行用于指定按哪些列排序以及排序方式 如果希望查詢結(jié)果按某列排序 那么單擊該列下的 Sort 在下拉列表中選擇所需排序方式 其中 Ascending 為升序 Descending 為降序 NotSorted 為不排序 返回本節(jié)錄 6 4 1QuickSelect數(shù)據(jù)源 3 圖6 29中 Criteria 和 Or 行用于指定查詢使用 其中 Criteria 為輸入查詢條件 包括任何SQL關(guān)系操作符 Like In等 如果只輸入了一個(gè)值而未指定操作符 系統(tǒng)就假定操作符為 等于 另外 可以使用邏輯操作符And Or來連接表達(dá)式 如果輸入了多個(gè)表達(dá)式而沒有邏輯運(yùn)算符 系統(tǒng)就使用下述規(guī)則添加上邏輯運(yùn)算符 同行使用 與 運(yùn)算符 And 不同行使用 或 運(yùn)算符 Or 返回本節(jié)錄 6 4 1QuickSelect數(shù)據(jù)源 例如 對(duì)客戶基本信息檢索中 按姓名降序排列 檢索條件為所有中國境內(nèi)姓李的客戶信息 如圖6 30所示 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 SQL選擇數(shù)據(jù)源是一種功能全面的數(shù)據(jù)源 該數(shù)據(jù)源能夠從多個(gè)表中選擇列 指定查詢條件 對(duì)數(shù)據(jù)排列 分組 增加計(jì)算列 定義提取條件參數(shù)等 操作步驟如下 1 單擊工具欄中的 New 按鈕 彈出新建對(duì)話框 在該對(duì)話框中選擇 DataWindow 標(biāo)簽頁 從顯示的風(fēng)格中選擇 Grid 格式 選擇后單擊 OK 按鈕 打開數(shù)據(jù)源窗口 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 2 選擇 SQLSelect 作為數(shù)據(jù)源 單擊 Next 按鈕 彈出 SelectTables 對(duì)話框 從中選擇一個(gè)或多個(gè)表作為數(shù)據(jù)源 如圖6 31所示 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 3 SQL畫板工作區(qū)以圖形方式顯示所選表 當(dāng)打開了多個(gè)表且表之間存在外部鍵時(shí) SQL畫板將自動(dòng)建立外部鍵之間的聯(lián)系 在圖6 31中選擇所需要的表 然后單擊 Open 按鈕彈出圖6 32所示的列表 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 4 在圖6 32所列的表中選擇所需要的列 所選擇的列將顯示在 SelectionList 后面 通過拖放改變其順序 5 選擇所需的字段后 定義數(shù)據(jù)的檢索規(guī)則 如圖6 32所示 指定排序方式 單擊 Sort 標(biāo)簽頁 彈出圖6 33所示的標(biāo)簽頁 把所需要的列用鼠標(biāo)從左邊的列表框中拖拽到右邊的列表框中 此時(shí)將按該列升序排列 如果想按該列降序排列 那么通過單擊使 Ascending 復(fù)選框成為未選中狀態(tài) 如果不想按該列排序 將右側(cè)的該列拖拽回左側(cè) 就消除了按該列排序的設(shè)置 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 定義檢索條件 在圖6 34中 Where 頁可以對(duì)某字段按指定方式顯示 在 Column 中選擇所需的字段 在 Operator 中選擇所需的操作符 Value 為指定參數(shù) 當(dāng)需要多個(gè)條件時(shí)單擊 Logical 可以為多個(gè)條件設(shè)置邏輯關(guān)系 如圖6 34所示 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 定義分組 在SQLSelect數(shù)據(jù)源中 開發(fā)人員可以根據(jù)應(yīng)用程序的需要定義分組 操作方式與排序方式很相似 如圖6 35所示 左側(cè)列出表中所有字段 通過滾動(dòng)條選擇所需要的字段 如果希望按某字段分組 可用鼠標(biāo)從左側(cè)列表中把該字段拖拽到右側(cè)列表中 此時(shí)將按該類分組 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 定義Having子句 該子句是對(duì)分組進(jìn)行過濾 只檢索滿足條件的分組 其用法與 Where 很相似 如圖6 36所示 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 定義計(jì)算列 計(jì)算列不是數(shù)據(jù)庫表中的原始列 而是通過表達(dá)式運(yùn)算得到的列 如某兩列相加就會(huì)形成一個(gè)新的計(jì)算列 如圖6 37所示 在該空行右擊 在彈出菜單中選擇 Columns Functions Arguments 菜單項(xiàng)組合設(shè)置 通過運(yùn)算符及函數(shù)達(dá)到所需的要求 返回本節(jié)錄 6 4 2SQLSelect數(shù)據(jù)源 Syntax項(xiàng) 用于查看當(dāng)前定義條件下的Select語句 6 對(duì)所需要的字段進(jìn)行設(shè)置之后單擊工具欄上的返回按鈕 Return 然后按照操作向?qū)нx擇 當(dāng)單擊 Finish 按鈕時(shí) 打開數(shù)據(jù)窗口對(duì)象畫板 顯示所設(shè)計(jì)的結(jié)果 在所需要調(diào)整的地方進(jìn)行相應(yīng)調(diào)整 最后將其保存 返回本節(jié)錄 6 4 3Query 查詢 數(shù)據(jù)源 Query 查詢 數(shù)據(jù)源是來自 PowerBuilder 的 Query 對(duì)象而不是數(shù)據(jù)庫中的表 Query 對(duì)象實(shí)際上就是保存在應(yīng)用庫中的 Select 語句 定義Query對(duì)象的目的是為了在多個(gè)數(shù)據(jù)窗口中重復(fù)使用相同或相近的 Select 而避免反復(fù)定義 它可以定義檢索參數(shù) 指定排序方法和分組方式 定義檢索條件等 返回本節(jié)錄 6 4 3Query 查詢 數(shù)據(jù)源 操作步驟如下 1 單擊工具欄中的 New 按鈕 彈出 新建 對(duì)話框 在該對(duì)話框中選擇 DataWindow 標(biāo)簽頁 從顯示的風(fēng)格中選擇所需風(fēng)格 選擇后單擊 OK 按鈕 打開數(shù)據(jù)源窗口 2 選擇 Query 作為數(shù)據(jù)源 單擊 Next 按鈕 彈出如圖6 38所示對(duì)話框 返回本節(jié)錄 6 4 3Query 查詢 數(shù)據(jù)源 3 在圖6 38中選擇已存在的 Query 對(duì)象 然后按照操作向?qū)нx擇 完成數(shù)據(jù)窗口的設(shè)置 最后將其保存 在此操作之前要求已經(jīng)創(chuàng)建 Query 對(duì)象 如沒有創(chuàng)建可以單擊工具欄上的 New 按鈕 在打開的對(duì)話框中選擇 Database 頁 單擊 Query 創(chuàng)建 Query 對(duì)象 當(dāng)對(duì)其修改時(shí)將會(huì)影響上面所定義的數(shù)據(jù)窗口對(duì)象 返回本節(jié)錄 6 4 4External 外部 數(shù)據(jù)源 External 外部 數(shù)據(jù)源用于數(shù)據(jù)窗口對(duì)象訪問數(shù)據(jù)庫之外的數(shù)據(jù) 如文本文件 用戶輸入 INI文件等 應(yīng)用此類數(shù)據(jù)源應(yīng)指定數(shù)據(jù)列及數(shù)據(jù)類型 操作過程如下 1 單擊工具欄中的 New 按鈕 彈出 新建 對(duì)話框 在該對(duì)話框中選擇 DataWindow 標(biāo)簽頁 從顯示的風(fēng)格中選擇所需風(fēng)格 選擇后單擊 OK 按鈕 打開數(shù)據(jù)源窗口 返回本節(jié)錄 6 4 4External 外部 數(shù)據(jù)源 2 在數(shù)據(jù)源窗口中選擇 External 作為數(shù)據(jù)源 單擊 Next 按鈕 彈出如圖6 39所示 External 對(duì)話框 3 在圖6 39中定義列以及相應(yīng)的類型和長度 下面的增加 刪除 插入按鈕 相應(yīng)地實(shí)現(xiàn)列的插入 刪除 添加的操作 設(shè)置好所需要的列之后單擊 Next 按鈕 返回本節(jié)錄 6 4 5StoredProcedure 存儲(chǔ)過程 數(shù)據(jù)源 StoredProcedure 存儲(chǔ)過程 是在數(shù)據(jù)庫管理系統(tǒng)中的預(yù)先編譯好的SQL語句 在存取數(shù)據(jù)庫中的數(shù)據(jù)時(shí) 我們不必自己編寫SQL語句 而直接調(diào)用其中的存儲(chǔ)過程即可 其操作過程如下 1 單擊工具欄中的 New 按鈕 彈出 新建 對(duì)話框 在該對(duì)話框中選擇 DataWindow 標(biāo)簽頁 從顯示的風(fēng)格中選擇所需風(fēng)格 選擇后單擊 OK 按鈕 打開數(shù)據(jù)源窗口 2 在數(shù)據(jù)源窗口中選擇 StoredProcedure 作為數(shù)據(jù)源 單擊 Next 按鈕彈出如圖6 40 返回本節(jié)錄 6 4 5StoredProcedure 存儲(chǔ)過程 數(shù)據(jù)源 3 在圖6 40中選擇一個(gè)自定義的存儲(chǔ)過程 然后在其下方顯示語法規(guī)則 4 選擇所要的存儲(chǔ)過程后 如果不選中 ManualResultSet 復(fù)選框 即不是手工定義數(shù)據(jù)類型 單擊 Next 按鈕 然后按照操作向?qū)нx擇 完成數(shù)據(jù)窗口的設(shè)置 并將其保存 如果選中 ManualResultSet 復(fù)選框 表示手工定義數(shù)據(jù)類型 單擊 Next 按鈕 在彈出的對(duì)話框中 可以自己定義數(shù)據(jù)項(xiàng)的名稱 類型 長度等 然后按照操作向?qū)Р僮骷纯?本節(jié)完 返回本節(jié)錄 6 5數(shù)據(jù)窗口對(duì)象畫板 6 5 1數(shù)據(jù)窗口對(duì)象畫板的組成6 5 2數(shù)據(jù)窗口對(duì)象中字段標(biāo)簽的屬性6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性6 5 4數(shù)據(jù)窗口對(duì)象的更新屬性 返回章目錄 6 5 1數(shù)據(jù)窗口對(duì)象畫板的組成 PowerBuilder的數(shù)據(jù)窗口對(duì)象畫板包括Design 設(shè)計(jì) Properties 屬性 Preview 預(yù)覽 ColumnSpecification 列說明 ControlList 控鍵列表 Data 數(shù)據(jù) 共6個(gè)視窗 其中最常用的是Design視窗和Properties視窗 如圖6 41所示 返回本節(jié)錄 6 5 2數(shù)據(jù)窗口對(duì)象中字段標(biāo)簽的屬性 數(shù)據(jù)窗口對(duì)象中字段標(biāo)簽的屬性有5個(gè)選項(xiàng)頁 如圖6 42所示 指定字段的名稱 邊框類型 對(duì)齊方式以及屬性等 指定光標(biāo)落在此字段內(nèi)時(shí)的形狀 設(shè)置HTML的鏈接 設(shè)置字段標(biāo)簽的位置 大小等屬性 指定字體的類型 尺寸 修飾 顏色 背景顏色 使用的字符集等 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 數(shù)據(jù)窗口對(duì)象中字段的屬性有7個(gè)選項(xiàng)頁 各頁的用途和數(shù)據(jù)窗口對(duì)象中的字段標(biāo)簽的用途類似 其中Edit和Format選項(xiàng)頁在字段標(biāo)簽中沒有 在這里主要講解 1 Format標(biāo)簽頁Format格式是用來指定數(shù)據(jù)窗口對(duì)象中列數(shù)據(jù)的顯示格式的 缺省的選項(xiàng)為 Gener al 如果要使用PowerBuilder提供的其他類型的數(shù)據(jù)表達(dá)方式 可以單擊右側(cè)的黑色三角按鈕 如圖6 43所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 2 Edit標(biāo)簽頁該頁中的核心內(nèi)容是 StyleType 編輯樣式 PowerBuilder提供了6種編輯樣式 分別為 Edit CheckBox DropDownDw DropDownListBox EditMask RadioBut tons 的StyleType下拉列表框中選擇 Edit 項(xiàng)后 對(duì)話框顯示如圖6 44所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 2 CheckBox 復(fù)選框 編輯風(fēng)格復(fù)選框的編輯風(fēng)格是指可以設(shè)置一個(gè)數(shù)據(jù)對(duì)象的三種狀態(tài) On 打開 狀態(tài) Off 關(guān)閉 狀態(tài)和第三種狀態(tài) 每種狀態(tài)都可設(shè)置不同的取值 CheckBox編輯樣式適合于簡單的兩值選擇數(shù)據(jù) 例如 性別 字段 就可以選擇Check Box編輯樣式 如圖6 45所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 3 RadioButtons 單選按鈕 編輯風(fēng)格當(dāng)數(shù)據(jù)窗口對(duì)象的某列只能從一組值中選一個(gè)時(shí) 可設(shè)該列具有此種編輯風(fēng)格如圖6 46所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 4 EditMask編輯風(fēng)格這種編輯風(fēng)格用于按規(guī)定的格式錄入數(shù)據(jù) 其屬性視圖如圖6 47所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 5 DropDownListBox 下拉列表框 編輯風(fēng)格這種編輯樣式將以下拉列表框的形式顯示字段 它使用于字段的值只有幾種可能的情況 并且這些情況我們都十分清楚 其屬性如圖6 48所示 返回本節(jié)錄 6 5 3數(shù)據(jù)窗口對(duì)象中字段的屬性 6 DropDownDw 下拉數(shù)據(jù)窗口 編輯風(fēng)格這種編輯風(fēng)格的特點(diǎn)是數(shù)據(jù)窗口中列的數(shù)據(jù)下拉列表來自另一個(gè)數(shù)據(jù)窗口 因此它的數(shù)據(jù)是從數(shù)據(jù)庫中讀取 是可以動(dòng)態(tài)變化的 如圖6 49所示 返回本節(jié)錄 6 5 4數(shù)據(jù)窗口對(duì)象的更新屬性 要指定數(shù)據(jù)窗口對(duì)象的更新屬性 請(qǐng)單擊 Rows UpdateProperties 菜單 彈出圖6 50所示數(shù)據(jù)窗口對(duì)象的更新屬性設(shè)置窗口 如沒有被選中 那么該對(duì)話框中的其他屬性都不能用 如果選中它 就可以設(shè)置其他屬性了 為可更新列表 每個(gè)數(shù)據(jù)窗口對(duì)象在某一時(shí)刻只可以更新一張表 這個(gè)表通過該下拉列表指定 本節(jié)完 返回本節(jié)錄 6 6數(shù)據(jù)窗口對(duì)象設(shè)計(jì) 6 6 1行操作6 6 2表達(dá)式6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 返回章目錄 6 6 1行操作 排序 過濾和分組都屬于數(shù)據(jù)的行操作方式 使用這些手段可以決定顯示哪些數(shù)據(jù) 以什么樣的順序或組織形式顯示 以方便查看 1 定義排序字段打開需要排序的數(shù)據(jù)窗口對(duì)象畫板 單擊工具欄上的 Rows 菜單項(xiàng) 選擇 Sort 彈出如圖6 51所示窗口 操作方式與前面所講的排序方式相似 返回本節(jié)錄 6 6 1行操作 2 定義分組條件打開需要排序的數(shù)據(jù)窗口對(duì)象畫板 單擊工具欄上的 Rows 菜單項(xiàng) 選擇 CreateGroup 彈出圖6 52所示窗口 操作方式與前面所講的排序方式相似 返回本節(jié)錄 6 6 1行操作 3 定義過濾條件在數(shù)據(jù)窗口對(duì)象畫板中 單擊工具欄上的 Rows 菜單項(xiàng) 選擇 Filter 彈出圖6 53所示窗口 在圖中編輯框中數(shù)據(jù)過濾條件表達(dá)式 當(dāng)有多個(gè)條件時(shí)用And或Or連接 返回本節(jié)錄 6 6 2表達(dá)式 當(dāng)在數(shù)據(jù)窗口對(duì)象畫板中定義一個(gè)數(shù)據(jù)窗口對(duì)象時(shí) 其屬性值被指定為默認(rèn)值 在應(yīng)用執(zhí)行期間 我們常常通過設(shè)置對(duì)象的屬性表達(dá)式的方法 將滿足指定條件的數(shù)據(jù)以不同方式標(biāo)識(shí)出來 1 設(shè)置背景顏色在dkehugrid數(shù)據(jù)窗口對(duì)象中設(shè)置屬性表達(dá)式 使顯示風(fēng)格為 奇數(shù)行顯示一種顏色 偶數(shù)行顯示另一種顏色 返回本節(jié)錄 6 6 2表達(dá)式 具體步驟 1 打開 dkehugrid 數(shù)據(jù)窗口對(duì)象畫板 將Detail區(qū)的所有字段選中 然后單擊屬性中 Font 標(biāo)簽頁 如圖6 54所示 返回本節(jié)錄 6 6 2表達(dá)式 2 在 Font 標(biāo)簽頁中單擊 BackgroundColor 屬性右側(cè)的小按鈕 彈出如圖6 55所示窗口 返回本節(jié)錄 6 6 2表達(dá)式 3 在表達(dá)式窗口中設(shè)置顯示條件 使用If語句 并可以使用圖6 55所示下側(cè)的函數(shù) 在本題中輸入的語句為 If Mod Getrow 2 0 Rgb 255 255 0 Rgb 0 255 255 其中 If的第一個(gè)逗號(hào)前為設(shè)置條件 如果為 真 時(shí)執(zhí)行Rgb 255 255 0 如果為 假 時(shí)執(zhí)行Rgb 0 255 255 按照此設(shè)置之后 單擊 OK 按鈕 設(shè)置的結(jié)果如圖6 56所示 返回本節(jié)錄 6 6 2表達(dá)式 2 在數(shù)據(jù)窗口中使用條件位圖根據(jù)條件在字段上顯示一幅圖片稱為條件位圖 主要利用屬性表達(dá)式設(shè)置圖像控件的可視屬性 操作過程如下 1 打開 dteacher 數(shù)據(jù)窗口對(duì)象畫板 單擊工具欄上的控件組合圖標(biāo)按鈕 選擇 Picture 控件 2 在需要條件的位圖字段上 Detail欄 單擊 彈出 SelectPicture 對(duì)話框 選擇圖形文件的類型及打開位置 返回本節(jié)錄 6 6 2表達(dá)式 3 調(diào)整圖片的大小 使其與其他字段同寬度 4 在Detail區(qū)選中該圖形控件 單擊該屬性卡的 General 頁中 Visible 復(fù)選框右邊的表達(dá)式圖標(biāo)按鈕 彈出與圖6 55相類似的對(duì)話框 5 在彈出的對(duì)話框中輸入使用圖片的條件表達(dá)式 If sex 女 0 1 表示字段的值為女時(shí)不顯示圖片 否則顯示圖片 單擊 OK 完成設(shè)置 返回本節(jié)錄 6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 通過前面對(duì)數(shù)據(jù)窗口對(duì)象的學(xué)習(xí) 我們感覺其表現(xiàn)力不夠豐富 同時(shí)界面也顯示得較枯燥 為了滿足用戶不同需要 美化數(shù)據(jù)窗口對(duì)象外觀 下面介紹如何通過增強(qiáng)數(shù)據(jù)窗口對(duì)象來解決這個(gè)問題 返回本節(jié)錄 6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 1 Button對(duì)象該對(duì)象主要是向用戶提供各種控制功能 集成一些命令使用戶使用更方便 操作步驟如下 1 打開數(shù)據(jù)窗口對(duì)象畫板 請(qǐng)選擇 Insert 菜單上的 Control Button 菜單項(xiàng) 然后在數(shù)據(jù)窗口對(duì)象的適當(dāng)位置單擊鼠標(biāo)左鍵 添加該對(duì)象 2 調(diào)整該控件的位置 在該控件的 Text 屬性中輸入 插入 3 單擊 插入 按鈕的 General 屬性卡 其中 Action 為PowerBuilder定義的常見動(dòng)作 在選擇了該動(dòng)作后 系統(tǒng)將自動(dòng)為你執(zhí)行該動(dòng)作 不需要編寫代碼 如圖6 57所示 Action能完成很多動(dòng)作 如 上一頁 下一頁 第一條 最后一條 打印 檢索 排序等v 返回本節(jié)錄 6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 2 圖形類對(duì)象在實(shí)際的應(yīng)用中經(jīng)常需要打印報(bào)表 表格 輸出一些數(shù)據(jù)等 在這里PowerBuilder提供了一些圖形工具 幫助我們實(shí)現(xiàn)美化界面 表格輸出數(shù)據(jù)等功能 其中主要有 Line對(duì)象 畫一條直線 Oval對(duì)象 畫一個(gè)橢圓 Rectangle對(duì)象 畫一個(gè)矩形 RoundRectangle對(duì)象 畫一個(gè)圓矩形 等 返回本節(jié)錄 6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 3 Text對(duì)象該對(duì)象用來顯示各種文本 主要是用來顯示一些信息 一般不會(huì)涉及對(duì)數(shù)據(jù)窗口中的數(shù)據(jù)進(jìn)行操作 如數(shù)據(jù)窗口對(duì)象中某一標(biāo)題字段在移動(dòng)中不知去向 或在數(shù)據(jù)窗口對(duì)象字段上加一標(biāo)題等 可以用該對(duì)象實(shí)現(xiàn) 返回本節(jié)錄 6 6 3數(shù)據(jù)窗口對(duì)象增強(qiáng)對(duì)象 4 Today對(duì)象為數(shù)據(jù)窗口對(duì)象添加當(dāng)前日期 一般用于報(bào)表輸出 5 計(jì)算類對(duì)象該類主要應(yīng)用于數(shù)據(jù)統(tǒng)計(jì) 求某一列的合計(jì) 平均值等 其中主要有 Sum 求和 Count 求記錄總數(shù) Average 求平均值 等 本節(jié)完 返回本節(jié)錄 6 7數(shù)據(jù)窗口對(duì)象實(shí)例設(shè)計(jì) 實(shí)例說明本例演示如何創(chuàng)建一個(gè)日用品管理系統(tǒng)中的訂貨數(shù)據(jù)窗口對(duì)象 不僅可以鞏固數(shù)據(jù)窗口的創(chuàng)建過程 也可說明該對(duì)象在實(shí)際應(yīng)用中的強(qiáng)大作用 該對(duì)象外觀如本章開篇圖6 1所示 返回章目錄 6 7數(shù)據(jù)窗口對(duì)象實(shí)例設(shè)計(jì) 設(shè)計(jì)思路本例采用Freeform顯示風(fēng)格 由于該風(fēng)格較靈活 經(jīng)常成為開發(fā)人員首選風(fēng)格 數(shù)據(jù)源為SQLSelect 本例中主要應(yīng)用了數(shù)據(jù)窗口對(duì)象中的 Edit 屬性設(shè)置 通過對(duì)數(shù)據(jù)窗口對(duì)象屬性的設(shè)置 將使我們對(duì)數(shù)據(jù)窗口對(duì)象有一個(gè)全新的認(rèn)識(shí) 返回本節(jié)錄 6 7數(shù)據(jù)窗口對(duì)象實(shí)例設(shè)計(jì) 實(shí)現(xiàn)過程 1 單擊工具欄上的 新建 按鈕 彈出 New 對(duì)話框 選擇 DataObject 標(biāo)簽頁中的 Freeform 顯示風(fēng)格 然后單擊 OK 按鈕 2 在彈出的數(shù)據(jù)源窗口中選擇 SQ
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 檢測(cè)公司委托協(xié)議書范本
- 互聯(lián)網(wǎng)企業(yè)典當(dāng)質(zhì)押貸款協(xié)議
- 民用建筑租賃合同范本及詳細(xì)條款
- 轉(zhuǎn)租合同協(xié)議書樣板范本
- 免除房款協(xié)議書范本
- 車輛牌照租賃與綠色出行激勵(lì)政策合同
- 甜品店品牌區(qū)域代理合作協(xié)議
- 綠色制造廠房租賃安全與節(jié)能減排協(xié)議
- 財(cái)務(wù)結(jié)算財(cái)務(wù)擔(dān)保合同范本
- 住宅小區(qū)新能源汽車充電樁車位租賃合同
- 2025年福建省糧食行業(yè)職業(yè)技能競(jìng)賽(糧油保管員)備賽試題庫(含答案)
- 四川電網(wǎng)新建電源并網(wǎng)服務(wù)指南(2025年)
- 建筑工程修繕培訓(xùn)課件
- 2025年主管護(hù)師考試真題試題及答案
- 2025全國英語等級(jí)考試(PETS)二級(jí)試卷真題匯編與解析
- 2024北森圖表分析題庫
- 稅務(wù)智稅競(jìng)賽試題及答案
- 成都銀河磁體股份有限公司高精度、高潔凈度硬盤用粘結(jié)釹鐵硼磁體擴(kuò)建項(xiàng)目環(huán)評(píng)報(bào)告
- 企業(yè)內(nèi)部控制體系構(gòu)建與優(yōu)化研究
- 電力巡檢機(jī)器人市場(chǎng)調(diào)研報(bào)告2025
- 森林康養(yǎng)基地項(xiàng)目可行性研究報(bào)告
評(píng)論
0/150
提交評(píng)論