Pygame screen.blit无法正常工作

时间:2015-08-16 18:00:30

标签: python pygame

在我用python / pygame创建的程序中,screen.blit不起作用。在我制作的所有其他程序中,screen.blit都能正常工作。

import requests

for page_number in range(1,total_pages):
    url = 'https://www.bbb.org/search/?type=category&input=' + keyword + '&filter=business&page=' + str(page_number)
    respData = requests.get(url).content
    business_address = re.findall(address_pattern,str(respData))
    address_list.extend(business_address)

1 个答案:

答案 0 :(得分:1)

有问题的错误是由屏幕变量分配给整数而不是pygame.Surface()对象引起的。也许你不小心在某处重写了变量?

从我能做的事情来看,你似乎也说明了blit的位置是一个完整的矩形而不是一个坐标。

当你这样做时:

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对象,我会发布链接到它的文档here

我希望这会有所帮助。 :)