Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   nochmal zu TreeView (https://www.delphipraxis.net/123133-nochmal-zu-treeview.html)

BAMatze 28. Okt 2008 08:38


nochmal zu TreeView
 
Hallo an alle,

auch wenn ihr mich gleich verfluchen werdet, habe ich trotzdem nochmal eine Frage zu den TreeViews, was für mich trotz der ganzen Beiträge hier noch nicht ersichtlich geworden ist. Also ich habe den im Anhang mitgelieferten TreeView erstellt und will diesen in der Laufzeit ändern. Dies ist auch problemlos mit dem ersten "Ast" (im TreeView Allgemein genannt) ohne Probleme möglich. Dies mache ich über folgenden Programmcode:

Delphi-Quellcode:

procedure AenderungInTreeView(Ebene, Eintrag: integer; Text: string);
begin
  Form1.TV_Status.Items[Ebene].Item[Eintrag].Selected := true;
  Form1.TV_Status.Selected.Text := Text;
end;
Für alle die auch ein paar Probleme haben, hier eine kurze Erklärung: erst wird die Zeile in dem TreeView selektiert und dann geändert.

Hier jetzt meine Frage: Warum kann ich mit diesem Programmcode nicht auch auf den 2. "Ast" (im TreeView Tisch genannt) zugreifen. Wie gesagt, hab hier schon einige Forenbeiträge gelesen und auch ein englisches Tutorial durchgearbeitet aber mit allen Tips, die ich daraus bekommen hab, kann ich leider immer nur den ersten Ast bearbeiten.

Vielen Dank im Voraus
BAMatze

BAMatze 28. Okt 2008 08:40

Re: nochmal zu TreeView
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anhang vergessen, hiermit nachgereicht

alzaimar 28. Okt 2008 09:46

Re: nochmal zu TreeView
 
Die 'Items'-Eigenschaft einer Treeview zählt die einzelnen Knoten auf, ohne auf die Ebenen einzugehen. Du müsstest eine entsprechende Funktionalität selbst implementieren: Eine gute Übung in Punkto Rekursivität.

Tyrael Y. 28. Okt 2008 09:56

Re: nochmal zu TreeView
 
Ein Stichwort, um auf die richtige Ebene zu gelangen wäre "Level".

Level = 0 ist die oberste Ebene
Level = 1 jeder Node unter 0
usw.

Du musst dir mal alle Eiegnschaften von folgenden Klassen anschauen,
sie werden alle für dich wichtig werden.

- TTreeView
- TTreeNodes
- TTreeNode

Delphi-Quellcode:
  TreeView.Items[i].Level


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