Python Pygame screen.blit不工作
在我用python/pygame创建的程序中,screen.blit不起作用。在我制作的所有其他程序中,screen.blit都起作用Python Pygame screen.blit不工作,python,pygame,Python,Pygame,在我用python/pygame创建的程序中,screen.blit不起作用。在我制作的所有其他程序中,screen.blit都起作用 Error: Traceback (most recent call last): File "C:...\Main.py", line 46, in <module> screen.blit(sight.image, sight.rect) AttributeError: 'int' object has no attribut
Error:
Traceback (most recent call last):
File "C:...\Main.py", line 46, in <module>
screen.blit(sight.image, sight.rect)
AttributeError: 'int' object has no attribute 'blit'
错误:
回溯(最近一次呼叫最后一次):
文件“C:…\Main.py”,第46行,在
screen.blit(sight.image,sight.rect)
AttributeError:“int”对象没有属性“blit”
问题中的错误是由于屏幕变量被分配给整数而不是pygame.Surface()对象造成的。可能是您不小心在某处重写了该变量
从我对你们所做的事情的理解来看,你们似乎也在说闪电的位置是一个完整的矩形,而不是一个坐标
当您这样做时:
screen.blit(sight.image,sight.rect)
节目看到的是:
screen.blit(sight.image,(sight.rect.x,sight.rect.y,sight.rect.width,sight.rect.height))
我猜你不打算这么做。请记住,rect对象由位置、宽度和高度组成
要更正代码,请将(sight.rect.x,sight.rect.y)放在位置处,如下所示:
screen.blit(sight.image,(sight.rect.x,sight.rect.y))
.x和.y对应于矩形在(x,y)像素平面中的左上角位置。然后,将在该位置闪烁瞄准图像
如果您想阅读pygame.Rect对象,我将发布到其文档的链接
我希望这有帮助。:) 这意味着您的屏幕变量是一个int。您可能重写了它的屏幕变量:screen=pygame.display.set_mode((600400),0,32),我的意思是稍后在程序中-在errormuddyfish正确之前将其打印出来。如果需要更多帮助,请向我们展示一些代码。