Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.157 Beiträge
 
Delphi 12 Athens
 
#3

AW: TTreeview : Parent, Level etc.....

  Alt 20. Okt 2022, 10:45
Iterativ anstatt rekursiv ist eh oftmals angenehmer

Delphi-Quellcode:
function GetNodePath(aNode: TTreenode): string;
begin
  Result := '';
  while Assigned(aNode) do begin
    Result := aNode.Text + '\' + Result;
    aNode := aNode.Parent;
  end;
end;
bzw., wenn jemanden das erste \ stört ... könnte man auch mit IF/IfThen garnicht erst einfügen, anstatt nachträglich zu löschen, aber bin zu faul
Delphi-Quellcode:
  end;
  Delete(Result, Length(Result), 1); // oder SetLength(Result, Length(Result) - 1);
end;
oder halt
Delphi-Quellcode:
function GetNodePath(aNode: TTreenode): string;
begin
  Result := aNode.Text;
  aNode := aNode.Parent; // oder mit eigener lokaler Variable, anstatt aNode
  while Assigned(aNode) do begin
    Result := aNode.Text + '\' + Result;
    aNode := aNode.Parent;
  end;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat