python - PyGame 绘制一个空白窗口直到退出
问题描述
这是我的代码:
import pygame
pygame.init()
screen = pygame.display.set_mode((200,200))
clock = pygame.time.Clock()
while True:
color = (100,100,200)
screen.fill(color)
pygame.display.flip()
clock.tick(60)
我认为这应该创建一个 200x200 的窗口并用 RGB 颜色(100,100,200)填充它。取而代之的是,它会创建一个空白的 200x200 窗口。当我 control-c 退出时,窗口会闪烁一两帧的正确颜色,然后关闭。为什么是这样?
解决方案
感谢 PyGame Discord 服务器上的 Siliconwolf,答案如下:
如果您不使用 处理 PyGame 事件pygame.event.get()
,则必须pygame.event.pump()
在循环开始时使用,否则窗口将冻结。但是,pygame.event.get()
强烈首选,因为否则您可能会遇到关闭窗口的问题。
推荐阅读
- java - 这个 xml 文件的 jaxb 注释应该是什么?
- javascript - 如何在按钮单击jquery上增加数值
- javascript - 你如何手动热重载 Flutter
- c# - 如何从触发的 Action 中获取结果以便在包含方法中返回它?
- javascript - 如何使用 jquery 从选择标签中的选定选项中获取类名警报?
- python - 网址直接在 PyQt4 webview 中
- objective-c - 无响应期间的错误处理目标 C
- c++ - 从代码块中的不同项目调用函数
- firebase - Firebase 通过 curl 命令发送推送通知有效,但不是来自 firebase 控制台
- c# - 使用 C# 的自动映射器