----------------------------------------------------------------------------
'
'Author:lihonggen0
'Date:2003-1-20
'功能:选择Treeview节点下所有节点
'----------------------------------------------------------------------------
Private Sub Form_Load()
TreeView1.Checkboxes = True
TreeView1.Nodes.Add , "R", "root", "root"
TreeView1.Nodes.Add "root", tvwChild, "key1", "aa"
TreeView1.Nodes.Add "key1", tvwChild, "key11", "ccc"
TreeView1.Nodes.Add "root", tvwChild, "key2", "bb"
TreeView1.Nodes.Add "key2", tvwChild, "key21", "ddd"
TreeView1.Nodes.Add "key2", tvwChild, "key211", "eee"
For I = 1 To TreeView1.Nodes.Count
TreeView1.Nodes(I).Expanded = True
Next
End Sub
Private Sub CheckChild(ByVal Node As MSComctlLib.Node, ByVal bCheck As Boolean, Optional ByVal bNext As Boolean = True, Optional ByVal bChild As Boolean = True)
If Not Node Is Nothing Then
Node.Checked = bCheck
If Node.Children And bChild Then
Call CheckChild(Node.Child, bCheck, True, True) '对子节点
End If
If bNext Then
Call CheckChild(Node.Next, bCheck, True, bChild) '对同一层节点
End If
End If
End Sub
Private Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
Call CheckChild(Node, Node.Checked, False, True) '处理子节点
End Sub
该博客主要展示了选择Treeview节点下所有节点的功能代码。包含Form_Load过程用于初始化TreeView控件节点,CheckChild过程用于递归检查子节点和同一层节点,TreeView1_NodeCheck过程处理节点勾选事件,实现子节点的勾选状态同步。
1485

被折叠的 条评论
为什么被折叠?



