Pygame错误:视频系统未初始化卡在游戏循环中

2024-04-18 20:56:37 发布

您现在位置:Python中文网/ 问答频道 /正文

好吧,我有一个蛇游戏,我用pygame做了它非常基本的工作,但我创建了一个登录程序,我需要运行游戏,每当我试图关闭游戏,我得到一个错误,看起来像这样,当我试图把系统出口()在游戏机退出()在snake代码中,我的登录程序关闭运行一个空白的python窗口:

Traceback (most recent call last):
  File "C:\Users\test\Desktop\Summative\LukaLogin.py", line 119, in Snake
    snake = snakeSummative.main()        
  File "C:\Users\test\Desktop\Summative\snakeSummative.py", line 178, in main
    playAgain(final)
  File "C:\Users\test\Desktop\Summative\snakeSummative.py", line 161, in   playAgain
    for event in pygame.event.get():
pygame.error: video system not initialized 

蛇游戏:

^{pr2}$

调用snake游戏的登录定义:

class GameHub(QtGui.QMainWindow,Ui_GameHub):
    def __init__ (self):
        QtGui.QMainWindow.__init__(self)
        self.setupUi(self)
        self.play_BlackJack.clicked.connect(self.BlackJack)
        self.play_Snake.clicked.connect(self.Snake)
        self.play_Scores.clicked.connect(self.HighScores)
        self.play_Logout.clicked.connect(self.LogOut)
    def Snake(self):
        import snakeSummative
        snake = snakeSummative.main()  

任何帮助都将是一种特殊的,我真的困惑,为什么我得到错误,即使我打破了循环


Tags: intestself游戏playconnectpygameusers
2条回答

我想This也许能回答你的问题。在

确保在启动游戏程序之前已调用pygame.init()。在

您正在退出pygame,然后尝试再次使用它:

if event.key == pygame.K_q:
    pygame.quit()
    break

这会退出pygame,然后打破围绕它的while循环,然后在main()中再次调用函数,但这次pygame已经退出了。你需要打破外环,才能退出从未完成的游戏。在

^{pr2}$

我想这就是你想要的行为,希望这能有所帮助。在

相关问题 更多 >