我正在尝试检测鼠标移动事件并使用sf :: RenderWindow pollEvent方法将其移回屏幕中间并检测事件类型sf :: Event :: MousePressed。问题是,当我正在检测鼠标移动时,我需要将鼠标移回屏幕中间并为此使用sf :: Mouse :: setPosition,但我认为(也许我错了)该函数本身调用sf :: Event :: MouseMoved当它使用时,我担心它会创建一个无限循环。
我这样做的方式的例子:(我知道0,这不是中间它只是和exmaple)
while (app.pollEvent(Event))
{
if(Event.type == sf::Event::MouseMoved)
{
sf::Mouse::setPosition(0 , 0));
}
}
抱歉我的英语不好! 提前谢谢!
答案 0 :(得分:0)
请尝试使用app.SetCursorPosition(x, y);
。
另外,我会跳过对事件的检查,因为你会希望光标无论如何都要在每帧结尾的中间结束。