Построение древа TreeView из базы данных
Материал из DRKB
Построение древа TreeView из базы данных[править | править код]
procedure TOrgColumn.LoadTreeView;
type
PItemData=^TItemData;
TItemData=record
Index:Integer;
end;
var
tnNew: TTreeNode;
idNewItem: PItemData;
i: integer;
begin
TreeView1.Items.Clear;
with data.QOrganCol do
begin
Active := false;
SQL.Clear;
SQL.Add('SELECT * FROM OrganizationColumns.DB');
SQL.Add('ORDER BY NumColumn, Name');
ExecSQL;
Active := True;
end;
data.QOrganCol.First;
while data.QOrganCol.Eof <> True do
begin
tnNew := nil;
if data.QOrganCol.Fields[2].AsInteger > 0 then
for i := 0 to TreeView1.Items.Count-1 do
begin
if PItemData(TreeView1.Items[i].Data).Index = data.QOrganCol.Fields[2].AsInteger then
tnNew := TreeView1.Items[i];
end;
with TreeView1.Items.AddChild(tnNew, data.QOrganCol.Fields[3].AsString) do
begin
ImageIndex := 1;
SelectedIndex := 0;
idNewItem := new(PItemData);
Data := idNewItem;
idNewItem.Index := dmodule.data.QOrganCol.Fields[0].AsInteger;
end;
data.QOrganCol.Next;
end;
end;
Author: dron-s
Source: Взято из http://forum.sources.ru
ID: 03089