VB中TreeView的用法和几个实例
*****************************************
1、为树状浏览器控件添加节点和子节点
用ADD方法添加一个新节点到树状浏览器的NODES集合时,可以声明它是和已存在的节点所联系起来的。通常使用ADD方法,其语法如下:
Nodes.Add(relative,[relationship][,key][,text][,image][,selectedimage])
各个参数的意义如下:
relationship 参数是通过关系节点参数与新节点连接的另一个节点;
relationship 参数可能是以下情况:
tvwlast--1;该节点置于所有其他的在relative中被命名的同一级别的节点的后面
tvwNext--2;该节点置于在relative中被命名节点的后面
tvwPrevius--3;该节点置于在relative中被命名的节点的前面
tvwChild--4;该节点成为在relative中被命名的节点的的子节点
下面是一个例子:
Dim node1,node2,node3,node4 as Node
set Node1=TreeView1.Nodes.Add
TreeView1.Nodes(1).text="node1"
TreeView1.Nodes(1).key="node1"
Set node2=treeview.nodes.add("node1",tvwChild,"node2")
TreeView1.Nodes(2).text="node2"
TreeView1.Nodes(2).key="node2"
依次插入节点即可。
2、为节点插入图象
treeview1.node(3).image="leaf"
注意我们一般从imagelist中指定图象
3、处理节点的点击,怎样才能知道树状浏览器的哪一个节点被点击了呢?可以用NodeClick 事件:
public sub treeview1_nodeclick(byval node as comctllib.node)
text1.text="you click"&node.text
end sub
*********************************************************
2、TreeView的使用,及选中其中指定的节点
’=============
Private Sub Command1_Click()
Dim nodeY As Node
For Each nodeY In TreeView1.Nodes
If CStr(Trim(nodeY.Text)) = "ff" Then
nodeY.Selected = True
TreeView1.SetFocus
Exit For
End If
Next
End Sub
Private Sub Form_Load()
Rs1.CommandType = adCmdText
Rs1.RecordSource = "select distinct biao,zu from test order by zu"
Rs1.Refresh
Dim Rs As ADODB.Recordset
Set Rs = Rs1.Recordset
Set nodX = TreeView1.Nodes.Add(, , "r", "报表组 ")
i = 0
Dim TempString As String
Dim TempKey As Long
Do Until Rs.EOF Or Rs.BOF
If TempString = Rs!zu Then
Set nodeX = TreeView1.Nodes.Add("Z" & TempKey, tvwChild, "B" & i, Rs!biao)
Else
Set nodX = TreeView1.Nodes.Add("r", tvwChild, "Z" & i, Rs!zu)
Set nodeX = TreeView1.Nodes.Add("Z" & i, tvwChild, "B" & i, Rs!biao)
TempString = Rs!zu
TempKey = i
End If
Rs.MoveNext
i = i + 1
Loop
End Sub
**********************************************************
3'功能: