【问题标题】:Python Gtk+ development in Linux using Eclipse + PyDev, Unresolved import: Gtk使用 Eclipse + PyDev 在 Linux 中进行 Python Gtk+ 开发,未解决的导入:Gtk
【发布时间】:2013-01-30 11:33:19
【问题描述】:

我刚刚尝试使用 Eclipse + PyDev 在 linux mint 中使用 python 编写我的第一个 Gtk+ 程序,但是我在 PyDev 中遇到了这个错误,未解决的导入:Gtk

程序源代码:http://python-gtk-3-tutorial.readthedocs.org/en/latest/introduction.html

from gi.repository import Gtk

win = Gtk.Window()
win.connect("delete-event", Gtk.main_quit)
win.show_all()
Gtk.main()

错误如下图:

程序可以运行。我在 PyDev 中检查了 PYTHONPATH,我认为是对的。

我该如何解决这个问题?

顺便问一下,您能否提供一些关于在 Linux 中用于 Python 和 Gtk+ 开发的免费 IDE 的建议?

【问题讨论】:

  • 它可以在常规 Python 控制台上运行吗?
  • @jadkik94 是的,它也可以通过python命令在终端中运行。
  • 从命令行导入Gtk 后查看Gtk.__path__ 是什么以及它是否在Pydev 的PYTHONPATH 中。
  • @jadkik94 Gtk.__path__ 是 /usr/lib/girepository-1.0/Gtk-3.0.typelib 我已经将 /usr/lib/girepository-1.0 添加到 PYTHONPATH 中,但没有解决这个问题。

标签: python linux eclipse gtk pydev


【解决方案1】:

转到 Window->Preferences 并将“gi”添加到“Forced Builtins”(参见屏幕截图)。
你应该试试Glade for GTK3 gui design(见截图)。
查看最终结果截图。
你也可以使用Sublime Text 3。

【讨论】:

  • 这应该是公认的答案,因为它实际上解决了问题并添加了代码完成。
【解决方案2】:

同样的问题:https://stackoverflow.com/a/11418828/1040891

在 Gtk+ 3 中,Python 绑定到二进制模块是动态生成的 使用 *.typelib 数据库。用于访问所有 模块位于 gi.repository。 PyCharm 无法检测到这些 使用其代码洞察力的模块,因为它们需要特殊处理。

注意:IPython 可以检测和处理这些模块

【讨论】:

  • 问题已解释,但未解决:gi.repository 模块需要什么“特殊处理”去除错误错误标记并启用 so 自动补全?
【解决方案3】:

您必须使用 Python 3.x。

Eclipse->Windows->Preferences->PyDev->Python Interpreter*->Advanced Auto-Config->/usr/share/python3.3**->Ok->Apply->Ok

*如果使用 Python,而不是 Jython 或 IronPython

**如果安装了Python 3.3,否则尝试python3,但我没有测试过。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-04
    • 2012-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    相关资源
    最近更新 更多