AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Ich brauche Hilfe mit der Treeview und Node.level.
Thema durchsuchen
Ansicht
Themen-Optionen

Ich brauche Hilfe mit der Treeview und Node.level.

Ein Thema von Wishmaster · begonnen am 6. Feb 2007 · letzter Beitrag vom 7. Feb 2007
Antwort Antwort
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#1

Ich brauche Hilfe mit der Treeview und Node.level.

  Alt 6. Feb 2007, 01:10
Hi


Es geht darum den letzten Level bzw. Eintrag(index) einer Node rauszukriegen.

Beispielsweise wen ich den Node.Level 1 Selektiere, will ich wissen wie fiel Sub Levels dieser hat. Später will ich das ganze in eine schleife Verarbeiten.


Danke im voraus.
Miniaturansicht angehängter Grafiken
treeview_170.jpg  
  Mit Zitat antworten Zitat
Benutzerbild von chaosben
chaosben

Registriert seit: 27. Apr 2005
Ort: Görlitz
1.358 Beiträge
 
Delphi XE2 Professional
 
#2

Re: Ich brauche Hilfe mit der Treeview und Node.level.

  Alt 6. Feb 2007, 06:21
Hi!

Ich verstehe noch nicht ganz, worauf das hinauslaufen soll.
Willst du alle ChildNodes durchlaufen? Oder willst du nur alle ersten Kinder durchiterieren?
Benjamin Schwarze
If I have seen further it is by standing on the shoulders of Giants. (Isaac Newton)
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Ich brauche Hilfe mit der Treeview und Node.level.

  Alt 6. Feb 2007, 08:21
Guten Morgen,

auch ich habe leichte Verständnisschwierigkeiten. Die Anzahl der Sublevels heißt in Fachkreisen Höhe des Teilbaums und ein solcher Teilbaum wird durch seinen Wurzelknoten repräsentiert. Jeder Knoten ist Wurzel eines Teilbaumes, dessen Höhe so bestimmt werden kann:

Delphi-Quellcode:
function GetHeight(tn: TTreeNode): Integer;

  function MaxLevel(tn: TTreeNode): Integer;
  var
    i, level: Integer;
  begin
    Result := tn.Level;
    if tn.Count > 0 then
    begin
      for i := 0 to Pred(tn.Count) do
      begin
        level := MaxLevel(tn.Item[i]);
        if Result < level then
          Result := level;
      end
    end;
  end;

begin
  if Assigned(tn)
    then Result := MaxLevel(tn) - tn.Level
    else Result := -1;
end;
Den letzten child node eines Knoten erhältst du mittels node.GetLastChild(), seinen Level und Index über die gleichnamigen properties.

Grüße vom marabu
  Mit Zitat antworten Zitat
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#4

Re: Ich brauche Hilfe mit der Treeview und Node.level.

  Alt 7. Feb 2007, 04:08
Hi

@marabu danke für den Code das ist genau das was ich brauchte. War wohl en denkfeiler meinerseits.

Ich lade ne DB in eine TreeView die ich dann auch editieren kann, nur mit dem löschen hatte ich so meine Probleme.
  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 09: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