【问题标题】:c++ win32 set cursor positionc++ win32设置光标位置
【发布时间】:2010-09-05 07:13:31
【问题描述】:

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

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

有什么想法吗? 我用的是win32。我希望我提供了足够的信息。

【问题讨论】:

    标签: c++ winapi visual-c++ mouse-cursor


    【解决方案1】:

    您正在稍微倒退。 SetCursorPos 函数在屏幕坐标中工作,您希望根据窗口/客户端坐标设置光标。为此,您需要从客户端映射到屏幕坐标。函数ScreenToClient 则相反。你要找的是ClientToScreen

    例如:

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

    文档

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-13
      • 1970-01-01
      • 2022-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多