Office中国论坛/Access中国论坛
标题:
求助:Treeview节点添加、删除等问题
[打印本页]
作者:
asklove
时间:
2009-6-26 15:19
标题:
求助:Treeview节点添加、删除等问题
菜鸟问题多多
1、Node.key一般设什么值合理?
2、Tree节点名称如何循环判断?(如判断一个节点名称是否等于某个文本框的内容)
3、删除:怎样判断是否有下级点节?(如节点A,下级节点A1未删除的话,则节点A不能删除)
4、更名:我现在只能一层层点开来一直到下级节点,才能更改名称。有没有办法直接点击(如C,然后在子窗体中选定某条记录)改名后,在Tree显示出来?
5、添加:问题和上面3差不多,也要一层层点开来,直到最后一层才能添加,而且如果只改上级名称下级名称不变的话会出错。二个上下级都改一下名称的话,到是能添加。应怎么解决?
6、最后问一下,TreeView有没有像子窗体一样,记录更改后,刷新一下就能立刻反应出来的功能?
一切问题都在例子中,哪位高人有空帮忙看看啊,先谢谢了!
作者:
sgrshh29
时间:
2009-6-26 16:49
1、在同一个tree中,每个node的key值是唯一的,不允许有重复的。因此最好用数据表中的主键(第一个字段,一般为ID,从1开始的自然数)前面加上一个字母作为key值。而node的名称一般应该允许重复,可以是数据表中的第二个字段(text)。每个node一般都有一个上级,所以数据表中应该有第三个字段(parentID)来指出这个node的上级,如果node没有上级,可以将它的parentID设为0,表示这个node为根节点。然后再是一些辅助的字段,来到达其它目的。
2、明白了上面的node是如何加载的,这个问题就不是问题了。
3、怎样判断是否有下级点节?假如你选中的node是nodX,nodX.Children > 0 就表示有下级节点。
4、节点更改名称。假定你要更改名称的节点叫nodX,nodX.text=newText
5、按照1的方法加载的tree,不存在这个问题。
6、如果记录发生更改(比如添加、删除等),清空tree,重新加载就可以了。
以上个人愚见。
作者:
sgrshh29
时间:
2009-6-26 16:52
补充4、同时要用更新查询,更改数据表中相应的内容。
作者:
asklove
时间:
2009-6-29 09:55
我就想,我的KEY值设得不合理,造成问题多多
谢谢您这么有耐心的回答我这么多问题!
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3