2
我重写了窗口中处理Windows消息的WndProc
方法。为什么GET_X_LPARAM确实会在鼠标滚轮上返回绝对位置?
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
为了得到鼠标的位置,当我赶左键按下事件(WM_LBUTTONDOWN
)我使用下面的代码:
auto x = GET_X_LPARAM(lParam);
auto y = GET_Y_LPARAM(lParam);
这工作得很好。我能够在窗口上获得鼠标的相对位置。但是当我捕捉鼠标滚轮事件时(WM_MOUSEWHEEL
),我遇到了问题。在这种情况下,上面的宏看起来像是在我的屏幕中返回鼠标的绝对位置。
即使在鼠标滚轮事件中,我如何获得鼠标的相对位置?