Mausposition des gesamten Bildschirms rausbekommen?
-
hi,
wie kann ich rausbekommen wo sich meine maus gerade auf dem gesamten bildschirm befindet? also nicht das was ich von WM_MOUSEMOVE geliefert bekomme sondern die koordinate gemessen von der linken oberen ecke des bildschirms...
MFG Marcel
-
BOOL ClientToScreen( HWND hWnd, // handle to window LPPOINT lpPoint // screen coordinates );
-
Voll daneben, flenders!
POINT pt; GetCursorPos(&pt);
So, und dann stehen in pt die Mauskoordinaten (Screen-Koordinaten).
-
Das ist wohl eindeutig die elegantere Lösung, aber meine würde doch auch funktionieren, oder?
Also in WM_MOUSEMOVE die Koordinaten in einen POINT packen und damit dann die Funktion aufrufen
-
Die funktioniert ziemlich sicher.
Hat allerdings den Nachteil, dass WM_MOUSEMOVE nur gesendet wird, wenn die Maus über deinem Fenster ist. Okay, man kann SetCapture benutzen...
Aber dann braucht man keine dieser Lösungen. Man sollte nur beachten, dass WM_MOUSEMOVE in diesem fall auch negative Koordinaten liefern kann.
-
ok danke
-
*den thread ausgrab*
wie bekomm ich das jetzt hin NUR zu prüfen wo sich die Mausbefindet wenn sie sich wirklich bewegt hat?!
-> weil mit einem timer ist das nicht so toll..
-> und WM_MOUSEMOVE geht ja nur im fenster...
-
Mit Hook sollte sowas auch möglich sein