树壮浏览,大家帮帮找找错误在哪里?(70分)

  • 主题发起人 主题发起人 蔓草
  • 开始时间 开始时间

蔓草

Unregistered / Unconfirmed
GUEST, unregistred user!
编码 名称 上级编码
3100 管理局 0
3110 第一区 3100
3111 第一分区 3110
3120 第二区 3100
3121 第一分区 3120
管理局
|--第一区
| |--第一分区
|--第二区
|--第一分区

大家看看我的代码
procedure TFrmTreeView.CreateTree(var ANode: TTreeNode; var pid: integer);
var
id : integer; sname : string;
bmk : TBookMark;
begin
with FrmTreeView,AQtemp do
begin
filter := '上级编码='+'''' + inttostr(pid)+'''';
while not Eof do
begin
sname := FieldByName('名称').AsString;
Anode := TV.Items.AddChild(Anode, sname);
id := FieldByName('编码').AsInteger;
bmk := GetBookmark;
CreateTree(ANode,id);
Anode := Anode.Parent;
filter := '上级编码='+'''' + inttostr(pid)+'''';
if AQtemp.BookmarkValid( bmk ) then
begin
GotoBookmark(bmk); FreeBookmark(bmk);
end;
next;
end;
end;
end;

procedure TFrmTreeView.Button1Click(Sender: TObject);
var
t : TTreeNode;
Id : integer;
begin
TV.Items.clear;
t := nil; id := 0;
createtree(t,id);
end;

我从网络上找来的,怎么不行,跟踪好象filter有错误!

 
至少应该将TreeView的Top的Node的传入
createtree(t,id);
 
我刚要删除这个问题,就有人来了!
 
????
 
呵呵,蔓草,是你发消息让我看的呀。本来俺都要下线了……
 
也许俺答的不会,或者说俺答的就是不多,但你这么一说,俺好像增加了混分的嫌疑了?
 
yzhshi:
非常感谢你了!
 
后退
顶部