如何将 HWND 的位图 X, Y 转换为鼠标事件 dX, dY?

How to Convert HWND's Bitmap'd X, Y into a Mouse Event dX, dY?

本文关键字:鼠标 事件 dX dY 转换 HWND 位图      更新时间:2023-10-16

我正在处理一批图像并扫描它们的像素模式。我可以让程序与SetCursorPos()一起工作,它工作得很完美,但我正在调整技术来实时动态馈送。SerCursorPos()不能处理这个窗口,但是mouse_event可以。

我的问题:很容易将位图的X,Y传递给SetCursorPos,我尝试了一些公式来转换并为mouse_event提供X,Y到dX和dY,但它们似乎偏离了70-100坐标或像素。例如,我尝试使用HWND的RECT作为基础的宽度和高度适用于65535;但这行不通。我应该使用窗口的GetSystemMetric吗?任何帮助都会很感激。我应该使用DirectX替代方案吗?

至少如果我明白你在问什么,听起来你在寻找ClientToScreen(并可能对客户区内位图的位置进行一些补偿)。