我是一个初学者。
在这里问一个问题。
我只有六个节点。
一个根节点名为所有人员。
子节点有5个:第1类用户...第5类用户,imagelist里已经有六个图像了。分别对应这六个节点
这样该如何创建。
又如何引用点击节点出现的事件。
我指的是比如click事件之类的。
谢谢!!

解决方案 »

  1.   

    写错了,
    是TREEVIEW
    不好意思!!
      

  2.   

    TreeView.Add , "Root","所有人员",Imagelist.listimage(0).index 'Root是Key
    TreeView.Add , "tvwChild","Root","第1类用户",Imagelist.listimage(0).index
    ...
    试试,我身边没装VB,如果不行告诉我
      

  3.   

    实时错误,
    对象超出边界。
    是不是imagelist1.listimage(1).index
    出现未发现元素。
      

  4.   

    我是打的treeview.add.node啊。
    是这样的:
    imagelist.listimage(0).1
    imagelist.listimage(0).2
    imagelist.listimage(0).3

    还是这样的
    imagelist.listimage(0).index
    imagelist.listimage(1).index
    ...
    可还是错误。
    怎么去响应click呢?
      

  5.   

    在TreeView的Click里
    dim newnode as Node
    set newnode = new node
    然后newnode = TreeView.Selectnode
    就可以对newNode操作
      

  6.   

    应该是Index
    前面是Set newnode=treeView.selectnode
    试试
      

  7.   

    给你一个比较大的程序,你只要看frmTree就行了
      

  8.   

    不对啊。
    如果是imagelist的索引值是从1开始的。
    我如果写TreeView.Add , "Root","所有人员",Imagelist.listimage(0).index 
    提示超出了边界。
    如果是TreeView.Add , "Root","所有人员",Imagelist.listimage(1).index 
    就提示未发现元素。
    不管imagelist 和 treeview是否关联都这样。
      

  9.   

    宋兄!
    我一般在深圳之窗的聊天室里聊天。你有空去看看。昵称是dew,一般在'打工一族'里,网址是http://chat.szptt.net.cn/,可以跟我留言,OK。
      

  10.   

    我的QQ是33268647
    请注明CSDN
      

  11.   

    Private Sub Form_Load()
    'tvClass是树控件名
    tvClass.Nodes.Add , , "ROOT", "所有班级", ImageList1.ListImages(1).Index
        
        
        For Index = 0 To 3
        tvClass.Nodes.Add "ROOT", tvwChild, , "123", ImageList1.ListImages(1).Index
        Next
        
    End Sub
      

  12.   

    Private Sub tvClass_Click() 'Click事件Dim newnode As NodeSet newnode = tvClass.SelectedItemMsgBox newnode.TextEnd Sub
      

  13.   

    循环语句里面的那个语句
    tvClass.Nodes.Add "ROOT", tvwChild, , "123", ImageList1.ListImages(1).Index
    说类型不对。
      

  14.   

    imagelist绑定了吗?把, ImageList1.ListImages(1).Index去掉试试,如果正确就是imagelist的问题
      

  15.   

    先将Index变量声明
    dim INdex as long
      

  16.   

    可以啦,
    是我自己在tvchild我写了一个引号。
    我现在这样写Private Sub Form_Load()
    'tvClass是树控件名
    tvClass.Nodes.Add , , "ROOT", "所有班级", ImageList1.ListImages(1).Index
       dim i as int 
        i=1
        For Index = 0 To 3
        tvClass.Nodes.Add "ROOT", tvwChild, , "123", ImageList1.ListImages(i).Index
        i=i+1
    Next
        
    End Sub
    我想使用nodes的text不只是123,
    在循环内想改变txet的值。
    比如定义一个数组。
    a(1)="123"
    a(2)="234"
    这个如何定义如何对它初始化。
    还有,
    我如果想对每个nodes都进行不同的操作如何进行。
      

  17.   

    错了,是
    imagelist1.listimage(i).index
      

  18.   

    Dim array1 As Variantarray1 = Array("123", "234", "3455")For Index = 0 To 3
        tvClass.Nodes.Add "ROOT", tvwChild, , array1(index), ImageList1.ListImages(i).Index
    Next
      

  19.   

    Private Sub tvClass_Click() 'Click事件Dim newnode As Node
    dim IndexSet newnode = tvClass.SelectedItemselect case newnode.text
        case "123"
              msgbox "123"
        case "234"
              msgbox "234"
    end select End Sub
      

  20.   

    谢谢!
    还有一个问题。
    我按你的这个方法去执行
    Private Sub tvClass_Click() 'Click事件Dim newnode As NodeSet newnode = tvClass.SelectedItemMsgBox newnode.TextEnd Sub但是只能执行最前面的那个根节点的,如果我想每个节点都执行不同的功能呢?
    比如123
    和234
    节点执行不同的功能。
      

  21.   

    可以,我没有QQ,我用MSN
    不如我们到你前面的那个聊天室去,你看如何