4

我知道要使用哪个功能,但我无法让它正常工作。我使用SetCursorPos()的唯一问题是它将光标设置为不是窗口坐标而是屏幕坐标。我也试过了,ScreenToClient()但没有用。
这是我的代码:

pt.x=113;
pt.y=280;
ScreenToClient(hWnd, &pt);
SetCursorPos(pt.x, pt.y);

任何的想法?我用的是win32。我希望我提供了足够的信息。

4

1 回答 1

12

你正在稍微倒退。该SetCursorPos功能适用​​于屏幕坐标,您希望根据窗口/客户端坐标设置光标。为此,您需要从客户端映射到屏幕坐标。该功能ScreenToClient相反。你正在寻找的是ClientToScreen

例如:

ClientToScreen(hWnd, &pt);
SetCursorPos(pt.x,pt.y);

文档

于 2010-09-05T07:20:46.503 回答