windows_programming_notes.nbk: Home | Index | Next Page: WM_MOUSEWHEEL | Previous Page: WM_MOUSELEAVE
The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the mouse.
A window receives this message through its WindowProc function.
LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // WM_MOUSEMOVE WPARAM wParam, // key indicators LPARAM lParam // horizontal and vertical position );
If an application processes this message, it should return zero.
Use the following code to obtain the horizontal and vertical position:
xPos = GET_X_LPARAM(lParam); yPos = GET_Y_LPARAM(lParam); You can also use the MAKEPOINTS macro to convert the lParam parameter to a POINTS structure.
Windows NT/2000 or later: Requires Windows NT 3.1 or later. Windows 95/98/Me: Requires Windows 95 or later. Header: Declared in Winuser.h; include Windows.h.
// // Process WM_MOUSEMOVE message for window/dialog: // void _OnMouseMove(HWND hwnd, int x, int y, UINT keyFlags) { // TODO: Add your message processing code here... } windowsx.h:#define HANDLE_WM_MOUSEMOVE(hwnd,wParam,lParam,fn) ((fn)((hwnd),(int)(short)LOWORD(lParam ),(int)(short)HIWORD(lParam),(UINT)(wParam)),0)
windows_programming_notes.nbk: Home | Index | Next Page: WM_MOUSEWHEEL | Previous Page: WM_MOUSELEAVE
Notebook exported on Monday, 7 July 2008, 18:56:50 PM Eastern Daylight Time