AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Treeview - child count eines nodes ermitteln

Ein Thema von Van HelF · begonnen am 29. Okt 2007 · letzter Beitrag vom 30. Okt 2007
Antwort Antwort
Van HelF

Registriert seit: 24. Okt 2005
Ort: Karlsbrunn
195 Beiträge
 
Delphi 7 Personal
 
#1

Treeview - child count eines nodes ermitteln

  Alt 29. Okt 2007, 19:23
hallo,
ich habe folgendes problem, ich möchte die anzahl der child einträge (nur eine ebene) eines treeview auslesen.

folgender code funktioniert, allerdings nur beim 1. item:
tv.item.item[0].count <- wert stimmt
tv.item.item[1].count <- wert stimmt nicht (immer 0)
  Mit Zitat antworten Zitat
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Treeview - child count eines nodes ermitteln

  Alt 29. Okt 2007, 23:03
Hallo Van HelF,

ich weis nicht ob ich es richtig verstanden habe, aber ich will es mal beschreiben wie ich es verstanden habe.

Gegeben ist ein TreeView mit folgendem Aufbau:

Code:
+Ebene1
 |     |
 |     -----Ebene11
 |     -----Ebene12
 |     -----Ebene13
 |
 +Ebene2
       |
       ----Ebene21
       ----Ebene22
       ----Ebene23
So, wenn ich die Frage jetzt ich richtig verstanden habe, willst Du jetzt die Anzahl ermitteln von Ebene11 – Ebene23, das heißt in dem Beispiel währe das Ergebnis 6.
Man kann mit der Eigenschaft Level von TTreeNode die Anzahl ermitteln.

In dem Beispiel wird der Text von Ebene11 - Ebene23 in eine Listbox ausgegeben.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Knoten: TTreeNode;
begin
  Knoten:= TreeView1.Items.GetFirstNode; // auf den ersten Knoten setzen.
  while Knoten <> NIL do
  begin
    if Knoten.Level=1 then
    begin
      Listbox1.Items.Add(Knoten.Text); // Es werden nur die Knoten auf der 2 Ebene ausgeben.
    end;
    Knoten:= Knoten.GetNext
  end;
end;
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
Benutzerbild von Garfield
Garfield

Registriert seit: 9. Jul 2004
Ort: Aken (Anhalt-Bitterfeld)
1.334 Beiträge
 
Delphi XE5 Professional
 
#3

Re: Treeview - child count eines nodes ermitteln

  Alt 30. Okt 2007, 16:49
Zitat von Van HelF:
folgender code funktioniert, allerdings nur beim 1. item:
tv.item.item[0].count <- wert stimmt
tv.item.item[1].count <- wert stimmt nicht (immer 0)
Bei meinem Delphi funktioniert beides nicht. Da wäre - um Deinen Variablennamen zu verwenden - tv.items[0] der erste Eintrag des Treeviews und tv.items[1] der zweite. Wenn tv.items[0] Childs besitzt wäre tv.items[1] das erste Child.
Gruss Garfield
Ubuntu 22.04: Laz2.2.2/FPC3.2.2 - VirtBox6.1+W10: D7PE, DXE5Prof
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Treeview - child count eines nodes ermitteln

  Alt 30. Okt 2007, 22:34
Hi,

schau mal in der Hilfe unter GetNextChild nach. Damit solltest du auch das Problem mit einer variablen "Ebene" in den Griff bekommen.

Du rufst zu deinem Knoten (der die Subknoten enthält) GetNextChild auf. ist der ungleich nil, so gibt es schon mal einen Subknoten. Dann kann deine while-Schleife mit abschließenden GetNext kommen. Ist das dann nil, hast du alle Subknoten(-Einträge).

Gruß oki
42
  Mit Zitat antworten Zitat
Antwort Antwort


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 12:12 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