Einzelnen Beitrag anzeigen

Caps

Registriert seit: 23. Mär 2006
Ort: Leipzig
299 Beiträge
 
#1

Mausposition relativ zum Fenster ermitteln

  Alt 18. Jan 2013, 13:50
Hallo,

ich versuche durch Auswertung der Nachricht WM_MOUSEMOVE die Mausposition relativ zum Fenster (Form) zu ermitteln. Das scheitert schon daran, dass in der Hilfe zu dem Thema steht "The coordinate is relative to the upper-left corner of the client area."

Die Client-Area ist bei mir aber nun irgendeine beliebige, unbekannte, dynamisch erzeugte oder statische VCL-Komponente, die erst zur Laufzeit bekannt ist, z.B. ein Button, Listbox, etc. auf einem Panel auf einem Panel auf einem Panel auf einem Panel etc.

Wie kann unter Auswertung welcher Message herausfinden, wie die Mausposition bezogen auf das gesamte Fenster (Form) ist? Ich versuche zu vermeiden, einen OnMouseOver-Ereignishandler zu verwenden, bitte dahingehend nicht unbedingt antworten, es muss ja auch mit Messages gehen ().

Vielen Dank schonmal, ich bin am Verzweifeln...

Anmerkung: Bei der Auswertung von WM_MOUSEMOVE zeigt sich genau das in der Hilfe beschriebene Verhalten: die X- und Y-Koordinaten sind auf die VCL-Komponente bezogen, über der die Maus sich gerade befindet. Das nützt mir aber nix, weil ich die auf die Form bezogenen Koordinaten brauche.

Kein Problem? Das dachte ich auch erst
Vielleicht übersehe ich aber auch das naheliegendste... hmpf

lg Caps
"Der Mode cmCFS8 ist prohibitär und von mir entwickelt."
  Mit Zitat antworten Zitat