窗体加载时候的填充树控的方法不能用,
说是集合中的KEY不是唯一,
哪位老兄来帮帮解决一下~

解决方案 »

  1.   

    你看一下node.add的方法说明,你的key值有重复的了,当然不行了。举例如下:    Set NodX = TreeView.Nodes.Add(, , "stratosphere", "根节点")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up1", "一")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up2", "二")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up3", "三")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up4", "四")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up5", "五")
        Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, "up6", "六")
         ……
    你的"up1"……"up6"这个地方有重复的了!
      

  2.   

    对于treeview每个节点的key应该是唯一的,与其他不同的。
    所以添加节点的时候让新结点拥有不同的key就好了具体方法仁者见仁,要看你从哪里读数据了。我一般都是用数据库里面的primary key 加个字母或者符号
      

  3.   

    //树形控件里可不可以NOTHING
    什么意思,是不要key吗?
    如果你的程序不需要key的话,可以,这样:
     Set NodX = TreeView.Nodes.Add("stratosphere", tvwChild, , "一")
      

  4.   

    树视图控件现在已经用集合填充好了,
    我是想在更新数据库的时候,控件更着更新一遍~~可是在重新填充的时候,
    提示: 集合中的KEY不是唯一
    我想是控件里的已经存在节点的问题,
    不知道树视图里有没有判断已经存在节点和清空所有节点的方法
    这样我就可以先判断一下,然后在重新填充,实现及时刷新~
      

  5.   

    用ERR捕获一下KEY 值不唯一时的错误号,然后对该错误进行处理
      

  6.   

    问题已经解决了,
    只是在填充树的时候,加个判断
    if Node.cound>1,
    然后CLERA掉就可以了~谢谢各位了~~