我试图在ubuntu12.04上使用Eclipse中的GTK+ 2.7.1构建一个PyDev应用程序。但是Python找不到类gobject.GObject。我安装了我能找到的任何gobject库,并尝试了几个外部库路径,如在这些post pydev issue with gobject和How to resolve these unresolved imports in PyDev ( eclipse )?中提到的。
但到目前为止一切都奏效了。有人知道解决办法吗?
视麦
import pygtk
pygtk.require("2.0")
import gobject
class MyClass(gobject.GObject):
...进口
from gi.repository import GObject不起作用了。
我还在Eclipse中将gtk-2.0、gi和gobject模块所在的/usr/lib/pyshared/python2.7添加到我的PYTHONPATH中,但没有什么不同。
我也在解释器中添加了一个强制的gi内置,但没有效果。
这里报告了一个http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=649861错误,但它也是从pygobject 3.0.2-4开始解决的。我的版本是3.2.2-1
导入用于在PyDev和终端中执行的测试脚本:
from gi.repository import GObject, Gtk
class Test(GObject.GObject):
def __init__(self):
GObject.GObject.__init__(self)
print ("test")
def main(self):
print ("Import has worked")
print (__name__)
if __name__ == '__main__':
test = Test()
test.main()当我将其应用于类MyClass(GObject.GObject)时,会得到以下错误:
ImportError:无法导入gobject (错误是:ImportError(‘在使用gi.repository时,不能导入诸如"gobject“这样的静态模块。请将所有出现的”导入gobject“更改为”从gi.repository导入GObject“)。
没有import gobject,只有from gi.repository import GObject。
发布于 2013-01-15 15:47:08
我终于找到了。
import gobject
class MyClass(gobject.GObject):
def __init__(self, channelstrip, name, s_type, mainWin):
gobject.GObject.__init__(self)https://stackoverflow.com/questions/14180879
复制相似问题