在Delphi中,使用TreeView创建结构树,何种方法最好?

dgc 2001-11-16 08:20:07
在Delphi中,使用TreeView创建结构树,何种方法最好?
我的办法是:
var
TT:Integer;
NN,N1,N2,N3:TTreeNode;
SS:string;
begin
Dept.first;
while not dept.eof do
begin
ss:=Dept.FieldsByName('cname').AsString;
TT:=Dept.FieldsByName('NTree').AsInteger;
if TT=0 then
nn:=TreeView.Items.Add(nil,ss)
else if TT=1 then
nn:=TreeView.Items.Add(N1,ss)
else if TT=2 then
nn:=TreeView.Items.Add(N2,ss)
end;
Dept.next;
end;
很定不是最好的,请教了!
...全文
165 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
cszhz 2001-11-17
  • 打赏
  • 举报
回复
对应的事件是:TreeView1Expanding
cszhz 2001-11-17
  • 打赏
  • 举报
回复
如果节点很多时可以这样初始化treeview:
1 创建根结点root
2 创建第一层叶子节点,对每一个叶子结点判断是否有孩子节点,如果有:加上可展开标志(+)
,并不真正添加其下层节点,直到用户点击‘+’时,再添加下级节点(方法类似),这样可以减少系统初始化的时间。
lazecat 2001-11-16
  • 打赏
  • 举报
回复
这样可以吗?那N1,N2从哪里来?
taxi 2001-11-16
  • 打赏
  • 举报
回复
你想干什么,就算'NTree'字段有值,你创建的结点也是第一级的。

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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