相信很多程式設計愛好者都使用過網路螞蟻或 foxmail 軟體,其軟體執行主介面的左側有一顯示等級結構的樹狀外觀控制項,不僅美觀大方,而且非常方便使用。其實,在 vb 中利用 treeview 控制項很容易就能編寫出同樣效果的程式。
首先在 vb 中建立乙個新工程,單擊「工程/部件」,在控制項列表中選中「microsoft windows command controls6.0(sp4)」,按下「確定」按鈕返回主介面,在左側控制項窗體中選中 treeview 控制項置於窗體上,再放置乙個 imagelist 控制項、兩個 label 控制項、兩個textbox 控制項、六個 commandbutton 控制項,其屬性分別如下:
treeview 控制項:名稱 treeview1;
imagelist 控制項:名稱 imagelist1,並在該控制項中放置三張個性(32×32),建立索引1、2、3;(方法:在imagelist 控制項上單擊滑鼠右鍵選擇屬性)
label 控制項:名稱分別為lab(0)、lab(1),caption分別為「父節點:」、「子節點:」;
textbox 控制項:名稱分別為txt(0)、txt(1),text都為「」;
commandbutton 控制項:名稱為系統預設,caption分別為「新增」、「展開」、「收起」、「排序」、「刪除」、「退出」;
將下列**加入到**框:
option explicit
dim i as integer
dim j as integer
dim nodx as node
dim cunzai as boolean '定義變數
private sub command1_click()
if txt(0).text <> "" and txt(1).text <> "" then '不允許建立零位元組的父節點和子節點
cunzai = false
j = treeview1.nodes.count
for i = 1 to treeview1.nodes.count '檢查新輸入的父節點名稱是否存在
if treeview1.selecteditem.children > 0 then
if txt(0).text = treeview1.nodes(i).text then cunzai = true
end if
next i
if cunzai = true then '若存在, 則在父節點下建立子節點
set nodx = treeview1.nodes.add(txt(0).text, tvwchild, "child" & j,
txt(1).text, 3)
else ,若不存在,則建立父節點和子節點
set nodx = treeview1.nodes.add(, , txt(0).text, txt(0).text, 1)
set nodx = treeview1.nodes.add(txt(0).text, tvwchild, "child" & j,_
txt(1).text, 3)
end if
treeview1.refresh
elseif txt(0).text = "" then msgbox "請輸入父節點名稱!", vbinformation, "警告!"
'系統提示
elseif txt(1).text = "" then msgbox "請輸入子節點名稱!", vbinformation, "警告!"
end if
end sub
private sub command2_click()
for i = 1 to treeview1.nodes.count
treeview1.nodes(i).expanded = true '展開所有節點
next i
end sub
private sub command3_click()
for i = 1 to treeview1.nodes.count
treeview1.nodes(i).expanded = false '收起所有節點
next i
end sub
private sub command4_click()
treeview1.sorted = true '排列順序
end sub
private sub command5_click()
if treeview1.selecteditem.index <> 1 then
treeview1.nodes.remove treeview1.selecteditem.index '刪除選定的節點
end if
end sub
private sub command6_click()
end '退出程式
end sub
private sub form_load()
treeview1.linestyle =tvwtreelines '在兄弟節點和父節點之間顯示線
treeview1.imagelist = imagelist1 '鏈結影象列
treeview1.style = tvwtreelinesplu**inuspicturetext
'樹狀外觀包含全部元素
set nodx = treeview1.nodes.add(, , "蒲子明", "蒲子明", 1)
'建立名稱為"蒲子明"的父節點,選擇索引為1的影象
set nodx = treeview1.nodes.add("蒲子明", tvwchild, "child01", "收件箱", 3)
'在"蒲子明"父節點下建立"收件箱"子節點,選擇索引為3的影象
set nodx = treeview1.nodes.add("蒲子明", tvwchild, "child02", "發件箱", 3)
'在"蒲子明"父節點下建立"發件箱"子節點,選擇索引為3的影象
cunzai = false
end sub
private sub treeview1_expand(byval node as mscomctllib.node)
node.expandedimage = 2 '節點被展開時,選擇索引為2的影象
end sub
private sub treeview1_nodeclick(byval node as mscomctllib.node)
if treeview1.selecteditem.children = 0 then '檢查是否有子節點,0為無
for i = 1 to treeview1.nodes.count
if treeview1.nodes(i).selected then
msgbox "您選擇的是:「" & treeview1.nodes(i).fullpath & "」子節點!"
'系統提示
end if
next i
end if
end sub
MasterPage 控制項應用
masterpage其實是一種模板,它可以讓你快速的建立相同頁面布局而內部不同的網頁,如果乙個 有多個masterpage,那麼新建aspx檔案的時候就可以選擇需要實現頁面布局的masterpage。另外,在你沒有使用masterpage之前,如果n個相同的頁面布局需要改動成另外乙個樣式,那麼你就要...
CListCtrl控制項應用
常用操作 1 新增列標題頭 insertcolumn 2 獲取與設定列寬 getcolumnwidth setcolumnwidth 3 新增一行 insertitem setitemtext 4 獲取與設定單元文字 getitemtext setitemtext 5 允許多行選中時,獲取選中的行數...
GridControl控制項應用
gridcontrol控制項是dev express外掛程式帶的類似於c 內部winform控制項gridview控制項,內部必須新增gridview,同乙個control可以新增多個view datetable型別的資料,新增編號和名稱兩列,將伺服器中查詢到的內容新增到 中 gridcontrol...