Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Drag&Drop mit Explorer (https://www.delphipraxis.net/135704-drag-drop-mit-explorer.html)

Willie1 16. Jun 2009 11:32


Drag&Drop mit Explorer
 
Hallo Leute,
in einem älteren Projekt noch mit Delphi 6 unter Win 98 hatte ich Drag&Drop der Pfad-Dateinamen vom Explorer in eine ListBox
realisiert.
Ich habe das Projekt nun nach Delphi 2005/6 portiert (Vista) und Drag&Drop funkioniert nicht. Im SwissDelphiCenter habe ich ein
schönes Demo-Prg gefunden, als Stand-Alone funktioniert es, aber sobald ich es als zusätzliches Fenster in mein eigenes Prg
einbinde (statisch/dynamisch) klappt es nicht. Woran kann das liegen, habe ich irgentein neues Property übersehen?

MfG
Willie

wicht 16. Jun 2009 11:43

Re: Drag&Drop mit Explorer
 
Ich bin kein Drag & Drop Profi, deine Problembeschreibung ist eventuell auch etwas unspezifisch, aber ich möchte mal auf http://melander.dk/delphi/dragdrop/ verweisen. Das funktioniert unter Vista mit der neusten Version top und man hat sehr viele Möglichkeiten damit. Ich benutze die Beta, keine Probleme.

Willie1 17. Jun 2009 19:08

Re: Drag&Drop mit Explorer
 
Hallo Leute,
im Forum tut sich ja nicht viel, so habe ich nochmal selbst intensiv nach der Ursache gesucht und es herausgefunden. Der folgende
Code
Delphi-Quellcode:
OldLBWindowProc := ListBox1.WindowProc;
ListBox1.WindowProc := LBWindowProc;
DragAcceptFiles(ListBox1.Handle, true)
darf nicht in OnCreate sondern muss in OnActivate stehen. Nachdem ich es jetzt weiß, ist es ja irgentwie logisch, aber immerhin
hat es mit D6 unter Win 98 auch anders funktioniert. Fazit: mal wieder einen Unterschied zwischen Nicht-NT- (W98) und NT-Systemen
(Vista) entdeckt!

MfG
Willie

himitsu 17. Jun 2009 19:23

Re: Drag&Drop mit Explorer
 
Es kann aber auch einfach nur sein, daß die nötigen Fenster(handle) noch nicht existieren (in der VCL existiert nicht alles sofort, wenn man es erstellt).

Man könnte ja mal testen was passiert, wenn man vorher im OnCreate die Handle/Erstellung erzwingt.

toms 17. Jun 2009 19:38

Re: Drag&Drop mit Explorer
 
Zitat:

Zitat von Willie1
, aber sobald ich es als zusätzliches Fenster in mein eigenes Prg
einbinde (statisch/dynamisch) klappt es nicht.

Bei mir funktioniert es (D6 & D2009, Vista)
Was verstehst du unter "zusätzliches Fenster"?

Willie1 18. Jun 2009 07:33

Re: Drag&Drop mit Explorer
 
Ich meine einfach, aus einer Anwendung heraus mit ShowModal ein Fenster zu öffnen. Es macht ja Sinn, das die Zulassung von D&D erst mit dem Aktivieren des Fensters möglich ist. Bei mir klappt es jetzt auch, wie beschrieben. Wie gesagt, es gab keine Fehlermeldung nur D&D funktionierte nicht.

W.


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