



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PB中TreeView控件使用技巧PB中TreeView控件使用技巧 PB中TreeView控件使用技巧 PowerBuilder中的TreeView 控件為樹狀游覽,類似于WINDOWS的資源管理器,其特點(diǎn)是信息項(xiàng)呈樹狀層次結(jié)構(gòu),能更清晰地表現(xiàn)主、細(xì)目關(guān)系 ,操作非常方便。在應(yīng)用中可將其與DataWindow 配合使用, 一個(gè)提供信息的分類體系,一個(gè)提供具體信息,達(dá)到珠連碧合的奇妙效果。它特別適用于多級(jí)信息的分類檢索, 是多級(jí)菜單所無法比似的,它的表現(xiàn)形式深受程序設(shè)計(jì)人員和廣大用戶的喜愛,在許多應(yīng)用軟件中都能看到她的英姿。 在PowerBuilder下,TreeView 控件的應(yīng)用
2、較其它控件要復(fù)雜得多,剛接觸它時(shí)往往有些不知所措。但如果將它的機(jī)理搞清楚,掌握它也不是很難的事。下面我結(jié)合長白公司圖書分類檢索的實(shí)例,把TreeView 控 件的使用方法和大家探討一下。 一、應(yīng)用TreeView 控件的一般步驟 1、 建立一個(gè)應(yīng)用,并設(shè)好與數(shù)據(jù)庫的接口,這是操作數(shù)據(jù)庫的前提。 2、 在應(yīng)用中建一應(yīng)用窗口W_1,在其上加入二個(gè)名為dw_3和dw_4的datawindow控制對(duì)象和一個(gè)名為TV_1的TreeView對(duì)象。 3、 修改DW_3屬性 General:把Datawindow object name填寫一個(gè)已存在的名為DW_date的datawindow(注意:它與dat
3、awindow控制對(duì)象是不同的),用于生成樹視圖項(xiàng),將其Visible項(xiàng)設(shè)為不可見。 4、 修改DW_4屬性 General:把Datawindow object name填寫一個(gè)已存在的名為DW_TS的datawindow對(duì)象,用于顯示查詢出的具體內(nèi)容。 5、 編輯TV_1的屬性 TreeView的樹視圖項(xiàng)不能直接編輯,必須在Script中編寫程序。 Picture:在Picture Name中加入四個(gè)不同的圖標(biāo),用于代表樹視圖中的兩個(gè)層次(一、二級(jí))、兩種狀態(tài)(未選、選中)。 General:可根據(jù)具體應(yīng)用設(shè)定是否選中,其中: Delete Items:運(yùn)行中是否允許刪除表項(xiàng)。 Disab
4、le PragDrog: 運(yùn)行中是否允許拖放表項(xiàng)。 Edit Labels: 運(yùn)行中是否允許單擊表項(xiàng)來改變表項(xiàng)的標(biāo)題。 Show Buttons:是否在表項(xiàng)放顯示+-按鈕,有示相對(duì)的擴(kuò)展和收縮。 Hide Selection:當(dāng)該控件失去焦點(diǎn)時(shí),選中項(xiàng)是否以高亮度顯示。 Show Line:表項(xiàng)間是否加一豎線。 Lines At Root:所有根層表項(xiàng)是否用豎線連接。 Indentation:子表項(xiàng)相對(duì)于父表項(xiàng)的向右縮進(jìn)度。 6、 編寫TV_1的Script 這里是TreeView控件的關(guān)鍵,也是難點(diǎn)。 二、TreeView 控件的信息構(gòu)成及創(chuàng)建 樹視圖項(xiàng)TreeViewItem是TreeVi
5、ew 控件的基本信息單位,樹視圖項(xiàng)的生成一般有二種方法,一種是先生成根層視圖項(xiàng),再在應(yīng)用中動(dòng)態(tài)生成下級(jí)視圖項(xiàng),另一種是把全部樹視圖項(xiàng)一次和成。兩種方法各有優(yōu)點(diǎn),請(qǐng)根據(jù)具體情況選用,本例中采用后一種方法。 1、 樹視圖項(xiàng)TreeViewItem的主要屬性 Label:String 型,樹視圖項(xiàng)的顯示信息。 Data:Any型,樹視圖項(xiàng)的內(nèi)部值。 Level:Integer型,樹視圖項(xiàng)在樹視圖中級(jí)別。 Children:Boolean 型,它決定該項(xiàng)是否有下一層(如圖中書名)。 PictureIndex:Integer 型,該項(xiàng)非選中時(shí)所用的圖標(biāo)在圖標(biāo)隊(duì)列中的編號(hào)。 SelectedPicture
6、Index:Integer型,該項(xiàng)選中時(shí)所用的圖標(biāo)在圖標(biāo)隊(duì)列中的編號(hào)。 2、 生成TreeViewItem項(xiàng)用到的函數(shù) InsertItemFirst():將加入項(xiàng)作為第一項(xiàng) InsertItemLast():將加入項(xiàng)作為最后一項(xiàng) InsertItem():將加入項(xiàng)插入到指定項(xiàng)的后面 InsertItemSort():按順序放置。 3、 TreeView的常用事件 Constructor: 該事件在控件創(chuàng)建時(shí)觸發(fā),可在這里構(gòu)造TreeViewItem。 Click:單擊TreeViewItem項(xiàng)時(shí),執(zhí)行查詢程序。 Double Click: 雙擊TreeViewItem項(xiàng)時(shí),執(zhí)行查詢程序。 I
7、temPopulate 事件: 該事件在某TreeViewItem項(xiàng)首次展開時(shí)觸發(fā), 觸發(fā)的同時(shí)系統(tǒng)會(huì)將 該TreeViewItem項(xiàng)的句柄通過參數(shù)handle 傳遞過來。它主要用來生成對(duì)應(yīng)項(xiàng)的下層信息項(xiàng)。主要用于第一種方法。 三、 事件代碼 1、樹視圖控件TV_1的constructor事件代碼 wanqi 1999.6.28integer li_rowcount,li_rowstring li_current_dn,li_last_dn,li_current_ei,li_last_ei/聲明二個(gè)樹視圖的實(shí)例變量treeviewitem itvi_level_one,itvi_level_t
8、wo/long ii_h_l_one/long ii_h_l_twodw_3.settransobject(sqlca)/dw_3為隱含的數(shù)據(jù)窗口,存有生成樹的數(shù)據(jù)li_rowcount=dw_3.retrieve()/行數(shù)dw_3.setsort("lb,pm")dw_3.sort()/生成樹視圖的各級(jí)樹視圖項(xiàng)for li_row=1 to li_rowcountli_current_dn=dw_3.object.lbli_row/DW_3對(duì)象中"LB類別"li_current_ei=dw_3.object.pmli_row/DW_3對(duì)象中"
9、PM品名"if isnull (li_current_ei) thenli_current_ei=""end ifif li_current_dn< >li_last_dn then/IF LB不與一級(jí)視圖項(xiàng)重復(fù)/設(shè)置一級(jí)樹視圖項(xiàng)itvi_level_one.label=dw_3.object.LBli_row/視圖項(xiàng)的顯示信息itvi_level_one.level=1 /級(jí)別itvi_level_one.data=li_current_dn/視圖項(xiàng)的內(nèi)部信息itvi_level_one.pictureindex=1/沒選中時(shí)所用的圖標(biāo)序號(hào)itvi_
10、level_one.selectedpictureindex=3/選中時(shí)使用的圖標(biāo)序號(hào)itvi_level_one.children=(li_current_ei< >' ')/樹視圖是否有下一級(jí)ii_h_l_one=this.insertitemlast(0,itvi_level_one)/將項(xiàng)加入到一級(jí)樹的最后一項(xiàng)end if/設(shè)置二級(jí)樹視圖項(xiàng)if li_current_dn< >li_last_ei thenif li_current_ei<>' ' thenitvi_level_two.label=dw_3.objec
11、t.pmli_rowitvi_level_two.level=2itvi_level_two.data=li_current_dnitvi_level_two.pictureindex=2itvi_level_two.selectedpictureindex=4itvi_level_two.data=li_current_eiitvi_level_two.children=falseii_h_l_two=this.insertitemlast(ii_h_l_one,itvi_level_two)/將項(xiàng)加入到二級(jí)樹的最后一項(xiàng)end ifend ifli_last_dn=li_current_dn/設(shè)比較項(xiàng)li_last_ei=li_current_einext 2、tv_1控件的clicked事件代碼string s1treeviewitem iithis.getitem(handle,ii)s1=string(ii.label)choose case
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《七 小小運(yùn)動(dòng)會(huì):7、6加幾》(教案)-一年級(jí)上冊(cè)數(shù)學(xué) 青島版
- 五年級(jí)下冊(cè)數(shù)學(xué)教案-4.2 分?jǐn)?shù)加減法的簡(jiǎn)算 ︳西師大版
- 勞動(dòng)合同管理臺(tái)賬(2025年版)
- 二年級(jí)下冊(cè)數(shù)學(xué)教案-4.1 《長方形和正方形的特征》 ︳西師大版
- 一年級(jí)上冊(cè)數(shù)學(xué)教案-4 14,15減幾 ︳西師大版
- 二年級(jí)下冊(cè)數(shù)學(xué)教案-租船3 北師大版
- 模擬試卷一(原卷版+解析版)-三年級(jí)語文上學(xué)期期末全真模擬卷(部編版五四制)
- 人教版三年級(jí)上冊(cè)期末考試數(shù)學(xué)試卷-
- 《十一月四日風(fēng)雨大作》歷年中考古詩欣賞試題匯編(截至2023年)
- 2025屆黑龍江佳木斯一中高三上學(xué)期五調(diào)地理試題及答案
- 新人教版五年級(jí)下冊(cè)數(shù)學(xué)(新插圖) 練習(xí)二 教學(xué)課件
- 磚數(shù)量自動(dòng)計(jì)算、換算表
- 【課題】《中學(xué)道德與法治法治意識(shí)培養(yǎng)策略的研究》中期檢查表
- 《十萬個(gè)為什么》推進(jìn)課(小學(xué)課件)
- 發(fā)展?jié)h語初級(jí)綜合1:第28課《長城有八千八百五十多公里》
- YY/T 1619-2018牙科學(xué)種植體系統(tǒng)及相關(guān)過程的術(shù)語
- GB/T 18838.1-2002涂覆涂料前鋼材表面處理噴射清理用金屬磨料的技術(shù)要求導(dǎo)則和分類
- GA/T 1162-2014法醫(yī)生物檢材的提取、保存、送檢規(guī)范
- 紅金大氣商務(wù)風(fēng)領(lǐng)導(dǎo)歡迎會(huì)PPT通用模板
- 例談小組合作學(xué)習(xí)在小學(xué)英語教學(xué)中的有效開展(講座)課件
- 產(chǎn)品質(zhì)量法培訓(xùn)講義課件
評(píng)論
0/150
提交評(píng)論