2

以下代码会引发错误:

while True:
    event = pygame.event.wait()
    if (event.type == ENDSONG):
            queue_song()

这就是它的内容:

  File "pygametest.py", line 22, in <module>
  event = pygame.event.wait()
  pygame.error: video system not initialized

我所做的大部分挖掘都说错误源于 pygame.init() 没有运行,但这就是我的代码的开始。

我还缺少其他东西吗?

编辑:添加代码。

import pygame
import time

def queue_song():
        print "Queueing New Song"

pygame.init()
pygame.mixer.init()
#rest of code
4

1 回答 1

2

即使你初始化了 Pygame,你也需要调用 todisplay.set_mode来避免这个错误:

pygame.init()
pygame.display.set_mode((width, height))
# rest of the code

发生这种情况是因为事件队列需要将视频模式设置为正常工作。从文档中:

输入队列严重依赖于 pygame 显示模块。如果显示器尚未初始化且未设置视频模式,则事件队列将无法真正工作。

于 2013-06-19T22:27:33.520 回答