Pygame 黑屏 - 不显示我写的内容

Pygame Black Screen - Won't Show What I've Written

我已经开始用 Pygame 编码,但每次我 运行 我的脚本时, Pygame window 看起来完全是黑色的,即使我已经用白色并在其上添加了蜘蛛图像。每次我退出 window 时,都会短暂出现白色背景和图像,然后 window 关闭。我在许多帮助网站上进行了搜索,所有这些网站似乎都对某个代码块得出了相同的结论,尽管我看不出我的代码块版本有什么问题。 这是整个代码:

import pygame

pygame.init()

display_width=800
display_height=600

black=(0,0,0)
white=255,255,255
red=(255,0,0)

gameDisplay=pygame.display.set_mode((display_width,display_height))
pygame.display.set_caption("Spider")
clock=pygame.time.Clock()

spiderImg=pygame.image.load("newspid.png")

def spider(x,y):
    gameDisplay.blit(spiderImg,(x,y))

x=(display_width*0.45)
y=(display_height*0.8)


Dead=False
while not Dead:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            Dead=True

gameDisplay.fill(white)
spider(x,y)

pygame.display.update()
clock.tick(60)

pygame.quit()
quit()

我正在谈论的代码块(似乎总是有问题的那个)是这样的:

Dead=False
while not dead:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            Dead=True

我不确定它是否有任何相关性,但任何建议都会有用。我现在对任何事情都非常绝望。谢谢

使用这个循环:

Dead=False
while not dead:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            Dead=True

您检查事件,直到收到 QUIT 事件。循环中断后,您 运行 以下代码:

gameDisplay.fill(white)
spider(x,y)

pygame.display.update()
clock.tick(60)

pygame.quit()
quit()

用白色填充屏幕并绘制图像,然后脚本结束。

你也想把绘图部分放到循环中:

Dead=False
while not Dead:
    for event in pygame.event.get():
        if event.type==pygame.QUIT:
            Dead=True

    gameDisplay.fill(white)
    spider(x,y)

    pygame.display.update()
    clock.tick(60)