如何解决pygame 视频系统未初始化
我不断收到此错误:“pygame.display.update() pygame.error: video system not initialized” 即使我初始化了所有 pygame 模块。有任何想法吗? 我使用的是最新版本的 pygame,python 3.8.5,我在 python shell 中运行程序,我的操作系统是 Windows。
import pygame,random
pygame.init()
win=pygame.display.set_mode((500,500))
clock=pygame.time.Clock()
loop=True
while loop:
clock.tick(25)
for event in pygame.event.get():
if event.type==pygame.MOUSEBUTTONDOWN:
if event.button==1:
pos=event.pos
pos=(round(pos[0]/SIDE),round(pos[1]/SIDE))
if event.type==pygame.QUIT:
loop=False
pygame.quit()
board.draw(win)
pygame.display.update()
解决方法
是否只有在退出程序时才会出现此错误?如果是,请将 pygame.quit()
移至文件的结尾。当您退出游戏时,您调用 pygame.quit()
,它会自动调用 pygame.display.quit()
,取消初始化视频 (pygame.display
) 系统。然后调用 pygame.display.update()
,这需要初始化视频系统。由于您已经取消初始化它,它会引发 video system not initialized
错误。
您的代码应如下所示:
while loop:
clock.tick(25)
for event in pygame.event.get():
if event.type==pygame.MOUSEBUTTONDOWN:
if event.button==1:
pos=event.pos
pos=(round(pos[0]/SIDE),round(pos[1]/SIDE))
if event.type==pygame.QUIT:
loop=False
board.draw(win)
pygame.display.update()
pygame.quit()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。