所以,我用OpenGL在C++中制作游戏,我希望我的光标停留在屏幕中间。C++ WinAPI - 马虎鼠标输入
在每一帧的开始我叫
POINT pt;
pt.x = 400;
pt.y = 300;
ClientToScreen(hWnd, &pt);
SetCursorPos(pt.x, pt.y);
然后,在WM_MOUSEMOVE事件我做
POINT p;
GetCursorPos(&p);
ScreenToClient(hWnd, &p);
dx = p.x - 400;
dy = p.y - 300;
窗口是800×600,所以我就写了这些数字,这将明显改变后来。
它的工作原理,但它很马虎。就像一些帧会被丢弃一样。
不要试图做到这一点。鼠标和它的光标是一个共享资源,它不适合单个应用程序重复移动它。如果你想要一个看起来像鼠标光标的东西出现在你的窗口中间,那么隐藏真实的光标并在你想要的位置绘制你想要的东西。 –
我想在窗口中包含光标,所以我可以在第一人称摄像机中使用移动参数来移动摄像机 – RobeeZ
您仍然可以执行将要说的操作。隐藏光标,但使用鼠标移动消息来操作相机。 – MikeD