为什么矩形不移动?

问题描述

我没有收到任何错误,但它不起作用。我尝试了很多东西,但它从来没有动过。我什至有时会复制准备好的脚本,但它们也没有移动。请解释我做错了什么。从现在开始谢谢。

import pygame
pygame.init()

screen = pygame.display.set_mode((800,600))

red = 100
green = 100
blue = 100
top = 265
left = 365
width = 70
height = 70

pygame.draw.rect(screen,[red,green,blue],[left,top,width,height])

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    left += 0.1
    pygame.display.flip()

解决方法

实际上矩形确实会移动。但是,您必须在应用程序循环中绘制矩形:

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
    left += 0.1

    screen.fill(0) 
    pygame.draw.rect(screen,[red,green,blue],[left,top,width,height])
    pygame.display.flip()

典型的 PyGame 应用程序循环必须: