我是Direct2D编程的新手,我遇到了WM_MOUSEMOVE消息处理的问题。
如MSDN中所述,我应该使用这个枚举来处理鼠标移动,并且应该使用LOWORD& HIWORD提取当前的x和y坐标。
当我在正常显示器上工作时工作正常,但是当尝试在缩放显示器上运行它时(例如我的情况下为125%),x和y的值不准确,换句话说,有鼠标当前位置与从lparam中提取的值之间的“缩进”。
我想我应该查询操作系统或窗口以获得当前的缩放,这样我就可以计算出正确的位置,但不知道如何!
有什么帮助吗?
答案 0 :(得分:0)
您可以通过将程序声明为DPI识别来控制缩放。然后自动缩放将停止,您将获得原始坐标。你需要自己缩放窗口。