我们遇到了与Tcl和Tk差异相关的问题。
我们使用tcltest框架为转移的xml数据提供了一个测试工具。
一般计划流程:
读入xml文件并生成DOM树(使用tdom)
运行测试(使用tcltest,测试生成日志输出,即设置包含相关信息的数组)
读取并处理记录信息
使用记录信息准备乳胶文件
使用pdflatex生成pdf
在新测试中,我们希望在文档中包含图形。因此,我们在测试设置中加载Tk,在画布上准备图形并将画布写入文件。这一切都可以在一个独立的测试程序中正常工作。
但是集成到我们观察到的应用程序中,执行测试并且程序在测试文件结束时没有错误地结束,但是从不返回主程序执行最后三个步骤。 如果应用程序的剩余代码源自测试文件,则程序继续正确执行。有人知道可能出现什么问题吗?
提前致谢 joachim
答案 0 :(得分:1)
当你加载Tk时,它会安装一个处理程序,它在脚本完成执行后运行事件循环。这是因为这是wish
计划至少工作20年的方式; Tcl(逻辑上)用于设置应用程序和处理回调。对于大多数GUI应用程序,这绝对没问题。在你的情况下没有。
一旦您完成了所需的输出,您应该在脚本的末尾添加一个明确的exit
。