Einzelnen Beitrag anzeigen

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, 07: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