当我运行代码时,屏幕显示为黑色,直到将Pygame窗口从桌面窗口移开,然后它同时显示白色填充和红色矩形。如何使它仅显示填充而不将其从桌面屏幕上移开?

import pygame

pygame.init()
screen = pygame.display.set_mode((1200, 800))
run = True

def block(color, x, y, l, w):
    pygame.draw.rect(screen, color, pygame.Rect(x, y, l, w))

while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
    screen.fill((255, 255, 255))
    block((255, 0, 0), 150, 150, 50, 50)
    pygame.display.flip

最佳答案

最后一行pygame.display.flip不正确。该行应该是一个函数调用,但是相反,您只是引用函数对象,然后什么也不做。而是用pygame.display.flip()替换最后一行。

关于python - pygame填充直到将其移出屏幕才会更新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58906555/

10-12 12:39
查看更多