本文介绍了Python:矩形参数无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
您好,我正在尝试学习 python,但我遇到了这个问题,当我运行我的程序时,它说 rect 参数无效,这是我的代码:
import pygamepygame.init()win = pygame.display.set_mode((500,500))pygame.display.set_caption("第一场比赛")x = 50y = 50宽度 = 40高度 = 60维尔 = 5运行=真运行时:pygame.time.delay(100)对于 pygame.event.get() 中的事件:如果 event.type == pygame.QUIT:运行 = 假pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel))pygame.display.update()pygame.quit()
错误:
<块引用>Traceback(最近一次调用最后一次):文件...",第 25 行,在 <module>pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel))TypeError: Rect 参数无效
解决方案
pygame.draw.rect
必须是一个包含 4 个元素的元组:
pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel))
pygame.draw.rect(win, (255, 0, 0),(x, y, width, height))
或者,它可以是 pygame.Rect
对象:
rect = pygame.Rect(x, y, width, height)pygame.draw.rect(win, (255, 0, 0), 矩形)
Hi I'm trying to learn python and but i'm stuck with this problem, when i run my program it says rect argument is invalid, this is my code:
import pygame
pygame.init()
win = pygame.display.set_mode((500,500))
pygame.display.set_caption("First game")
x = 50
y = 50
width = 40
height = 60
vel = 5
run = True
while run:
pygame.time.delay(100)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel))
pygame.display.update()
pygame.quit()
Error:
Traceback (most recent call last): File "...", line 25, in <module> pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel)) TypeError: Rect argument is invalid
解决方案
The 3rd argument of pygame.draw.rect
has to be a tuple with 4 elements:
pygame.draw.rect(win, (255, 0, 0),(x, y, width, height, vel))
pygame.draw.rect(win, (255, 0, 0),(x, y, width, height))
Alternatively it can be a pygame.Rect
object, too:
rect = pygame.Rect(x, y, width, height)
pygame.draw.rect(win, (255, 0, 0), rect)
这篇关于Python:矩形参数无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!