0
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秒間しか表示されません。どこかでブリットまたは更新するのを忘れましたか? ありがとう!

4

1 に答える 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で終了すると、最後の3行が実行され、画像が表示されます(しばらくの間)。

于 2012-01-15T19:02:22.997 に答える