数据结构如下 :
Создать таблицу [tbtree] (
[Id] [varchar] (4) Соберите не null,
[Контекст] [NVARCHAR] (50) NULL,
[ParentId] [varchar] (4) NULL,
Ограничение [PK_TBTREE] кластер первичных ключей
(
[ИДЕНТИФИКАТОР]
) На [первичный]
) На [первичный]
代码如下 :
LProcedure tform1.readtree (tnode: ttreeNode; fvalue: string); Лвар Ли: целое число; L Flist: TSTRINGLIST; L FLIST1: TSTRINGLIST; l str: string; lbegin l qrytree.close; l qrytree.sql.clear; l qrytree.sql.add ('select parentid, id, контекст из tbtree'); l qrytree.sql.add ('где isnull (parentid,' '' ') ='); l qrytree.sql.add ('' ''+fvalue+'' ''); l qrytree.open; l qrytree.first; l flist: = tstringlist.create; l flist1: = tstringlist.create; l в то время как не qrytree.eof do l begin l flist.add (trim (qrytree.fieldbyname ('context'). Appring)); l flist1.add (qrytree.fieldbyname ('id'). Appring); l qrytree.next; одалживать; l для i: = 0 к flist.count-1 do l begin ls: = flist1.strings [i]; l str: = flist.strings [i]; l Snode: = treeView1.items.addchild (tnode, str); l readtree (snode, s); одалживать; l flist.free; l flist1.free; одалживать;