Delphi动态创建树

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

数据结构如下:

CREATE TABLE [tbTree] (

[ID] [varchar] (4) COLLATE NOT NULL ,

[Context] [nvarchar] (50) NULL ,

[ParentID] [varchar] (4) NULL ,

CONSTRAINT [PK_tbTree] PRIMARY KEY CLUSTERED

(

[ID]

) ON [PRIMARY]

) ON [PRIMARY]

代码如下:

lprocedure TForm1.ReadTree(tnode:TTreeNode;Fvalue: String);

lVar

l i: integer;

l Flist:TStringList;

l Flist1:TStringList;

l str:string;

lbegin

l qryTree.close;

l qryTree.sql.clear;

l qryTree.sql.add('select Parentid,id,context from tbtree');

l qryTree.sql.add('where isnull(Parentid,'''')=');

l qryTree.sql.add(''''+Fvalue+'''');

l qryTree.Open;

l qryTree.First;

l Flist:=TStringList.Create;

l Flist1:=TStringList.Create;

l while not qryTree.eof do

l begin

l Flist.Add(trim(qryTree.fieldbyname('context').asstring));

l Flist1.Add(qryTree.fieldbyname('id').asstring);

l qryTree.next;

l end;

l for i:= 0 to flist.Count-1 do

l begin

l s:=flist1.Strings[i];

l str:=flist.Strings[i];

l snode:=Treeview1.items.addchild(tnode,str);

l ReadTree(snode,s);

l end;

l flist.free;

l flist1.free;

lend;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航