首页 > 解决方案 > 我是否因为它在定义块内而弄乱了我的 pygame while 循环?

问题描述

我的代码

您好,我目前正在为班级做作业,似乎无法让我的代码正常工作。

此任务的目的是在屏幕上重复绘制矩形,每个矩形都比最后一个小 10 像素,并且相距 10 像素。它应该重复直到正方形太小。

是的,我知道 pygame 没有正确导入。这只是我个人电脑上的娱乐,我的实际代码是在学校。

我相信我在绘制矩形时做错了,因为错误显示“未定义矩形”。我是编码新手,所以这可能是一个很容易修复的非常简单的错误。

对于任何反馈,我们都表示感谢。谢谢!

以下是文本格式的代码:

import pygame
from pygame.locals import *

def drawSquares(window):
    # Create variables to keep track of size and position
    size = 100
    position = 0
    # Use a loop to draw squares until the size is too small
    while (size>0):
        pygame.draw.rect(window,(0,0,255),position, position, size, size)
        size -= 10
        position += size+10

标签: pythonpygame

解决方案


的最后一个参数pygame.draw.rect是一个包含 4 个组件(x, y, width, height)的元组:

pygame.draw.rect(window,(0,0,255), position, position, size, size)

pygame.draw.rect(window,(0,0,255), (position, position, size, size))

推荐阅读