Winapi 在多屏幕设置中隐藏鼠标光标
我试图使用win32 API ShowCursor(FALSE)隐藏鼠标光标,但是在多屏幕设置中,当鼠标到达另一个屏幕时,我在windows中没有得到任何鼠标更新,我是否可以阻止这种情况Winapi 在多屏幕设置中隐藏鼠标光标,winapi,cursor,mouse,fullscreen,Winapi,Cursor,Mouse,Fullscreen,我试图使用win32 API ShowCursor(FALSE)隐藏鼠标光标,但是在多屏幕设置中,当鼠标到达另一个屏幕时,我在windows中没有得到任何鼠标更新,我是否可以阻止这种情况 这是一款全屏视频游戏,我似乎找不到任何windows api可以做到这一点。据我所知,您的问题不在于隐藏鼠标光标,而在于将其限制在您的窗口中 在这种情况下,函数应该完成这项工作 { RECT windowRect; GetWindowRect(hWnd, &windowRect);
这是一款全屏视频游戏,我似乎找不到任何windows api可以做到这一点。据我所知,您的问题不在于隐藏鼠标光标,而在于将其限制在您的窗口中 在这种情况下,函数应该完成这项工作
{
RECT windowRect;
GetWindowRect(hWnd, &windowRect);
ClipCursor(&windowRect);
}
对于无边框的全屏窗口,只需执行一次即可。如果窗口的位置或大小发生变化或窗口失去焦点,则需要重复该步骤
对于游戏编程来说,可能有更好的方法,比如DirectInput,它提供了一种专用的鼠标操作模式(可用),并在较低级别上为您完成所有这些
例如,有一些关于不同处理方法的讨论
另一方面,如果您希望光标能够离开窗口,并且仅在光标位于窗口上方时将其隐藏,则应处理消息并使用隐藏光标
case WM_SETCURSOR:
SetCursor(NULL);
return TRUE;