多级联动的树型控件TreeView

时间:2022-03-01 12:41:58
多级联动的树型控件TreeView


由于需要点子节点或父节点都要上下联动.


说起来容易..实现还不简单


源码地址: http://www.jiamaocode.com/Conts/2010/09/10/1258/1258.html

15 个解决方案

#1


不懂?

#2


这个功能很容易做到啊,就是一个递归循环不就可以了么 ?

#3


引用 2 楼 yang_5 的回复:
这个功能很容易做到啊,就是一个递归循环不就可以了么 ?


不试是不行的...你去试试看..递归除了效率不好..也还有问题的

你点一次就得递归一次..

还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

#4


引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是其他情况?

#5


引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是其他情况?


你这样做不是不行...

我也忘了先移除事件

不过这样做有点怪

完全交给事件处理还是好点

#6


典型的三态树问题!

#7


引用 5 楼 df82325542 的回复:
引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是……

不管是黑猫白猫 能吃耗子就是好猫。
哪有那么多十全十美的东西。。如果有倒是更好。。

如果是手动勾选 那么给NODE的TAG个值。
递归的时候判断一下 TAG 为空的 那是递归过勾选的 
大概思路,具体细节自己调下就知道了。

#8


引用 7 楼 guochangshan 的回复:
引用 5 楼 df82325542 的回复:
引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可……



恐怕不行..很多方法都试过了

#9


恐怕就知道不行了?
我说办法不适用你的这个需求?

#10


引用 9 楼 guochangshan 的回复:
恐怕就知道不行了?
我说办法不适用你的这个需求?


关健是你没法弄的。。。不知道什么时假设置TAG也不知道什么时候不设。。。。你试试就知道了。。我试过同样的办法的

#11


楼主,

你和这个比一下,看看是否有可取的地方,ARMSoft Flexible TreeView

网站



my blog
http://ufo-crackerx.blog.163.com/

#12


感觉要把每一层节点都理顺并记录下来,这样就省事多了!

#13


引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
不试是不行的...你去试试看..递归除了效率不好..也还有问题的

你点一次就得递归一次..

还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

你的代码我看过了。。changeParentNode这个方法 为什么不能递归呢?

如何区分事件触发,与递归点击?
可以这样理解吧:
如果在子节点上点击了某节点,那么在他的父节点上如果点的话,要屏蔽掉刚才点过的节点,其他的正常。
如果我理解对的话,那么会出现一个问题,所谓的点任意节点都要递归,和你要区分的单个点击节点的事件,操作上都是相同的,区分只有你口中所要的区分,并没有实际的区分条件,我觉得有必要研究下你的需求。

#15


^_^,其实很简单,就是标准的三态树

#1


不懂?

#2


这个功能很容易做到啊,就是一个递归循环不就可以了么 ?

#3


引用 2 楼 yang_5 的回复:
这个功能很容易做到啊,就是一个递归循环不就可以了么 ?


不试是不行的...你去试试看..递归除了效率不好..也还有问题的

你点一次就得递归一次..

还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

#4


引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是其他情况?

#5


引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是其他情况?


你这样做不是不行...

我也忘了先移除事件

不过这样做有点怪

完全交给事件处理还是好点

#6


典型的三态树问题!

#7


引用 5 楼 df82325542 的回复:
引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可以先把时间禁掉,也就是-= 然后再加上。
还是……

不管是黑猫白猫 能吃耗子就是好猫。
哪有那么多十全十美的东西。。如果有倒是更好。。

如果是手动勾选 那么给NODE的TAG个值。
递归的时候判断一下 TAG 为空的 那是递归过勾选的 
大概思路,具体细节自己调下就知道了。

#8


引用 7 楼 guochangshan 的回复:
引用 5 楼 df82325542 的回复:
引用 4 楼 guochangshan 的回复:
引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

树上的逻辑 要求是什么样的呢?
你只的区分触发是什么意思?
再递归中设为勾选的时候 和 你自带的勾选事件冲突?
如果是这样 可……



恐怕不行..很多方法都试过了

#9


恐怕就知道不行了?
我说办法不适用你的这个需求?

#10


引用 9 楼 guochangshan 的回复:
恐怕就知道不行了?
我说办法不适用你的这个需求?


关健是你没法弄的。。。不知道什么时假设置TAG也不知道什么时候不设。。。。你试试就知道了。。我试过同样的办法的

#11


楼主,

你和这个比一下,看看是否有可取的地方,ARMSoft Flexible TreeView

网站



my blog
http://ufo-crackerx.blog.163.com/

#12


感觉要把每一层节点都理顺并记录下来,这样就省事多了!

#13


引用 3 楼 df82325542 的回复:
引用 2 楼 yang_5 的回复:
不试是不行的...你去试试看..递归除了效率不好..也还有问题的

你点一次就得递归一次..

还有事件触发的与你递归出来点中的.看你怎么区分触发..
你试试就知道了

你的代码我看过了。。changeParentNode这个方法 为什么不能递归呢?

如何区分事件触发,与递归点击?
可以这样理解吧:
如果在子节点上点击了某节点,那么在他的父节点上如果点的话,要屏蔽掉刚才点过的节点,其他的正常。
如果我理解对的话,那么会出现一个问题,所谓的点任意节点都要递归,和你要区分的单个点击节点的事件,操作上都是相同的,区分只有你口中所要的区分,并没有实际的区分条件,我觉得有必要研究下你的需求。

#14


#15


^_^,其实很简单,就是标准的三态树