【发布时间】:2021-12-11 04:51:17
【问题描述】:
尝试开始一个新的 pygame 项目。很基础的东西。只是想给屏幕上色。当前屏幕打开,并变白。控制台中没有错误。 这是我的代码:
import sys
import pygame
from settings import Settings
def run_game():
pygame.init()
ai_settings = Settings()
screen = pygame.display.set_mode((ai_settings.screen_width, ai_settings.screen_height))
pygame.display.set_caption("Alien Invasion")
while True:
screen.fill((0,255,0))
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
pygame.display.flip() # same result with .update
run_game()
如果它只是显示一个绿屏,我会很高兴。任何想法我的问题可能是什么?
【问题讨论】:
-
您的程序将永远无法通过
for循环。您需要将flip调用放在循环之前。 -
@TimRoberts 应该不会触发任何事件,我也移动了它,但它仍然没有将屏幕变为绿色
-
@TimRoberts 不,这不是真的。这是一个很好的应用程序循环,就像在任何教程中一样。
pygame.event.get()正在返回当前队列中的事件列表并清除队列。 -
问题不在于你的代码,而在于你的系统。
-
你用的是什么版本的pygame?您是否尝试更新 pygame?当前版本是 2.1.0。更新为
pip3 install pygame --upgrade。