叶子结点是不包括有子结点的结点,用递归.var str:array of string;///////保存所有下面的结点的text cnt:integer;////////下面结点的个数procedure TForm1.GetChildNode(Node:TTreeNode); var i:integer; begin for i:=0 to Node.Count-1 do begin if Node.Item[i].HasChildren=false then begin str[cnt]:=Node.Item[i].Text; inc(cnt); end else GetChildNode(Node.Item[i]); end; end;procedure TForm1.Button2Click(Sender: TObject); var i:integer; begin setlength(str,TreeView1.Items.Count); GetChildNode(TreeView1.Selected); Memo1.Lines.Clear; for i:=0 to cnt-1 do Memo1.Lines.Add(str[i]); end;
str:array of string;///////保存所有下面的结点的text
cnt:integer;////////下面结点的个数procedure TForm1.GetChildNode(Node:TTreeNode);
var
i:integer;
begin
for i:=0 to Node.Count-1 do
begin
if Node.Item[i].HasChildren=false then
begin
str[cnt]:=Node.Item[i].Text;
inc(cnt);
end else
GetChildNode(Node.Item[i]);
end;
end;procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
begin
setlength(str,TreeView1.Items.Count);
GetChildNode(TreeView1.Selected); Memo1.Lines.Clear;
for i:=0 to cnt-1 do
Memo1.Lines.Add(str[i]);
end;