0

屏幕无法填充,它说屏幕没有填充命令,我做错了什么?

import pygame
    
pygame.init()

screen = pygame.display
set_mode((0, 0))

white = (255, 255, 255)
Square =(0, 0, 0)

loop = True
while loop:
    screen.fill(white)
    pygame.draw.rect(screen, Square, pygame)Rect(100, 100, 200, 200)
    pygame.display.update()
4

1 回答 1

0

您的代码中有一些语法错误:

screen = pygame.display
set_mode((0, 0))

screen = pygame.display.set_mode((0, 0))

pygame.draw.rect(screen, Square, pygame)Rect(100, 100, 200, 200)

pygame.draw.rect(screen, Square, pygame.Rect(100, 100, 200, 200))

不仅如此,还缺少事件循环。这可能会导致您的应用程序冻结。pygame.event.get()分别见pygame.event.pump()

对于游戏的每一帧,您都需要对事件队列进行某种调用。这确保您的程序可以在内部与操作系统的其余部分进行交互。

正确的程序:

import pygame
    
pygame.init()
screen = pygame.display.set_mode((640, 480))

white = (255, 255, 255)
Square = (0, 0, 0)

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

    screen.fill(white)
    pygame.draw.rect(screen, Square, pygame.Rect(100, 100, 200, 200))
    pygame.display.update()
于 2021-10-10T06:57:16.883 回答