![]() |
Drag and Drop von Dateinamen
Hallo,
verzweifele gerade ein bisschen am Drag&Drop. Ich habe eine externe Anwendung in die ich Files von einem "hauseigenem" Format per Drag and Drop aus dem Explorer reinwerfen kann. Möchte nun ein Tool schreiben welches eine Directory in der mehrere dieser Bilder liegen ausliesst und in einem TImage darstellt. Das klappt. Nun möchte ich gern per Drag&Drop diesen "Filename" per Klick auf das Bild und Draggen aus meiner DelphiApp ins andere Programm ziehen. Wie "verpacke" ich diesen Filenamen in den Drag-Buffer ? |
AW: Drag and Drop von Dateinamen
Hallo,
ein weitere erfolgloser Tag ... Google gequält... Drag&Drop von irgendwas innerhalb eines Forms kein Problem. Files vom Explorer in die App auch nicht. Für beides gibts 100te Beispiele. Gehe ich überhaupt richtig in der Annahme das wenn ich Files vom Explorer so in die Anwendung schmeissen kann das ich das auch von meiner Delphi App aus kann wenn ich "so tue als ob ich einen File reindroppe" ? Aktuell versuche ich noch das hier zum laufen zu bekommen: ![]() Bekomme aber den Fehler E2044, Typen der tatsächlien und formalen Parameter sollten übereinstimmen:
Delphi-Quellcode:
So ist das leider mit Copy/Paste Code den man nicht rafft...
DoDragDrop(DataObject, Self, DROPEFFECT_COPY, Effect);
Gruss Calli |
AW: Drag and Drop von Dateinamen
Hallo Calli,
ich verwende für dem COM Drop die Drag and Drop Suite, damit hast Du dann beim Drop Zugriff auf den Dateinamen. ![]() LG Mirko |
AW: Drag and Drop von Dateinamen
Liste der Anhänge anzeigen (Anzahl: 1)
...es war einfach nur ein Typecast.
Anbei das Projekt als ZIP. Vieleicht kanns ja der eine oder andere gebrauchen. Gruss Calli |
AW: Drag and Drop von Dateinamen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo calibra,
ich habe Deine Sourcen gut nutzen können, vielen Dank für die Anregung. Habe das Ganze in eine fix einbindbare Unit mit schmaler Schnittstelle gegossen:
Delphi-Quellcode:
function DragDropToExtern( const DragDir: string; const DragFiles: TStringDynArray; OnBeforeDrop: TFunc<boolean> = nil ): boolean;
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:37 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