GET_X_LPARAM永远不会返回负值

时间:2016-12-13 12:45:37

标签: windows

MSDN警告:

  

不要使用LOWORD或HIWORD宏来提取光标位置的x坐标和y坐标,因为这些宏在具有多个监视器的系统上返回不正确的结果。具有多个监视器的系统可以具有负x和y坐标,而LOWORD和HIWORD将坐标视为无符号数量。

所以我改为使用GET_X_LPARAM和GET_Y_LPARAM,但我的多监视器环境中从未得到负值,值总是相对于窗口的左上角,我如何模拟测试负值?我的操作系统是Win 10 x64,行为会改变吗?

1 个答案:

答案 0 :(得分:0)

您只能在主监视器左侧和/或上方的监视器上获得负值。这仅适用于WM_CONTEXTMENUWM_NC*消息,大多数其他非NC鼠标消息都与您的Windows客户端区域相关,而不是屏幕。

相关问题