我注意到'gtk'没有定义,我无法弄清楚它是什么意思,尽管我在运行时管理导入PYGTK。以下是代码:
import sys
importStatus = False
try:
from gtk import *
importStatus = True
except ImportError:
print "PyGTK module does not exist. Can't launch GUI !"
print "Please download and install GTK and PyGTK."
importStatus = False
if importStatus:
class gtkGUI():
def __init__(self):
print "gtkGUI imported"
def startGUI(self):
print "GUI Started"
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
return None
以下是错误:
Traceback (most recent call last):
File "mainGUI.py", line 14, in <module>
gtk.startGUI()
File "..../gtkGUI.py", line 25, in startGUI
gtk.main()
NameError: global name 'gtk' is not defined
我该如何解决这个错误?感谢。
答案 0 :(得分:3)
您需要使用PyGTK在系统上安装GTK。通常你对PyGTK的导入看起来像这样:
import pygtk
pygtk.require('2.0')
import gtk
如果查看PyGTK downloads,您会看到对安装GTK +的引用。确保你这样做(我认为你应该在安装PyGTK之前做到这一点,完全正确)。
答案 1 :(得分:3)
gtk未定义,因为您实际上从未将其作为模块导入。您正在使用from gtk import *
将gtk模块的所有成员拉入当前命名空间,而不是整体导入模块。因此,在第25行中,您必须致电Window(WINDOW_TOPLEVEL)
而不是gtk.Window(gtk.WINDOW_TOPLEVEL)
。
我建议使用import gtk
而不是from gtk import *
。