WPS Office2007下载
首页 >> 技术文章 >> Office2007综合 >> Excel2003


树形目录控件——TreeView控件介绍

[示例四] 自动创建树状图形(Add方法示例)
在VBE编辑器中插入一个用户窗体,并放置一个TreeView控件。然后在该窗体代码窗口中输入下面的代码:
Private Sub UserForm_Initialize()
  Dim i As Long
  Dim j As Long
  Dim k As Long
  Dim Title As String
  Dim xNode As Node
  Dim NodeKey As String
  Dim NodeKey2 As String

  With Me.TreeView1
    For i = 1 To 5
      Set xNode = .Nodes.Add
      NodeKey = "Node - " & i
      With xNode
        .Key = NodeKey
        .Text = "Node - " & i
        .Expanded = False
      End With
      For j = 1 To 7
        Set xNode = .Nodes.Add(NodeKey, tvwChild)
        NodeKey2 = "Node - Child - " & i & j
        With xNode
          .Key = NodeKey2
          .Text = "Child - " & j
        End With
        For k = 1 To 10
          Set xNode = .Nodes.Add(NodeKey2, tvwChild)
          With xNode
            .Text = "Child2 - " & k
          End With
        Next k
      Next j
    Next i
  End With

  Set xNode = Nothing
End Sub

Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)
  Me.Caption = Node.Text
End Sub
本示例很好地演示了添加节点的方法。代码中,通过循环添加了5个根节点,在每个根节点下又添加了7个子节点,在每个子节点下又添加了10个子节点。
[示例五] TreeView控件和复合框组合使用
在VBE编辑器中插入一个用户窗体,并放置一个TreeView控件和一个复合框控件,然后在该窗体的代码窗口中输入下面的代码:
Private Sub UserForm_Initialize()
    Dim i As Long
    Dim j As Long
    Dim k As Long
    Dim Title As String
    Dim xNode As Node
    Dim NodeKey As String
    Dim NodeKey2 As String
    With Me.TreeView1
        For i = 1 To 5
            Set xNode = .Nodes.Add
            NodeKey = "Node - " & i
            With xNode
                .Key = NodeKey
                .Text = "Node - " & i
                .Expanded = False
            End With
            Me.ComboBox1.AddItem ("Node - " & i)
            For j = 1 To 7
                Set xNode = .Nodes.Add(NodeKey, tvwChild)
                NodeKey2 = "Node - Child - " & i & j
                With xNode
                    .Key = NodeKey2
                    .Text = "Child - " & j
                End With
                Me.ComboBox1.AddItem ("Child - " & j)
                For k = 1 To 10
                    Set xNode = .Nodes.Add(NodeKey2, tvwChild)
                    With xNode
                        .Text = "Child2 - " & k
                    End With
                    Me.ComboBox1.AddItem ("Child2 - " & k)
                Next k
            Next j
        Next i
    End With
    Set xNode = Nothing
End Sub
Private Sub ComboBox1_Click()
    On Error Resume Next
    Me.TreeView1.Nodes(Me.ComboBox1.ListIndex + 1).Parent.Parent.Expanded = True
    Me.TreeView1.Nodes(Me.ComboBox1.ListIndex + 1).Parent.Expanded = True
    Me.TreeView1.Nodes(Me.ComboBox1.ListIndex + 1).Expanded = True
    On Error GoTo 0
End Sub
上面的代码先建立一个树形图,并将节点全部添加到复合框中。然后,可以单击复合框中的相应节点来展开树形图中的根节点。

声明:欢迎各大网站转载本站文章,还请保留一条能直接指向本站的超级链接,谢谢!

第1页 | 第2页 | 第3页 | 第4页 | 第5页 | 第6页 | 第7页

时间:2007-9-26 21:11:51,点击:0打印】【关闭

上一篇:在office Excel页眉页脚中插入图片
下一篇:利用VBA创建Excel新菜单

OfficeBa论坛】:阅读本文时遇到了什么问题,可以到论坛进行交流!Excel专家邮件:342327115@qq.com(大家在Excel使用中遇到什么问题,可以咨询此邮箱)。

【声明】:以上文章或资料除注明为Office吧自创或编辑整理外,均为各方收集或网友推荐所得。其中摘录的内容以共享、研究为目的,不存在任何商业考虑。如有任何异议,请与本站联系,联系邮箱:thinkou@126.com,本站确认后将立即撤下。谢谢您的支持与理解!


相关评论

我要评论

查看所有评论内容

评论内容