AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi ttreeview ab einem Unterknoten alles auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

ttreeview ab einem Unterknoten alles auslesen

Ein Thema von wwild0473 · begonnen am 7. Aug 2006 · letzter Beitrag vom 28. Mär 2010
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.557 Beiträge
 
Delphi 12 Athens
 
#6

Re: ttreeview ab einem Unterknoten alles auslesen

  Alt 28. Mär 2010, 13:30
Zitat von ibp:
hier meine Lösung, kommt ohne zusätzliche Variable aus...
Nicht wirklich ... jedenfalls nicht, wenn man die Rücksprungadresse und den eventuellen Stackframe für den rekursiven Aufruf und sonstige Variablen mitzählt.

Iterativ und mit wirklich nur einer Variable:
Delphi-Quellcode:
procedure Grab(Node: TTreeNode);
var
  TmpNode : TTreeNode;
begin
  TmpNode := Node.getFirstChild;
  while Assigned(TmpNode) do
  begin
    showmessage(TmpNode.Text);
    TmpNode := TmpNode.GetNext;
  end;
end;
gut, sowas wäre auch noch möglich
Delphi-Quellcode:
procedure Grab(Node: TTreeNode);
begin
  Node := Node.getFirstChild;
  while Assigned(Node) do
  begin
    showmessage(Node.Text);
    Node := Node.GetNext;
  end;
end;
Dieses sollte für den Stack und auch sonst speichertechnisch die sparsamste Variante darstellen.


[add]
Zitat:
ttreeview ab einem Unterknoten alles auslesen
Willst du jetzt alles auslesen oder nur alle Unterknoten eines bestimmten Knotens?

Wenn nur alle Unterknoten dann müßte man noch prüfen, ob TmpNode unterhalb von Node liegt oder man verwende doch eine rekursive Methode.

z.B.:
Delphi-Quellcode:
procedure Grab(Node: TTreeNode);
var
  EndNode : TTreeNode;
begin
  EndNode := Node.GetLastChild;
  Node := Node.GetFirstChild;
  if Assigned(Node) then
    repeat
      showmessage(Node.Text);
      Node := Node.GetNext;
    until EndNode = Node;
end;
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz