【问题标题】:tkinter TclError: can't find package treectrltkinter TclError:找不到包 treectrl
【发布时间】:2015-08-09 16:26:11
【问题描述】:

如本教程所示,刚刚安装了 tktreectrl: https://www.youtube.com/watch?v=ddpYVA-7wq4 但是当我尝试运行我的程序时,我得到了这个错误。

Traceback (most recent call last):
File "E:/Python/Competition/Competition.py", line 36, in <module>
listbox = TkTreectrl.MultiListbox(window)
File "E:\Programs\Python\lib\site-packages\TkTreectrl\MultiListbox.py",line 50, in __init__
Treectrl.__init__(self, master, showroot=showroot, **kw)
File "E:\Programs\Python\lib\site-packages\TkTreectrl\Treectrl.py", line 489, in __init__
ver = master.tk.call('package', 'require', 'treectrl')
_tkinter.TclError: can't find package treectrl

关于我做错了什么有什么想法吗?

【问题讨论】:

    标签: python-3.x tkinter tcl tk python-module


    【解决方案1】:

    这可能不是一个详尽的答案,但它可能会有所帮助。

    这可能是因为你的tcl/tk版本不包含一个名为treectrl的子包,来自以下错误:

    _tkinter.TclError: can't find package treectrl
    

    您为tkinter 使用TkTreectrl 的包装库在某处有这样的声明:

    ver = master.tk.call('package', 'require', 'treectrl')
    

    这意味着您正在尝试从tk 导入包treectrl,但显然该包不存在。我的建议是检查您的 tcl/tk 版本,然后检查它是否包含 treectrl

    您可以使用以下命令(在 Python 3 上)检查您的 tcltk 版本:

    >>> import tkinter
    >>> tkinter.TkVersion
    8.5
    >>> tkinter.TclVersion
    8.5
    >>>
    

    如果treectrl 包包含在Tk 8.5 版中,也许可以通过以下链接查看:https://www.tcl.tk/man/tcl8.5/

    同样,如果您的 tcl/tk 版本与我的不同,您也可以这样做。

    我的猜测是,您需要首先安装 treectrl,这可能是您的 tcl/tk 分发版的 extension

    【讨论】:

      【解决方案2】:

      在 LINUX 中安装 TkTreectrl 时出现此错误。 这个问题发生在 TCL 找不到 treectrl 包。 要解决此问题,您必须找到 TCL 正在寻找 treectrl 包的路径。 使用以下行创建一个名为 test.tcl 的 TCL 文件。

      puts $tcl_pkgPath
      puts $auto_path
      

      在 LINUX 提示符下键入以下命令以运行代码并记下输出

      tclsh test.tcl
      

      在我的例子中,输出是

      /usr/lib64/tcl8.6
      

      我发现我的 treectrl2.4.1 目录在 /usr/lib 中,所以在 LINUX 提示符下,我输入了以下命令:

      cd /usr/lib
      cp -R treectrl2.4.1 /usr/lib64/tcl8.6/
      

      这解决了我的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-04
        • 2019-04-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多