图像在关闭窗口后出现?

0 投票
1 回答
627 浏览
提问于 2025-04-17 10:18
screen = pygame.display.set_mode([800,600])

pygame.display.set_caption("example")

background = pygame.Surface(screen.get_size())

background.fill(white)

clock = pygame.time.Clock()

background_image = pygame.image.load("example.jpg").convert()

background_position=[30,30]


done = False

while done == False:
    clock.tick(10)

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            done= True

screen.blit(background_image,background_position)

pygame.display.flip()

pygame.quit()

我一直在尝试在pygame中加载一张图片,这应该很简单。我好像让它工作了,但图片实际上并没有出现在主界面上,只是在我关闭窗口时出现了2秒钟。难道我在某个地方忘记了更新或者显示吗?谢谢!

1 个回答

2

试着把一些代码放到 while 循环里面:

while done == False:
    clock.tick(10)

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            done= True

    screen.blit(background_image,background_position)

    pygame.display.flip()

你的图像没有被画出来,因为你的程序一直在 while 循环里忙着,根本没有执行真正的绘图指令。当你用 quit 退出时,最后的三行代码才被执行,才显示出你的图像(不过只是一瞬间)。

撰写回答