Python 在pygame中更改背景

Python 在pygame中更改背景,python,pygame,Python,Pygame,由于某些原因,按下空格键时,我的背景不会改变,游戏也不会启动。我没有收到任何错误,只是程序工作不正常。请帮忙 def main(): title = games.load_image("contratitle.bmp",transparent = False) games.screen.background = title cursor = Cursor() games.screen.add(cursor) xd = 0 if games.keyb

由于某些原因,按下空格键时,我的背景不会改变,游戏也不会启动。我没有收到任何错误,只是程序工作不正常。请帮忙

def main():
    title = games.load_image("contratitle.bmp",transparent = False)
    games.screen.background = title
    cursor = Cursor()
    games.screen.add(cursor)
    xd = 0
    if games.keyboard.is_pressed(games.K_q):
        xd = 1        
        while xd == 1:
            screen = games.load_image("jungle.bmp", transparent = False)
            games.screen.background = screen
            file2 = 'contra.mp3'
            pygame.mixer.music.load(file2)
            pygame.mixer.music.play()
            rizer = Rizer()
            games.screen.add(rizer)
            runner = Runner()
            games.screen.add(runner)
            shooter = Shooter()
            games.screen.add(shooter)
            spreadpower = Spreadp()
            #games.screen.add(spreadpower)
            rizerlives = Rizerlives()
            games.screen.add(rizerlives)
            rizerlivesa = Rizerlivesa()
            games.screen.add(rizerlivesa)
            #bean = Bean()
            #games.screen.add(bean)
    games.screen.mainloop()
main()
然后,我尝试使用pygame.display.update(),但也不起作用。我放错地方了吗

def main():
    screen = games.load_image("contratitle.bmp",transparent = False)
    games.screen.background = screen
    cursor = Cursor()
    games.screen.add(cursor)
    xd = 0
    if games.keyboard.is_pressed(games.K_SPACE):
        xd = 1
        while xd == 1:
            screen = games.load_image("jungle.bmp", transparent = False)
            games.screen.background = screen
            file2 = 'contra.mp3'
            pygame.mixer.music.load(file2)
            pygame.mixer.music.play()
            rizer = Rizer()
            games.screen.add(rizer)
            pygame.display.update()
    games.screen.mainloop()
main()

对于您的第7行代码:

if games.keyboard.is_pressed(games.K_q):
您似乎需要将其更改为:

if games.keyboard.is_pressed(games.K_SPACE):
有关PyGame游戏密钥的更多文档,请参阅以下链接:


我更改了它,光标现在消失了,但背景没有改变,游戏也没有像往常一样开始。@the Hawk我相信我知道你的问题所在。您需要在while循环期间更新显示。使用
pygame.display.update()
。我试过了,但没有成功。我已经更新了问题所在区域的代码。任何帮助都将不胜感激。