c++ - 窗口出现奇怪的 SFML 错误

标签 c++ window sfml

我正在学习 SFML 的基础知识(足以制作一个基本的乒乓球游戏),但我总是在窗口中遇到这个奇怪的错误。当窗口启动时,有时它有一个黑色背景(如预期的那样),但大约 50% 的时间它看起来像是启动时窗口后面的内容。我在编译时没有收到任何错误。

这是我认为引起问题的部分代码:

//Game loop
while(window.isOpen()){
    sf::Event Event;


    while(window.pollEvent(Event)){

        //Getting input
        switch(Event.type){
        case sf::Event::Closed:
            window.close();
        break;

        case sf::Event::KeyPressed:

            switch(Event.key.code){

            case sf::Keyboard::Right:
                std::cout << "Right Key Pressed" << std::endl;
            break;

            case sf::Keyboard::Left:
                std::cout << "Left Key Pressed" << std::endl;
            break;

            case sf::Keyboard::Up:
                std::cout << "Up key pressed" << std::endl;
            break;
            }

        break;
        }

    }
   window.display();
}
return 0;
}

这就是我制作窗口的方式:

sf::RenderWindow window(sf::VideoMode(screenWidth, screenHeight), "Pong!", sf::Style::Titlebar | sf::Style::Close);

我是否遗漏了一些非常明显的东西?

如果这有什么不同的话,我也将 Linux 与 xfce4 一起使用。

最佳答案

我不太明白你的问题,但你有没有尝试清除窗口?

添加“window.clear();”就在“window.display();”之前

关于c++ - 窗口出现奇怪的 SFML 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21946401/

相关文章:

c# - 如何获得窗口的位置?

c++ - GLEW/SFML 程序未在 MinGW 中编译 - "GLChar"无法识别

c++ - 当我在 C++/SFML 中按下鼠标按钮时如何绘制球

c++ - 使用 CryptSignHash 获取 PKCS#7 签名

c++ - 在c中访问越界数组

wpf - 解析结构图中的窗口或如何管理 WPF MVVM 中的多个窗口?

Javascript If 条件检查窗口加载

c++ - 传递参数为 `const` 的奇怪效果

c++ - 为什么std::make_shared无法使用已删除的运算符new编译类型?

c++ - (WMI) ExecMethod 输出参数 - 无论调用结果如何,ResultingSnapshot 都是 NULL,为什么?