2 10 TreeView 控制項

2021-09-21 21:36:57 字數 2799 閱讀 2570

u

本節學習目標:

n了解treeview控制項的屬性及方法

n 掌握treeview控制項中加入子節點兄弟節點,刪除節點,展開所有節點,展開選定節點的下一級節點,摺疊所有節點的基本方法

n 掌握contentmenustrip控制項在treeview控制項中的應用

n學習treeview控制項綜合開發設計方法

在 2-9

節我們提到在

windows 

資源管理器中左窗格所包含的目錄和檔案是以樹型檢視樣式排列的物件就是本節將討論的

treeview 

控制項的實際應用,在

treeview 

控制項中,核取方塊和圖示可以和文字一起顯示,用於以節點形式顯示文字或資料,這些節點按層次結構順序排列。

treeview 

控制項的實際應用如圖

2-34

所示。

圖2-34 treeview控制項的應用樣式 在

treeview

控制項中,節點集和節點物件是重要的知識概念。

treeview

控制項的nodes

屬性表示為

treeview

控制項指定的樹節點集,而樹節點集中的每個樹節點物件可包括它本身的樹節點集,在樹節點集中

add()

、remove()

和removeat()

方法使開發人員可新增和移動集中的單個樹節點。

新增、修改和刪除節點是

treeview

控制項在操作中經常使用的方法,由於

treeview

控制項以層次結構方式顯示節點,因此在將新節點新增到現有

treeview 

時,重要的是注意新節點所新增到的父節點;反之,如果刪除節點時候,必須確保刪除的節點無父節點方可進行刪除工作,否則系統將出現錯誤。

treeview

控制項主要的屬性和事件如表

2-10

所示:屬性

說明

nodes

treeview

中的根節點具體內容集合

showlines

是否顯示父子節點之間的連線線,預設為true

stateimagelist

樹型檢視用以表示自定義狀態的imagelist控制項

scrollable

是否出現滾動條

事件與方法

說明

aftercheck

選中或取消屬性節點時候發生

aftercollapse

在摺疊節點後發生

afterexpand

在展開節點後發生

afterselect

更改選定內容後發生

beforecheck

選中或取消樹節點核取方塊時候發生

beforecollapse

在摺疊節點前發生

beforeexpand

在展開節點前發生

beforeselect

更改選定內容前發生

表2-10 treeview控制項的屬性及方法

treeview

控制項的操控過程主要包括:加入子節點,加入兄弟節點,刪除節點,展開和摺疊節點等。下面分別進行討論分析:

加入子節點的具體過程是:首先要在

treeview

元件中定位要加入的子節點的位置,然後建立乙個節點物件,然後利用

treeveiw

類中對節點的加入方法(即:

add ( )

方法),加入此節點物件。一般新增子節點的語句是:

treeview1.selectednode.nodes.add ( tmp ) 

。與加入子節點的方法類似,加入兄弟節點的具體過程是:首先要尋找當前選中節點的父節點,然後再改父節點下面再建立子節點,就可以建立選中節點的兄弟節點了。一般新增兄弟節點的語句是:

treeview1.selectednode.parent.nodes.add ( tmp )

。刪除節點的具體過程是:首先判斷要刪除的節點是否存在下一級節點,如果不存在,就呼叫

treeview

類中的remove ( )

方法,就可以刪除節點了。一般刪除節點的語句是:

treeview1.selectednode.remove ( ) ;

展開所有節點的具體過程是:首先獲取當前

treeview

控制項的根節點,然後利用

expandall

方法實施展開節點。一般展開所有節點的語句是:

//定位根節點

treeview1.selectednode = treeview1.nodes [ 0 ] ;

//展開元件中的所有節點

treeview1.selectednode.expandall ( ) ; 

展開選定節點的下一級節點的具體過程是:首先獲取當前選中的節點,然後利用

expand

方法實施展開節點。一般展開所有節點的語句是:

treeview1.selectednode.expand () ;

摺疊所有節點的具體過程是:首先獲取當前

treeview

控制項的根節點,然後利用

collapse

方法實施摺疊節點。一般摺疊所有節點的語句是:

//定位根節點

treeview1.selectednode = treeview1.nodes [ 0 ] ;   

//摺疊元件中所有節點

treeview1.selectednode.collapse ( ) ;

TreeView控制項

treeview treenode treeview 類,表示在樹狀結構中顯示分層資料的控制項,該樹狀結構包含可展開和摺疊的項。nodes 獲取分配給樹檢視控制項的樹節點集合。getnodeat point 檢索位於指定點的樹節點。treenode類,表示 treeview 控制項中的節點。node...

TreeView控制項

在我們的開發中經常會遇到一些有樹形層次關係的資料,比如顯示無限級分類和顯示某 個檔案下的所有檔案及資料夾,對於這些帶有樹形層次關係的資料的顯示用treeview 控制項 是乙個比較不錯的選擇。treeview控制項支援資料繫結,也支援以程式設計的方式動態新增節點。在 treeview控制項中每個節點...

TreeView控制項

樹節點效果 屬性 nodes 節點 imagelist 文字前的logo集合 selectedimageindex 被選中後的logo 事件 afterselect 雙擊treeview控制項轉到 往treeview控制項拖入imagelist控制項 images屬性新增兩個logo imageli...