2014-05-01 35 views
2

我在运行Windows 8.我有一个名为“test.tcl”的文件。用Wish应用程序打开一个Tcl文件

  • 如果我打开一个shell,输入“wish”,然后打开2个窗口。在其中一个中,我可以输入Tcl代码并打开文件test.tcl。如果我打开这个文件,它的代码被执行。
  • 如果我双击test.tcl打开该文件与“愿望应用程序”,然后1个空白窗口打开,并没有任何反应。

你知道为什么吗?

+1

你确定什么都没有发生? test.tcl中的代码应该执行,并且在第二种情况下执行完成时窗口会出现。 – Jerry

+0

我测试过的代码是“放一个”。我没有看到“a”。 – Arnaud

+1

这是因为您看到的窗口不是'stdout'('puts'的默认输出通道)。尝试把东西创建一个文本文件,如'set f [open“output.txt”w];关闭$ f',你会看到一个文件出现,这意味着执行的代码。您可以在开始时打开文件,然后在关闭文件之前使用'puts $ f a'将所有内容放入该文件。你会看到该文件中的输出。 – Jerry

回答

2

在Windows上,愿望是建立一个唯一的GUI应用程序;它没有真正的标准输出。 Tk虽然给你一个假货,只是把这个在你的脚本,以显示假控制台:

console show 

假控制台默认情况下出现在你没有启动脚本文件,而是用一个脚本文件启动不显示它(所以你的脚本文件当然可以实现一个应用程序)。

这样才可以吸引人们时,他们产生大量的输出上stdout。 Tk很可能会保留所有内容以防万一代码在console show后面出现,尽管它看上去很像内存泄漏,如果你没有准备好它的话......

+1

鉴于“内存泄漏”的评论,是否有空间“控制台清除”或“控制台删除index1?index2?”命令? –

相关问题