delphi 根据数据库结构生成TreeView
procedure TUIOperate.FillTree(treeview: TTreeView); var findq: TADOQuery; node: TTreeNode; //这个方法是根据记录的id字段值,查找TreeView上的父节点 function FindParentNode(id:Integer):TTreeNode; var i:Integer; begin Result := nil; for i := 0 to treeview.Items.Count - 1 do begin //比较Node的Data值和记录的id值 if Integer(treeview.Items[i].Data) = id then begin Result := treeview.Items[i]; Break; end; end; end; begin findq := TADOQuery.Create(nil); findq.Connection := controler.DataConnect.Connection; //这里的Connection指向你的数据连接 try treeview.Items.BeginUpdate; treeview.Items.Clear; //选出所有记录,并按parentid排序,这样可以保证先添加顶级节点,在下级记录添加时