:
Créer une table [tbtree] (
[Id] [varchar] (4) Colloquer non nulle,
[Contexte] [nvarchar] (50) null,
[Parentid] [varchar] (4) null,
Contrainte [pk_tbtree] clé primaire en grappe
(
[IDENTIFIANT]
) Sur [primaire]
) Sur [primaire]
:
lprocedure tform1.readtree (tNode: ttreenode; fValue: string); lvar li: entier; 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 ('où isNull (parentid,' '' ') ='); l qrytree.sql.add ('' '' + fValue + '' ''); l Qrytree.open; l Qrytree.First; l Flist: = tStringList.Create; l flist1: = tStringList.Create; l Bien que ce ne soit pas qrytree.eof do l commence l flist.add (Trim (Qrytree.FieldByName ('context'). Asstring)); l flist1.add (qrytree.fieldByName ('id'). Asstring); l qrytree.next; prêter; l pour i: = 0 à flist.Count-1 do l commence ls: = flist1.strings [i]; l str: = flist.strings [i]; L SNODE: = TreeView1.items.AddChild (Tnode, Str); L readTree (snode, s); prêter; L FLIST.FREE; L FLIST1.FREE; prêter;