![]() |
Auslesen aus einem Strukturbaum
Hallo!
Wie bekomme ich es hin, dass die angeklickten Dateien und Ordner aus einem Strukturbaum/Gliederungsbaum, in einem EditFeld als vollständiger Pfad angezeigt werden? Wisst Ihr was ich meine? eleonora |
Ich nehme mal an Du willst wenn man eine Datei anklickt dann in Deiner Edit Feld erscheint ?
Wo klickst Du es an ? In Deinen Programm ? Oder in fremdem Programmen wie WinExplorer ? |
In meinem Programm!
|
Was verwendest Du um Dein Strukturbaum/Gliederungsbaum darzustellen ?
Weil so würde ich sagen: Edit1.text := SelectItem.Text oder so ähnlich habe jetzt kein Delphi zur Hand .. |
Moin Eleonora,
dazu musst Du Dich vom angelickten Knoten die Parents hochhangeln, bis es keinen Parent mehr gibt, und dabei den Ergebnisstring erzeugen. Beispielsweise so:
Delphi-Quellcode:
procedure TfrmMAIN.TreeView1Click(Sender: TObject);
var sPath : string; tnWork : TTreeNode; begin // Kein Node angeklickt, dann gibt's auch nichts zu tun if TreeView1.Selected = nil then exit; tnWork := TreeView1.Selected; sPath := ''; repeat sPath := tnWork.Text + '\' + sPath; tnWork := tnWork.Parent; until tnWork = nil; Edit1.Text := sPath; end; |
Hallo!
Sorry das ich erst so spät antworte, aber letzte Woche Freitag hatte ich Urlaub und dabei ganz vergessen, dass ich ja hier noch was gepostet hatte! Ich habe jetzt mal die verschiedenen Sachen ausprobiert, allerdings bringt er mir jedesmal ne Fehlermeldung! Könnte es daran liegen, dass ich keinen TreeView sondern einen VirtuelExplorerTreeview benutze? Also mein Code sieht jetzt folgendermassen aus:
Code:
Und die Fehlermeldung in Zeile 10 lautet:
[1]procedure Tpath.path_treeChange(Sender: TBaseVirtualTree;
[2] Node: PVirtualNode); [3] [4]var [5] sPath : string; [6] tnWork : PVirtualNode; [7] [8]begin [9] // Kein Node angeklickt, dann gibt's auch nichts zu tun [10] if path_tree.Selected = nil then exit; [11] tnWork := path_tree.Selected; [12] sPath := ''; [13] repeat [14] sPath := tnWork.Text + '\' + sPath; [15] tnWork := tnWork.Parent; [16] until tnWork = nil; [17] path_show.Text := sPath; [18]end; [Fehler] eraser_path.pas(96): '[' erwartet, aber '=' gefunden Das wäre jetzt eine von 3 Fehlermeldungen! Kann mir jemand dabei Helfen, denn ich komme absolut nicht weiter! Danke schon mal! Eleonora |
Moin Eleonora,
den von Dir genannten TreeView kenne ich leider nicht. Woher stammt der? Das Prinzip mit dem Hochhangeln dürfte sich m.E. allerdings nicht verändern. |
Hallo!
Ich habe jetzt einen anderen Weg gefunden um mir das anzeigen zu lassen!
Code:
Trotzdem Danke für die Hilfe!
path_show.Text := path_tree.SelectedPath;
Eleonora |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz