在鼠标钩子的WM_LBUTTONDOWN消息中,我想获得鼠标点击瞬间的坐标。注意,是鼠标点击瞬间。
我现在知道有两种方法
1、GET_X_LPARAM(lparam)和GET_Y_LPARAM(lparam).
这种方法获取的是相对于钩子的鼠标坐标,但是钩子不像窗体,没有自己的坐标吧。我获取到的坐标要么很大,要么是负数。。。然后我尝试用钩子句柄来转换,ClientToScreen((HWND)hMouseHook, &pt)。得到的pt值也不是鼠标的屏幕坐标啊。
2、GetCursorPos
我现在用的临时方法就是这个。不过这里有一个问题。这个不是鼠标点击瞬间的坐标,而是我执行GetCursorPos时候,鼠标的坐标。由于我代码中,点击完会移动鼠标到指定的位置。所以获取的坐标时而准确,时而不准确。
请大牛赐教啊!!!