Einzelnen Beitrag anzeigen

xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#6

Re: DragOver vom Explorer erkennen

  Alt 29. Okt 2006, 00:15
Hallo,
Zitat von Guido Eisenbeis:
Erstens:

Wie kann ich mehrere Controls an "ShellDroper" zuweisen? So dass z. B. Panel1 .. Panelx überwacht werden.
Dazu musst Du die Komponente etwas umbauen. Schau Dir mal die beiden Methoden "Enable" und "Disable" an. Dort wird das Control als DropTarget registriert bzw. abgemeldet. Wenn Du mehrere Controls hast, musst Du eben eine Liste verwalten. Vielleicht habe ich am Sonntag etwas Zeit, das Ganze umzuschreiben.
Zitat von Guido Eisenbeis:
Zweitens:

Mein Test-Programm enthält die Form1, darauf sind zwei Panels (Panel1 und Panel2). Panel1 habe ich der Komponente ("ShellDropper1") zur Designtime zugewiesen. Während der Ausführung des Test-Programms funktioniert alles ( "DragEnter", "DragOver" und "DragLeave"). Jedoch beim Beenden des Test-Programms wird folgende Exeption ausgelöst:
Das liegt daran, dass beim Zerstören der Komponente das Control wieder abgemeldet werden muss. Dazu wird das Handle des Controls verwendet. Wenn dieses aber schon zerstört wird, dann ist das Handle ungültig und der Aufruf schlägt fehl. Ich sehe mir das noch mal genauer an.

Gruß
xaromz
I am a leaf on the wind - watch how I soar
  Mit Zitat antworten Zitat