以下代码位抛出错误:
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
即使你初始化Pygame,你也需要调用display.set_mode
来避免这个错误:
pygame.init()
pygame.display.set_mode((width, height))
# rest of the code
发生这种情况是因为事件队列需要将视频模式设置为正常工作。来自文档:
输入队列严重依赖于pygame显示模块。如果未初始化显示和未设置视频模式,事件队列将无法真正工作。