Einzelnen Beitrag anzeigen

rayj

Registriert seit: 18. Okt 2005
46 Beiträge
 
#2

Re: TreeView aus DB mit parentIDs generieren

  Alt 22. Jan 2008, 15:07
Vielleicht habe ich mich ein wenig unverständlich ausgedrückt.
Also ich habe jetzt testeshalber einfach mal einen (sehr schlechten) undynamischen Code der 2 Level der oben genannten Struktur in die TreeView schreibt.


Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  I: Integer;
  aNode, pNode: TTreeNode; //aktuellerNode, parentNode
begin
// TreeView aufbauen
TreeView1.Items.Clear;

dsCate.Close; //ado dataset
dsCate.CommandText := 'select * from cate where cat_pid = 0';
dsCate.Open;


while not dsCate.Eof do begin
  aNode := TreeView1.Items.AddChild(nil, dsCate.FieldByName('cat_name').AsString);

  query.Close;
  query.SQL.Clear;
  query.SQL.Add('select * from cate where cat_pid = ' + IntToStr(dsCate.FieldByName('cat_id').AsInteger));
  query.Open;

  if query.RecordCount > 0 then begin
      pNode := aNode;
      while not query.Eof do begin
        aNode := TreeView1.Items.AddChild(pNode, query.FieldByName('cat_name').AsString);
        query.Next;
      end;
  end;
  dsCate.Next;
end;
Allerdings soll das Programm am Ende beliebig viele "Parent-Level" besitzen und so kann ich das natürlich nicht hart-coden.

Versteht jemand mein Problem?
  Mit Zitat antworten Zitat