【发布时间】:2015-03-01 08:40:15
【问题描述】:
这个问题类似于this other question。
当我在 Mac OS X 上运行以下代码时(在 Windows 上运行良好):
import Tix
root = Tix.Tk()
我收到以下错误消息:
Traceback(最近一次调用最后一次):文件“”,第 1 行,in 文件 "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk/Tix.py", 第 221 行,在 init self.tk.eval('package require Tix') _tkinter.TclError: 找不到包 Tix
Python 文档描述了issue,但下面的答案对我的情况没有帮助:
如果此操作失败,则您有一个 Tk 安装问题,必须在继续之前解决该问题。使用环境变量 TIX_LIBRARY 指向已安装的 Tix 库目录,并确保动态对象库(tix8183.dll 或 libtix8183.so)与包含 Tk 动态对象库(tk8183.dll 或 libtk8183)的目录相同。所以)。包含动态对象库的目录还应该有一个名为 pkgIndex.tcl(区分大小写)的文件,其中包含以下行:
package ifneeded Tix 8.1 [list load "[file join $dir tix8183.dll]" Tix]
如果有人遇到此错误并找到解决方法,请填写。
【问题讨论】:
-
如果您使用的是 Python 3.x(您没有说)那么这是正确的页面 docs.python.org/3.3/library/tkinter.tix.html
-
感谢 Curly Joe,无论如何,它都是相同的信息。我认为这不是 python 2.x 或 3.x 问题,而是 Tix 问题。
-
在文档中,在安装测试代码的正下方,有一段以
If this fails...开头的段落你试过这些步骤吗? -
嗨 Lafexios,是的,我试过了,不幸的是它不起作用,因为这些文件不存在。答案一定是为旧版本的 Tix 编写的。互联网上的其他人也尝试过,但都失败了。我正在寻找有人遇到同样问题并找到解决方法的解决方案。
-
"""谢谢 Curly Joe,无论如何,它都是相同的信息。我认为这不是 python 2.x 或 3.x 问题,而是 Tix 问题。""" -- 不是相同的信息;这就是我想说的。 Python 3.x 的导入方式不同。如果你需要一些帮助,至少发布 python 正在使用的版本=print(sys.version)