treeview如何根据当前选中的项增加属于另一父类的项?(50分)

  • 主题发起人 主题发起人 小邱
  • 开始时间 开始时间

小邱

Unregistered / Unconfirmed
GUEST, unregistred user!
表:
ID XM
01 张三
01 李四
02 王五
在TreeView 中显示:
。01
张三
李四
。02
王五
问:若当前选中状态是李四,如何加入上图的02--王五?

 
不是很明白你的意思
你是想怎么添加?
添加前是什么样子,添加后是什么样子
 
to zhhc:
前:
01
张三
李四
后:
02
王五
 
还是有点不明白
想添加王五,直接添加就行了呀
var
t:TTreeNode;
begin
t:=TreeView1.Items.AddChild(nil,'02');
TreeView1.Items.AddChild(t,'王五');
end;
不会这么简单吧

你是要怎么根据李四来添加王五的呢?
 
我的意思是要根据表中记录添加。
就如上表,ID='01'有张三、李四
。01
,张三
,李四
ID='02' 有王五:
。02
,王五
也就是把ID=01的项作为01的子项。
把在表中所有的记录根据ID分类显示在TREEVIEW上。
 
難到你不是一次性的裝載數據的﹖
 
程序初始化的时候装载数据,
运行当中可随时增加,删除。
 
接受答案了.
 
刚刚给你写好添加的部分,你就已经给分了:)

procedure TForm1.Add(Tree:TTreeView;Id:String;Name:String);
var
Node:TTreeNode;
i:Integer;
Eof:Boolean;
begin
Eof:=false;
i:=0;
Node:=nil;
While not Eof do
begin
if (i>=Tree.Items.Count-1) then Eof:=true
else
if (Tree.Items.Level=0) and (Tree.Items.Text=Id) then
begin
Eof:=true;
Node:=Tree.Items;
end;
inc(i);
end;
if (Node=Nil) then
Node:=Tree.Items.Add(Nil,Id);
Tree.Items.AddChild(Node,Name);
end;
 
后退
顶部