AGB  ·  Datenschutz  ·  Impressum  







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

TreeView - Pfad zusammensetzen ?

Ein Thema von Blackheart · begonnen am 27. Okt 2006 · letzter Beitrag vom 29. Okt 2006
Antwort Antwort
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#1

TreeView - Pfad zusammensetzen ?

  Alt 27. Okt 2006, 18:50
Hallo Leute
Habe vollgendes Problem, Ich lese ein Verzeichnis in ein Treeview ein.
Jetzt möchte Ich durch je nachdem was Ich anklick den Pfad zusammensetzen.
Als bsp.

Code:
Ordner1
Ordner2 -
          Unterordner1
          Unterordner2 -
                         Unterordner21 -
                                         Datei1.txt
                                         Datei2.txt -
Der Pfad sollte dann so aussehen.
Ordner2\Unterordner2\Unterordner21\Datei2.txt

Ich hab ehrlich gesagt noch keinen Plan wie man das am besten angeht.
Den Entsprechenden Ordner krieg Ich mit Expanding und node.text,
die Datei mit TreeView.Selected.Text aber irgendwie müsste Ich ja alle Schritte
zwischenspeichern und da fällt Mir jetzt so recht nichts dazu ein.
Vieleicht könnt Ihr Mir etwas auf die Sprünge helfen.
Blackheart
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: TreeView - Pfad zusammensetzen ?

  Alt 27. Okt 2006, 19:20
Habe jetzt eine Idee - Das Treeview in eine Stringlist laden und die strings anhand TreeView.Selected.AbsoluteIndex aus der Stringlist hohlen.
Falls noch ein anderer ne Idee hat dann bitte posten.
Ich probiers erstmal.
Blackheart
  Mit Zitat antworten Zitat
marabu

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

Re: TreeView - Pfad zusammensetzen ?

  Alt 27. Okt 2006, 19:27
Hallo,

vielleicht hilft dir das hier:

Delphi-Quellcode:
function NodePath(node: TTreeNode): String;
begin
  Result := node.Text;
  if Assigned(node.Parent) then
    Result := NodePath(node.Parent) + ' \ ' + Result;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: TreeView - Pfad zusammensetzen ?

  Alt 27. Okt 2006, 20:19
Danke marabu genau das wars, wär Ich allein nicht drauf gekommen
dann spar Ich Mir das mit der Stringlist.
Arbeite zum ersten mal mit der TreeView und man findet da in der Hilfe nicht gerade viel oder eben nicht das was man gerade braucht.


Edit:

Naja etwas zu früh gefreut, das klappt ja soweit nur wenn Ich in der Liste wieder zurück gehe kommt ja ein ganz anderer Pfad herraus als Ich beabsichtigt hab.
Naja mal schaun vieleicht fällt Mir oder Euch ja nochwas ein.
Blackheart
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: TreeView - Pfad zusammensetzen ?

  Alt 27. Okt 2006, 22:35
anstelle der Recursion geht hier auch einfach eine While-Schleife die solange läuft bis das Node = nil ist und ansonsten vom Node den Parent holt und den Pfad ergänzt.
Delphi-Quellcode:
Pfad := '';
while Assigned(Node) do
begin
  Pfad := Node.Text + '\' + Pfad;
  Node := Node.Parent;
end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#6

Re: TreeView - Pfad zusammensetzen ?

  Alt 28. Okt 2006, 15:15
Hallo,
Zitat von Blackheart:
...Edit:

Naja etwas zu früh gefreut, das klappt ja soweit nur wenn Ich in der Liste wieder zurück gehe kommt ja ein ganz anderer Pfad herraus als Ich beabsichtigt hab.
Naja mal schaun vieleicht fällt Mir oder Euch ja nochwas ein.
Blackheart
kannst Du das mal genauer erklären, was heist:
"wenn Ich in der Liste wieder zurück gehe kommt ja ein ganz anderer Pfad herraus als Ich beabsichtigt hab"
?
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: TreeView - Pfad zusammensetzen ?

  Alt 29. Okt 2006, 07:38
Hatt sich erledigt, danke an alle die Mir geholfen haben.
Hier die Lösung für alle die dieses Problem auch mal haben.
Delphi-Quellcode:
Function GetTreeNodePath (aNode: TTreeNode; aDiv: String): String;
Begin
  If Assigned (aNode) Then
    If Assigned (aNode.Parent) Then
      GetTreeNodePath := GetTreeNodePath (aNode.Parent, aDiv) + aDiv + aNode.Text
    Else
      GetTreeNodePath := aNode.Text
  Else
    GetTreeNodePath := '';
End;

procedure TForm1.TreeChange(Sender: TObject; Node: TTreeNode);
begin
  Label3.Caption := GetTreeNodePath (Node, '\');
end;
Blackheart
  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 07:42 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