![]() |
Weg zum selektiertem Node
Ich habe ein TreeView mit Untereinträgen über mehreren Ebenen. Ich möchte in einem String die Beschriftungen aller Einträge vom Node mit dem Level 0 zum selektierten Node hintereinander eintragen, so dass ich den 'Weg' darin gespeichert habe. Wie macht man das :?: :roll:
|
Du gehst einfach alle Parents durch:
Code:
var
S: string; N: TTreeNode; begin ... N := SelectedTreeNode; S := ''; while N <> nil do begin S := N.Caption + '\' + S; N := N.Parent; end; Delete(S, Length(S), 1); // überzähliges '\' entfernen ... end; |
Hi :hi:,
ich denke, dass der umgekehrte Weg einfacher ist. Vom selektierten Knoten aus kannst Du über die Eigenschaft 'Parent' jeweils eine Stufe höher kommen, bis 'Parent' = NIL ist. Folgender Code-Block macht das Prinzip deutlich:
Code:
Grüße,
aPath:= '';
aNode:= SelectedNode; While Assigned(aNode) Do Begin aPath:= aNode.Text + #32 + aPath; aNode:= aNode.Parent; End; Daniel Edit: Mist - war wieder jemand schneller. :wink: |
Danke
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:35 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