reeView控件是在VFP的數(shù)據(jù)處理中很有用的一個(gè)ActiveX 控件,但是VFP的幫助中卻沒有相關(guān)的說(shuō)明,為幫助大家對(duì)這一控件有一個(gè)詳細(xì)的了解,現(xiàn)將TreeView控件應(yīng)用詳解如下:
一、概述
TreeView控件顯示Node對(duì)象的分層列表,每個(gè)Node對(duì)象均由一個(gè)標(biāo)簽和一個(gè)可選的位圖組成。TreeView 一般用于顯示文檔標(biāo)題、索引入口、磁盤上的文件和目錄、或能被有效地分層顯示的其它種類信息。創(chuàng)建了TreeView控件之后,可以通過(guò)設(shè)置屬性與調(diào)用方法對(duì)各Node對(duì)象進(jìn)行操作,這些操作包括添加、刪除、對(duì)齊和其它操作??梢跃幊陶归_與折回 Node 對(duì)象來(lái)顯示或隱藏所有子節(jié)點(diǎn)。Collapse、Expand和NodeClick三個(gè)事件也提供編程功能。
Node對(duì)象使用Root、Parent、Child、FirstSibling、Next、Previous和 LastSibling屬性。在代碼中可通過(guò)檢索對(duì)Node對(duì)象的引用,從而在樹上定位。也可以使用鍵盤定位。UP ARROW鍵和DOWN ARROW鍵向下循環(huán)穿過(guò)所有展開的Node對(duì)象。從左到右、從上到下地選擇Node對(duì)象。若在樹的底部,選擇便跳回樹的頂部,必要時(shí)滾動(dòng)窗口。RIGHT ARROW鍵和LEFT ARROW鍵也穿過(guò)所有展開的Node對(duì)象,但是如果選擇了未展開的 Node之后再按RIGHT ARROW鍵,該Node便展開;第二次按該鍵,選擇將移向下一個(gè)Node。相反,若擴(kuò)展的Node有焦點(diǎn),這時(shí)再按LEFT ARROW鍵,該Node便折回。如果按下ANSI字符集中的鍵,焦點(diǎn)將跳轉(zhuǎn)至以那個(gè)字母開頭的最近的Node。后續(xù)的按該鍵的動(dòng)作將使選擇向下循環(huán),穿過(guò)以那個(gè)字母開頭的所有展開節(jié)點(diǎn)。
控件的外觀有八種可用的替換樣式,它們是文本、位圖、直線和+/-號(hào)的組合,Node 對(duì)象可以任一種組合出現(xiàn)。
TreeView控件使用由ImageList屬性指定的ImageList控件,來(lái)存儲(chǔ)顯示于Node對(duì)象的位圖和圖標(biāo)。任何時(shí)刻,TreeView 控件只能使用一個(gè)ImageList。這意味著,當(dāng) TreeView控件的Style屬性被設(shè)置成顯示圖象的樣式時(shí),TreeView控件中每一項(xiàng)的旁邊都有一個(gè)同樣大小的圖象。
發(fā)行注意TreeView控件是COMCTL32.OCX文件中的一組ActiveX控件的一部分。為了在應(yīng)用程序中使用TreeView控件,必須將COMCTL32.OCX文件添加到工程中。在發(fā)行應(yīng)用程序時(shí),要在用戶的Microsoft Windows System或System32目錄中安裝COMCTL32.OCX文件。
二、常用屬性
1、Nodes屬性返回對(duì)TreeView控件的Node對(duì)象的集合的引用。
語(yǔ)法:object.Nodes
? ject所在處代表一個(gè)對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
說(shuō)明:可以使用標(biāo)準(zhǔn)的集合方法(例如:Add和Remove方法)操作Node對(duì)象??梢园雌渌饕虼鎯?chǔ)在Key屬性中的鍵來(lái)訪問集合中的每個(gè)元素。
2、Style屬性返回或設(shè)置圖形類型(圖象、文本、+/-號(hào)、直線)以及出現(xiàn)在 TreeView 控件中每一Node對(duì)象上的文本的類型。
語(yǔ)法:object.Style [ = number]
Style 語(yǔ)法包含下面部分:
部分 描述
object 對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
number 指定圖形類型的整數(shù),請(qǐng)參閱“設(shè)置值”中的描述。
設(shè)置值
number 的設(shè)置值是:
設(shè)置值 描述
0 僅為文本。
1 圖象和文本。
2 +/- 號(hào)和文本。
3 +/- 號(hào),圖象和文本。
4 直線和文本。
5 直線,圖象和文本。
6 直線,+/- 號(hào)和文本。
7 (缺?。┲本€,+/- 號(hào),圖象和文本。
說(shuō)明:若Style屬性設(shè)置為包含直線的值,則LineStyle屬性就確定了直線的外觀。如果Style屬性設(shè)置為不含直線的值,則LineStyle屬性將被忽略。
3、Sorted屬性返回或設(shè)置一值,此值確定Node對(duì)象的子節(jié)點(diǎn)是否按字母順序排列;返回或設(shè)置一值,此值確定TreeView控件的根層節(jié)點(diǎn)是否按字母順序排列。
語(yǔ)法:object.Sorted [ = boolean]
Sorted屬性語(yǔ)法包含下面部分:
部分 描述
object 對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
boolean 布爾表達(dá)式,表示 Node 對(duì)象是否已被排序如“設(shè)置值”中描述。
boolean的設(shè)置值是:
設(shè)置值 描述
True Node 對(duì)象根據(jù)它們的 Text 屬性按字母順序排列。其 Text 屬性由數(shù)字開始的 Node 對(duì)象也作為字符串排序,第一個(gè)數(shù)字確定在排序中的初始位置,后面的數(shù)字確定以后的排序。
False Node 對(duì)象不排序。
說(shuō)明:Sorted屬性有兩種用法,第一,在TreeView控件的根(頂)層排列Node對(duì)象,第二,對(duì)任何單個(gè)Node對(duì)象的立即子節(jié)點(diǎn)排序。
例如,下面的代碼是對(duì)TreeView控件的根節(jié)點(diǎn)排序:
TreeView1.Sorted = True 頂層Node對(duì)象被排序。
一、概述
TreeView控件顯示Node對(duì)象的分層列表,每個(gè)Node對(duì)象均由一個(gè)標(biāo)簽和一個(gè)可選的位圖組成。TreeView 一般用于顯示文檔標(biāo)題、索引入口、磁盤上的文件和目錄、或能被有效地分層顯示的其它種類信息。創(chuàng)建了TreeView控件之后,可以通過(guò)設(shè)置屬性與調(diào)用方法對(duì)各Node對(duì)象進(jìn)行操作,這些操作包括添加、刪除、對(duì)齊和其它操作??梢跃幊陶归_與折回 Node 對(duì)象來(lái)顯示或隱藏所有子節(jié)點(diǎn)。Collapse、Expand和NodeClick三個(gè)事件也提供編程功能。
Node對(duì)象使用Root、Parent、Child、FirstSibling、Next、Previous和 LastSibling屬性。在代碼中可通過(guò)檢索對(duì)Node對(duì)象的引用,從而在樹上定位。也可以使用鍵盤定位。UP ARROW鍵和DOWN ARROW鍵向下循環(huán)穿過(guò)所有展開的Node對(duì)象。從左到右、從上到下地選擇Node對(duì)象。若在樹的底部,選擇便跳回樹的頂部,必要時(shí)滾動(dòng)窗口。RIGHT ARROW鍵和LEFT ARROW鍵也穿過(guò)所有展開的Node對(duì)象,但是如果選擇了未展開的 Node之后再按RIGHT ARROW鍵,該Node便展開;第二次按該鍵,選擇將移向下一個(gè)Node。相反,若擴(kuò)展的Node有焦點(diǎn),這時(shí)再按LEFT ARROW鍵,該Node便折回。如果按下ANSI字符集中的鍵,焦點(diǎn)將跳轉(zhuǎn)至以那個(gè)字母開頭的最近的Node。后續(xù)的按該鍵的動(dòng)作將使選擇向下循環(huán),穿過(guò)以那個(gè)字母開頭的所有展開節(jié)點(diǎn)。
控件的外觀有八種可用的替換樣式,它們是文本、位圖、直線和+/-號(hào)的組合,Node 對(duì)象可以任一種組合出現(xiàn)。
TreeView控件使用由ImageList屬性指定的ImageList控件,來(lái)存儲(chǔ)顯示于Node對(duì)象的位圖和圖標(biāo)。任何時(shí)刻,TreeView 控件只能使用一個(gè)ImageList。這意味著,當(dāng) TreeView控件的Style屬性被設(shè)置成顯示圖象的樣式時(shí),TreeView控件中每一項(xiàng)的旁邊都有一個(gè)同樣大小的圖象。
發(fā)行注意TreeView控件是COMCTL32.OCX文件中的一組ActiveX控件的一部分。為了在應(yīng)用程序中使用TreeView控件,必須將COMCTL32.OCX文件添加到工程中。在發(fā)行應(yīng)用程序時(shí),要在用戶的Microsoft Windows System或System32目錄中安裝COMCTL32.OCX文件。
二、常用屬性
1、Nodes屬性返回對(duì)TreeView控件的Node對(duì)象的集合的引用。
語(yǔ)法:object.Nodes
? ject所在處代表一個(gè)對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
說(shuō)明:可以使用標(biāo)準(zhǔn)的集合方法(例如:Add和Remove方法)操作Node對(duì)象??梢园雌渌饕虼鎯?chǔ)在Key屬性中的鍵來(lái)訪問集合中的每個(gè)元素。
2、Style屬性返回或設(shè)置圖形類型(圖象、文本、+/-號(hào)、直線)以及出現(xiàn)在 TreeView 控件中每一Node對(duì)象上的文本的類型。
語(yǔ)法:object.Style [ = number]
Style 語(yǔ)法包含下面部分:
部分 描述
object 對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
number 指定圖形類型的整數(shù),請(qǐng)參閱“設(shè)置值”中的描述。
設(shè)置值
number 的設(shè)置值是:
設(shè)置值 描述
0 僅為文本。
1 圖象和文本。
2 +/- 號(hào)和文本。
3 +/- 號(hào),圖象和文本。
4 直線和文本。
5 直線,圖象和文本。
6 直線,+/- 號(hào)和文本。
7 (缺?。┲本€,+/- 號(hào),圖象和文本。
說(shuō)明:若Style屬性設(shè)置為包含直線的值,則LineStyle屬性就確定了直線的外觀。如果Style屬性設(shè)置為不含直線的值,則LineStyle屬性將被忽略。
3、Sorted屬性返回或設(shè)置一值,此值確定Node對(duì)象的子節(jié)點(diǎn)是否按字母順序排列;返回或設(shè)置一值,此值確定TreeView控件的根層節(jié)點(diǎn)是否按字母順序排列。
語(yǔ)法:object.Sorted [ = boolean]
Sorted屬性語(yǔ)法包含下面部分:
部分 描述
object 對(duì)象表達(dá)式,其值是“應(yīng)用于”列表中的一個(gè)對(duì)象。
boolean 布爾表達(dá)式,表示 Node 對(duì)象是否已被排序如“設(shè)置值”中描述。
boolean的設(shè)置值是:
設(shè)置值 描述
True Node 對(duì)象根據(jù)它們的 Text 屬性按字母順序排列。其 Text 屬性由數(shù)字開始的 Node 對(duì)象也作為字符串排序,第一個(gè)數(shù)字確定在排序中的初始位置,后面的數(shù)字確定以后的排序。
False Node 對(duì)象不排序。
說(shuō)明:Sorted屬性有兩種用法,第一,在TreeView控件的根(頂)層排列Node對(duì)象,第二,對(duì)任何單個(gè)Node對(duì)象的立即子節(jié)點(diǎn)排序。
例如,下面的代碼是對(duì)TreeView控件的根節(jié)點(diǎn)排序:
TreeView1.Sorted = True 頂層Node對(duì)象被排序。