Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi VirtualStringTree Unterknoten durchsuchen (https://www.delphipraxis.net/211475-virtualstringtree-unterknoten-durchsuchen.html)

Alex_ITA01 21. Sep 2022 08:51

VirtualStringTree Unterknoten durchsuchen
 
Moin zusammen,
ich habe eine Frage zum VirtualStringTree.
Gibt es fertige Funktionen um die Unterknoten eines Root-Eintrages abzugrasen ohne auf den nächsten RootKnoten zu stoßen?

Folgendes grast ja alle Knoten ab:

Delphi-Quellcode:
Node := vst1.GetFirst;
while assigned(Node) do
begin
  try
    NodeData := vst1.GetNodeData(Node);
  finally
    Node := vst1.GetNext(Node);
  end;
end;
Ich habe den RootKnoten über die Level-Erkennung bereits als Knoten erkannt.
Gibt es Möglichkeiten von diesem Node, nur die Childs abzugrasen?
Es gibt ja FirstChild und LastChild aber kein NextChild. Klar, könnte ich alle abgrasen und das manuell über die Level-Erkennung machen aber wollte wissen, ob es zum durchsuchen von Unterknoten auch "fertige" Möglichkeiten gibt

Gausi 21. Sep 2022 08:57

AW: VirtualStringTree Unterknoten durchsuchen
 
GetNextSibling?

generic 21. Sep 2022 10:25

AW: VirtualStringTree Unterknoten durchsuchen
 
Für eine Suche biete sich auch die Methode "IterateSubtree" an.

Siehe auch Demo Quelltext von DP-Stammtisch #2: https://www.delphipraxis.net/712774-post4.html

PaPaNi 21. Sep 2022 11:55

AW: VirtualStringTree Unterknoten durchsuchen
 
Zitat:

Zitat von Gausi (Beitrag 1512172)
GetNextSibling?

Ich glaube auch.

Alex_ITA01 22. Sep 2022 09:17

AW: VirtualStringTree Unterknoten durchsuchen
 
GetNextSibling hat geholfen, Danke.
Ich dachte, dass durchsucht nur die Roots aber jetzt habe ich verstanden, dass es die Ebene durchsucht, auf der man sich gerade befindet und auch da aufhört, wenn nichts gefunden wurde obwohl weitere Roots kommen.
Klappt wie gewünscht!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz