Maus Position ermitteln
-
Nehmen wir mal an ich habe eine Schleife, die nicht in einer case wie "WM_LBUTTONDOWN" ist, sonder in eine Timer case. Nun möchte ich in dieser Timer case die momentanige Mausposition ermitteln!
Also so:
case WM_TIMER: { Point point = GetMousePos(); }
Aber wie könnte ich das machen, LPARAM hilft mir leide auch nicht weiter
-
Siehe mal hier:
POINT pMouse; GetCursorPos(&pMouse); // Du könntest auch die Position setzen: SetCursorPos(&pMouse);
Yo:
-
die curserporsion ist doch mit in der msg structur welche über die WinProc mit übergfeben wird dabei.. ist es da notwendig ne GetCurserPos mitzugeben?
-
int ptX = (short)LOWORD(lParam); int ptY = (short)HIWORD(lParam);
-
int ptX = (short)LOWORD(lParam); int ptY = (short)HIWORD(lParam);
es geht umd die WM_TIMER message... da wird via. lParam kein mausposition übergeben.. wie gesagt in der msg struktor ist die cur pos dabei:
typedef struct { HWND hwnd; UINT message; WPARAM wParam; LPARAM lParam; DWORD time; POINT pt; //<---- hier } MSG, *PMSG;
-
Hm falls sie da eh schon dabei ist, kannst ja einfach drauf zugreifen?
int x = msg.pt.x; int y = msg.pt.y;
-
Und das ist auch noch GetMessagePos zu nennen...