C ++ SFML鼠标移动

时间:2012-06-24 09:13:35

标签: c++ sfml

我正在尝试检测鼠标移动事件并使用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));
        }
}

抱歉我的英语不好! 提前谢谢!

1 个答案:

答案 0 :(得分:0)

请尝试使用app.SetCursorPosition(x, y);

另外,我会跳过对事件的检查,因为你会希望光标无论如何都要在每帧结尾的中间结束。