急救!!!!!!!

Xamdf 2003-09-12 10:39:17
On Error GoTo Err_Add
Dim mNode As Node
Dim xh As String '序号

xh = ""

Set mNode = TvwView.Nodes.Add("DNCP", tvwChild)
Sign:mNode.Text = "新建项目" & xh
mNode.Image = "CPZL"
mNode.Key = "CPZL_" & mNode.Text

Exit Sub
Err_Add:
'MsgBox "[" & Err.Number & "]" & Err.Description, vbExclamation, "错误"
xh = Val(xh) + 1
GoTo Sign
我要实现类似于创建新建文件夹、新建文件夹1、新建文件夹2......
可是我的代码不知为何,只能实现新建项目、新建项目1
到创建新建项目2时错误就捕获不到了,而且程序运行出错
"35602 集合中的关键字不唯一"
怎么在思路不变的情况下将这个问题解决呀?
...全文
83 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Xamdf 2003-09-12
  • 打赏
  • 举报
回复
解决啦,撒分!
Do
Err.Clear
mNode.Text = "新建项目" & xh
mNode.Image = "CPZL"
mNode.Key = "CPZL_" & mNode.Text
xh = Val(xh) + 1
Loop While Err <> 0

juror 2003-09-12
  • 打赏
  • 举报
回复
同意上面的。
yijiansong 2003-09-12
  • 打赏
  • 举报
回复
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目", "新建项目"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目1", "新建项目1"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目2", "新建项目2"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目3", "新建项目3"
Xamdf 2003-09-12
  • 打赏
  • 举报
回复
谢谢啦
是这样的,在treeview里通过点鼠标右键新建菜单随时添加节点,billyqiao(如冰) 同志说的适用于固定节点,lilaclone(~~阿九~~) 说的也有道理,不过我认为利用错误处理机制确实是解决一些问题的好办法,只是我有点利用不好它,急死我了,我的思路就是通过Node.Key的不可重复性来解决有相同名称的节点问题,这样可以减少我的代码,程序运行还快,但是问题是相同的错误我只能捕获到一次,再出现的问题我就捕获不到了,帮帮了吧!
lihonggen0 2003-09-12
  • 打赏
  • 举报
回复
"35602 集合中的关键字不唯一"

这样的错误是你的treeview的节点的key值重复时造成的
建立tree的原则是key不能重

lilaclone 2003-09-12
  • 打赏
  • 举报
回复
说实话,你的程序写得有点乱,而且你在mNode.Key = "CPZL_" & mNode.Text
中的用法不可取,可以采用整型数值递增的方法进行增加节点

另外,建议程序中不要加太多跳转语句,很难看出问题出在哪,建议你看看VB编码规范等文档
billyqiao 2003-09-12
  • 打赏
  • 举报
回复
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目", "新建项目"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目1", "新建项目1"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目2", "新建项目2"
TvwView.Nodes.Add "DNCP", tvwChild, "新建项目3", "新建项目3"
Xamdf 2003-09-12
  • 打赏
  • 举报
回复
程序运行时,第一次出现错误时能捕获到,而第二次出现同样的问题时就捕获不到了

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧