Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Shelltreeview + Drag Drop?? Pfad unter der Maus? (https://www.delphipraxis.net/35026-shelltreeview-drag-drop-pfad-unter-der-maus.html)

beatles 1. Dez 2004 16:24


Shelltreeview + Drag Drop?? Pfad unter der Maus?
 
Entweder es ist so simpel dass ich den Wald vor lauter Bäumen nicht sehe, oder es ist wirklich kompliziert.

Ich möchte gern Dateien mittels Drag & Drop aus einer Listview in in das ShellTreeView ziehen. Danach soll die Datei in den Ordner verschoben werden. Dazu muss ich aber den Pfad rausbekommen, welcher gerade unter der Maus ist. Das winzige was ich bisher rausbekommen habe ist, wie der Ordner heisst, aber nicht den Pfad. :gruebel:
Rekursiv durchsuchen lassen wäre unsinn, da man ja manchmal gleichnamige Ordner auf der Festplatte hat.

Wie kann man den Pfad im Shelltreeview des gewählten Order erhalten?


den Ordnernamen ermittle ich mit:


Delphi-Quellcode:
procedure TForm1.ShellTreeView1DragDrop(Sender, Source: TObject; X,
  Y: Integer);
begin
  showmessage( ShellTreeView1.DropTarget.Text);
end;
Danke im Voraus

omata 1. Dez 2004 19:03

Re: Shelltreeview + Drag Drop?? Pfad unter der Maus?
 
Moin,

versuch mal folgendes

Delphi-Quellcode:
procedure TForm.ShellTreeViewDragDrop(Sender, Source: TObject; X, Y: Integer);
var Node:TTreeNode;
begin
  Node:=ShellTreeView1.GetNodeAt(X, Y);
  if assigned(Node) and assigned(Node.Data) then
    showmessage(TShellFolder(Node.Data).PathName);
end;
MfG
Thorsten

beatles 1. Dez 2004 20:43

Re: Shelltreeview + Drag Drop?? Pfad unter der Maus?
 
Hallo Omata,
danke Dir, funktioniert einwandfrei.

:roll: hätte ich nur gleich gefragt, hätte ich mir Zeit gespart.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:58 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