Treeview 简单问题 50分,回答精彩可另加分。(50分)

  • 主题发起人 主题发起人 轻音乐
  • 开始时间 开始时间

轻音乐

Unregistered / Unconfirmed
GUEST, unregistred user!
如何能让没有子节点的节点带有‘+’。
看到有些软件初始显示时的主节点都带有‘+’,当你去展开时才去查询,
若该节点下没有内容时去掉‘+’,请问如何实现。
我现在有一种做法就是在每个主节点都加一个子节点,当展开时判断,
若该项无内容时,删除子节点。
***谁有不同做法?***
 
加图片,开始和有节点不变
无节点换图片
 
to轻音乐:你这方法也不错啊!要是结点多,速度会有影响
 
你的做法我不太理解。为什么在没有子节点的地方加‘+’呢?
在显示树的时候就让它查找并添加完,不是更好嘛。还有啊效率比以前要高
 
我猜你是采用逐级查找建立节点的方法 但这样建立并不知道节电下面还有没有节点
我的做法是 每次建立节点时 增加一个查找是否有子节点的功能
 
//关注。
t
 
很简单,我来说两句吧
楼主的方法可能是想参照注册表编辑器的方法,
仅仅在展开节点时才去查询他的子节点,每次查询的数据量很小,
树的初始化非常快,只需添加第一层节点,
如果要使添加的节点带有+号,只需Node.HasChildren := True; 就可以了
在节点的展开事件中,查询数据库,并添加节点,
如果没有节点,此时再Node.HasChildren := False;
就可以去掉+号了,

我的建议,在添加每个节点时,最好能同时查询此节点是否有子节点
(可以利用统计分组查询计数,获得每个节点的子节点个数)
这样添加节点时就可以知道此节点有无子节点了,上面的问题也就不用考虑了
 
to LiChaoHui 好主意,谢谢,分是你的了

 
好主意,对我的问题也有启发。
 
后退
顶部