首页 > 解决方案 > 为什么我的角色没有出现在我的 pygame 窗口中?

问题描述

所以我编写这个pygame只是为了测试我在这方面的知识,我正面临一个小问题。我的角色没有出现在 pygame 窗口上,除了当我按下 X 按钮关闭选项卡时,这是我迄今为止编写的代码。

import pygame
pygame.init
window = pygame.display.set_mode((700 , 700))
pygame.display.set_caption("practice")
#Character attributes
x = 50
y = 50
width = 30
height =30
velocity = 5
#quit
run = True
while run:
    pygame.time.delay(100)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

        pygame.draw.rect(window, (0, 0, 255), (x , y, width, height))
        pygame.display.update()


pygame.quit()

标签: pythonpygame

解决方案


当人们忘记在嵌套循环中正确缩进代码时,这是一个常见问题。这里的绘图仅在事件发生时发生,但应该在每一帧上完成。修复这个不缩进的渲染代码

while run:
    pygame.time.delay(100)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    pygame.draw.rect(window, (0, 0, 255), (x , y, width, height))
    pygame.display.update()

推荐阅读