我试图在Tcl / Tk中打开一个简单的文件打开对话框,但是每当我运行tk_getOpenFile
时,都会出现以下错误:
invalid command name "::tk::dialog::file::"
while executing
"::tk::dialog::file:: open {*}$args"
(procedure "tk_getOpenFile" line 5)
invoked from within
"tk_getOpenFile"
(procedure "open" line 2)
invoked from within
...
我正在从Arch Linux存储库中运行最新版本的Tcl / Tk 8.6.9。可能是什么原因造成的?
答案 0 :(得分:2)
它似乎以某种方式损坏了安装。 tk_getOpenFile
中的过程…/tk.tcl
(其中…
是Tk库文件的安装位置)委托给::tk::dialog::file::
中的过程…/tkfbox.tcl
(是的,一个不寻常的过程名称),但在您的情况下似乎不起作用。文件丢失,或者同一目录中的tclIndex
文件损坏。 (这使用了一种旧的机制来自动加载代码,对于在新千年中使用新代码并没有多大用处……嗯,这是为了向后兼容。)