定义一个记录指针:
------------------------------
PItem=^TPItem;
TPItem=Record
mid,parentid,index:Integer;
end;
{(节点序号,此为一次递增的),caption(节点描述),parentid(父节点序号),index(同级序号)}
---------------------------------------------
var
NodeL,ChildNode:TTreeNode;
x:PItem;
begin
inherited;
treList.Items.Clear;
NodeL:=treList.Items.Add(Nil,'树');
NodeL.ImageIndex:=2;
NodeL.SelectedIndex:=2;
DataSet.First;
while Not DataSet.Eof do
begin
New(x); //mid,parentid,index
x.mid:=DataSet.FieldBynaMe('mid').AsInteger;
x.index:=DataSet.FieldBynaMe('index').AsInteger;
x.parentid:=DataSet.FieldBynaMe('parentid').AsInteger;
ChildNode:=treList.Items.AddChildObject(NodeL,DataSet.FieldBynaMe('caption').AsString,Tobject(x));