下面就是一个递归的例子。当然我这里是把所有的子孙放在一个listview。你在FORM放一个TREEVIEW和一个LISTVIEW就可以运行的。 procedure TForm1.SetListView(TreeItem:TtreeNode); var ActiveList:TListItem; i:integer; begin if TreeItem.Count=0 then Exit; for i:=0 to TreeItem.Count-1 do begin ActiveList:=ListView1.Items.Add; ActiveList.Caption:=TreeItem.Item[i].Text ; setlistview(TreeItem.Item[i]); end; end;procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode); begin listview1.Clear; setlistview(treeview1.Selected ); end;
其实方法就是楼上朋友说的!
procedure TForm1.SetListView(TreeItem:TtreeNode);
var
ActiveList:TListItem;
i:integer;
begin
if TreeItem.Count=0 then Exit;
for i:=0 to TreeItem.Count-1 do begin
ActiveList:=ListView1.Items.Add;
ActiveList.Caption:=TreeItem.Item[i].Text ;
setlistview(TreeItem.Item[i]);
end;
end;procedure TForm1.TreeView1Change(Sender: TObject; Node: TTreeNode);
begin
listview1.Clear;
setlistview(treeview1.Selected );
end;