Einzelnen Beitrag anzeigen

Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#3

Re: Hilfe im Umgang mit TreeView

  Alt 15. Apr 2006, 23:50
Ich hoffe mal, das Problem richtig verstanden zu haben.
In dem Fall moechtest du nur die Blaetter des Baumes zurueckgeben, aber mit der "Wegbeschreibung" dorthin.
An sich ist das nicht schwer. Um dich mal auf den Weg dorthin zu bringen:
du hast bisher das:
Zitat von Kanne_Kaffe:
Delphi-Quellcode:
  for I := 0 to TreeView1.Items.Count-1 do
    Memo1.Lines.Add(TreeView1.Items.Item[I].Text)
Um nur die Blaetter in die Liste zu kriegen fragst du einfach, wieviele Kinder der aktuelle Knoten hat. Die Eigenschaft Delphi-Referenz durchsuchenCount duerfte da hilfreich sein.
Wenn also Count = 0 ist, dann ab mit dem Knoten in die Liste, ansonsten passiert eben nichts.
So, und wie kriegt man jetzt den Ursprungsknoten: Der steht in Parent drinnen. Also kurz gesagt:
Code:
Fuer jedes Item:
  Wenn keine Kinder vorhanden, dann:
    Fuege der Liste Hinzu: 'Haupteintrag ' + <item.parent.text> + ' Bla ' + <item.text>
Allerdings funktioniert das nur, wenn der Baum max. Hoehe 2 hat. Und damit du keine Exception kriegst, wenn mal ein Node auf Level 0 keine Kinder hat, solltest du noch ueberpruefen, ob das Parent vom Item nil ist.
Wenn der Baum auch tiefer geht, dann wirds etwas komplizierter, aber es bleibt machbar

greetz
Mike

[Add] Ich hab Matze's Beitrag zwar gesehn, wollts aber nicht umsonst geschrieben ham
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat