Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi In Windowproc handle bekommen (https://www.delphipraxis.net/56465-windowproc-handle-bekommen.html)

DGL-luke 6. Nov 2005 11:37


In Windowproc handle bekommen
 
hallo, ich will auf mehrere TImage32 droppen und hab deshalb die wndprocs überschrieben. und zwar mit dieser prozedur:

Delphi-Quellcode:
procedure TMixer.NewWndProc(var Msg:TMessage);
var Image:TImage32;
    i,k:integer;
begin
 for i:= 0 to 5 do
  if Images[i].Handle = {???}
    k:=i
  else Exit;

 if Msg.message = WM_DROPFILES then
   handledrop(k);

OldwndProcs[k](m);
end;
kann ich hier irgendwo das handle des entsprechenden TImage32 rauskriegen? in TMsg wärs ja dabei, aber nicht in TMessage :|

Olli 6. Nov 2005 11:59

Re: In Windowproc handle bekommen
 
Was ist denn ein TImage32, gibt's in meinem Delphi nämlich nicht.

Wenn es sich um eine Klasse handelt, mußt du dich selber um einen Mechanismus zur Übergabe kümmern. Ansonsten klär mich auf was TImage32 ist.

DGL-luke 6. Nov 2005 12:01

Re: In Windowproc handle bekommen
 
verbesserte Kapselung von TImage, G32-Lib, www.g32.org .

ja, ist ne klasse.

Zitat:

Mechanismus zur Übergabe
hm... ich glaub dann überleg ich mir was mit dragquerypoint.

Olli 6. Nov 2005 12:08

Re: In Windowproc handle bekommen
 
Die VCL stellt dir keine Methoden für Drag&Drop zur Verfügung? Wenn doch, dann hättest du ja den "Sender".

DGL-luke 6. Nov 2005 12:17

Re: In Windowproc handle bekommen
 
ähm... also wenn du mir eine VCL-Methode sagst, mit der ich eine Datei aus dem explorer auf ein Control ziehen kann und per Event den dateinamen krieg, musst du mir nur noch deine Kontonummer schicken...

Ich hab mir auch schon gedacht, dass TImage32 evtl. so etwas implementiert, aber da is so ziemlich Sense... Ich hab mich aber auch mit den normalen VCL-Drag&Drop/Dock-Sachen noch nie auseinandergesetzt, ich glaube, die funktionieren auch nur innerhalb der Anwendung... :?:

Flocke 6. Nov 2005 12:30

Re: In Windowproc handle bekommen
 
Du wirst es wohl fünf mal hinschreiben müssen ... oder du bastelst dir eine Klasse dafür (hab ich mal hier gemacht).

SirThornberry 6. Nov 2005 12:35

Re: In Windowproc handle bekommen
 
Wenn TImage32 von TImage irgendwo abgeleitet wurde dann hat TImage32 kein Handle und kann dementsprechend kein wm_Dropfiles empfangen.

DGL-luke 6. Nov 2005 12:57

Re: In Windowproc handle bekommen
 
natürlich hat das ein handle, es ist nicht von TImage abgeleitet.... aber ich habs jetzt anders gelöst.

danke.

SirThornberry 6. Nov 2005 13:06

Re: In Windowproc handle bekommen
 
hmm, du überschreibst die WindowProc von TMixer, dementsprechend würdest du an dieser Stelle über TMsg auch nur das Handle der TMixerInstanz bekommen. Und das würdest du wenn TMixer ein Handle hat über Self.handle bekommen. Aber du willst ja aus irgend einem Grund auf irgend ein Handle von TImage32 testen.

DGL-luke 6. Nov 2005 13:59

Re: In Windowproc handle bekommen
 
ähm... ne, das ist nicht die wndproc von TMixer. das ist die (neu zugewiesene) wndproc von 5 TImage32-Kompos.

aber wie bereits gesagt: das problem hat sich erledigt, ich bin jetzt einen ganz anderen weg gegangen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr.
Seite 1 von 2  1 2      

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