问下怎么选中treeview控件的第1层,第2层,第三层……,帮忙?

解决方案 »

  1.   

    李老大写的一个例子,看看Option ExplicitPrivate Sub Form_Load()
        Dim I As Integer
        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"
        
        TreeView1.Nodes.Add "key211", tvwChild, "key311", "fff"
        
        TreeView1.Nodes.Add "key311", tvwChild, "key411", "ggg"
        
        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 SubPrivate Sub TreeView1_NodeCheck(ByVal Node As MSComctlLib.Node)
        Call CheckChild(Node, Node.Checked, False, True)                    '´¦Àí×Ó½Úµã
    End Sub