头好疼,树的遍历,请教各位!

jjfzjg 2003-06-17 06:21:39
把treeview的结点text属性显示在listbox上,我的过程有问题,小弟递归不太会
procedure TForm2.shownode(node: ttreenode);
begin
listbox1.Items.add(node.Text);
if Node.HasChildren then

for I := 0 to Node.Count-1 do
begin

shownode(node.Item[i]);
end;

end;


请教各位!哪儿问题?
...全文
19 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
jjfhello 2003-06-28
  • 打赏
  • 举报
回复
procedure TForm1.deldata(node: ttreenode);
var i,id:integer;
mynode:ttreenode;
ponode:pNode;
begin id:=pnode(node.Data)^.ID;
with adoquery1 do
begin
sql.Clear;
SQL.Add('update catalog set pid=''1'' where id='+inttostr(id));
ExecSQL;
end;

if Node.HasChildren then
for I := 0 to Node.Count-1 do
begin
deldata(node.Item[i]);
end;

end;
liujiang 2003-06-17
  • 打赏
  • 举报
回复
begin
listbox1.Items.add(node.Text);
if Node.HasChildren then
for I := 0 to Node.子节点个数-1 do
begin
shownode(node.Item[i]);
end;
end;
hof 2003-06-17
  • 打赏
  • 举报
回复
在那边回答过了
Wnyu 2003-06-17
  • 打赏
  • 举报
回复
procedure TForm1.shownode(node: ttreenode);
var
i:integer;
begin
listbox1.Items.add(node.Text);
if Node.HasChildren then
for I := 0 to Node.Count-1 do
begin
shownode(node.Item[i]);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
shownode(treeview1.Selected);
end;
fhuibo 2003-06-17
  • 打赏
  • 举报
回复
没问题了
jjfzjg 2003-06-17
  • 打赏
  • 举报
回复
我的i变量是全局变量,在上面声明
sduzjw 2003-06-17
  • 打赏
  • 举报
回复
记得有一个属性可以唯一确定每一个节点的
lion_lh 2003-06-17
  • 打赏
  • 举报
回复
什么问题?
没定义 I 吧
procedure TForm2.shownode(node: ttreenode);
var
i:integer;
begin
listbox1.Items.add(node.Text);
if Node.HasChildren then

for I := 0 to Node.Count-1 do
begin

shownode(node.Item[i]);
end;

end;
DelphiBoy2003 2003-06-17
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1923/1923268.xml?temp=.3507044
帮帮忙吧

5,388

社区成员

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

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