这个问题很容易解决.您需要一个与屏幕大小相符的图像作为背景.请记住在游戏开始时添加pygame.init()以便能够启动它和它的能力.这张图片的功能可以像这样使用:
class Background(pygame.sprite.Sprite):
def __init__(self, image_file, location):
pygame.sprite.Sprite.__init__(self) #call Sprite initializer
self.image = pygame.image.load(image_file)
self.rect = self.image.get_rect()
self.rect.left, self.rect.top = location
这将允许程序在您调用它时通过此函数加载图像:
BackGround = Background('background_image.png', [0,0])
你还需要在while循环中使用这两行:
screen.fill([255, 255, 255])
screen.blit(BackGround.image, BackGround.rect)
这将使您的屏幕填满白色并将背景图像放在它上面,但在其他精灵和物体下面.
建议:
你应该为你的另一个精灵创建另一个类(可能是图像没有出现的原因).一个例子可能是:
class Ship(pygame.sprite.Sprite):
def __init__(self, image_file, speed, location):
pygame.sprite.Sprite.__init__(self)
self.image = pygame.image.load(image_file)
self.rect = self.image.get_rect()
self.rect.left, self.rect.top = location
然后你可以像这样“激活”它:
ship = Ship("images\ship.png", [a, b])
选择a和b的坐标.然后你可以像这样将图像blit到屏幕上但是在你的后台blit声明之后:
screen.blit(ship.image, ship.rect)
我希望这可以帮助你!