首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

怎么增加删除树的节点

2012-02-08 
如何增加删除树的节点在程序里使用treeview的时候,属性里有个item可以很方便的增减树的节点,现在想在程序

如何增加删除树的节点
在程序里使用treeview的时候,属性里有个item可以很方便的增减树的节点,现在想在程序运行以后实现那个item的功能,该怎么做呢?
      也就是说,我的程序页面上上有个treeview组件,我想在旁边放几个按钮,实现treeview里item属性的功能。

[解决办法]
with TreeView1 do
begin
Items.AddChild(nil, '我是第一个节点 ');
Items.AddChild(Items[0], '我是第一个节点的节点 1 ');
Items.AddChild(Items[0], '我是第一个节点的节点 2 ');
Items.AddChild(nil, '我是第二个节点 ');
end;

删除节点用 TreeView1.Items.Delete() 或 TreeView1.Items[i].Delete
[解决办法]
增加
procedure TForm1.Button1Click(Sender: TObject);
var
tnode:TTreeNode;
begin

Tnode:=Treeview1.Items.AddChildObject(TreeView1.Selected, '标题 '+inttostr(Random(1000)) ,nil);
//设置显示选择图标什么的
tnode.ImageIndex :=0;
tnode.SelectedIndex := 1;
end;


//删除
procedure TForm1.Button2Click(Sender: TObject);
begin
if (TreeView1.Selected=nil) then exit;
TreeView1.Selected.Free;
end;

[解决办法]
得到选择节点层数 注意,是从0开始的
procedure TForm1.Button3Click(Sender: TObject);
begin
if (TreeView1.Selected=nil) then exit;
ShowMessage(IntToStr(TreeView1.Selected.Level));
end;
[解决办法]
保存树只需要保存每个节点的数据和父节点的指针,生成树的时候遍历一次就可以了。

热点排行