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 TTreeView - Oberste Nodes bekommen (https://www.delphipraxis.net/100742-ttreeview-oberste-nodes-bekommen.html)

xZise 3. Okt 2007 11:43


TTreeView - Oberste Nodes bekommen
 
Hi DP,
Mithilfe von "<Treeview>.Items[<x>].Item[<...>]... kann ich ja die Nodes eines Levels bekommen.
Wenn ich jetzt aber folgendes Konstrukt habe, wie komme ich da an die obersten (A und D)?
Code:
- A
| |-- B
| |-- C
|
- D
(B und C sind Children von A. A und D haben als Sibling "nil")

MfG
xZise

PS: Ja ich weiß, ich könnte alle Einträge durchgehen und überprüfen ob .Level null ist, aber das dauert du lange :)
Ich habe nämlich z.B. "A,B" und will dann B markieren.
Dazu müsste ich aber zuerst gucken, welches B (falls es mehrere gibt) ;). Also ob das B zum ersten Node oder zum zweiten Node auf dem obersten Level :)

Lannes 3. Okt 2007 12:01

Re: TTreeView - Oberste Nodes bekommen
 
Hallo,

da hilft die Eigenschaft Parent.

z.B.
Delphi-Quellcode:
var z : Integer;
    aNode : TTreeNode;
begin
  aNode := TreeView.Selected;
  for z := aNode.Level downto 1 do
    aNode := aNode.Parent;
  showmessage(aNode.Text);

xZise 3. Okt 2007 12:05

Re: TTreeView - Oberste Nodes bekommen
 
Ich habe das Problem, das es genau andersherum sein muss ;) Ich hbae A,B und muss .Selected bestimmen

Lannes 3. Okt 2007 12:24

Re: TTreeView - Oberste Nodes bekommen
 
Hallo,

dann könnte Dir der Beitrag im DF helfen:
[TTreeView, VCL Win32] ...Node-Pfad (String) im TreeView suchen/selectieren?

xZise 3. Okt 2007 13:23

Re: TTreeView - Oberste Nodes bekommen
 
Cooler Code :) Schön schnell :) Danke xD


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:45 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