2011-02-26 116 views
2

我看了看。每发现一个问题,都会被告知调用pygame.init() 当提问者说他​​们已经这样做了,就没有更多的回复。 我试过了我能想到的一切,没有任何工作。错误:视频系统未初始化;有解决方案吗?

回溯(最近通话最后一个): 文件 “C:\ Python26 \ TWC \ main.py”,线路183,在 为电子商务在pygame.event.get(): 错误:视频系统未初始化

我进口的情况下有冲突:

#imports 
import os, sys 
import pygame 
from pygame.locals import * 

这里就是我打电话pygame.init(),只是为了证明我:

#initialize 
os.environ["SDL_VIDEO_CENTERED"] = "1" 
pygame.init() 

#setup display 
pygame.display.set_caption("TwC V%s" % version) 
screen = pygame.display.set_mode((320, 240)) 

最后,下面是引发错误的行区域:

while running: 

    clock.tick(60) 

    for e in pygame.event.get(): 
     if e.type == pygame.QUIT: 
      running = False 
     if e.type == pygame.KEYDOWN and e.key == pygame.K_ESCAPE: 
      running = False 

编辑: 删除部分代码导致错误只是导致另一部分会导致同样的错误,这样就意味着问题与pygame.init() 我想只是废除整个事情,并重做它。这不需要很长时间。

+0

如果您没有适当的事件队列,代码是否工作?如果在事件处理for-loop注释掉的情况下运行程序,是否会弹出一个窗口为320x240? – gpcz 2011-02-26 18:07:04

+0

没有。 pygame.init()似乎是实际的问题。 回溯(最近通话最后一个): 文件 “C:\ Python26 \ TWC \ main.py”,线路126,在 类块(pygame.sprite.Sprite): 文件“C:\ Python26 \ TwC \ main.py“,第133行,在块 (32,0,16,16)])#grass - 3 文件”C:\ Python26 \ TwC \ main.py“,第59行,在imgsat imgsat .append(self.imgat(rect,colorkey)) img =img = pygame.Surface(rect.size).convert() 错误:文件“C:\ Python26 \ TwC \ main.py”无法转换没有pygame.display初始化 – user551717 2011-02-26 18:46:32

+0

你是如何运行该程序。形式追溯,我可以看到你正在运行窗口。 Pygame(和显示器)是否在闲置的外壳上工作?你有没有尝试从DOS shell中设置它?你有没有尝试将文件保存为.pyw而不是.py? – jsbueno 2011-02-26 23:20:30

回答

1

非常简单的修复方法是确保程序pygame.quit()中最后一行代码不缩进。错误会使它看起来像你的代码中的早期行... ....大约15分钟欺骗了我。

相关问题