User interface Tkinter显示终端输出
我正在使用Tkinter(Tk版本8.4)创建一个GUI,允许用户构建一个文本“输入”文件。该文本文件可由另一个程序读取,该程序进行计算,然后输出一个输出文件。我已经创建了一个菜单选项(使用OptionMenu小部件),通过单击“运行”选项从我的GUI运行计算程序。但是,为了确保计算正确并且程序运行正确,您需要密切关注终端。由于此GUI的目的是简化文本文件的构建和运行计算,因此在Tkinter GUI中的文本框或框架中显示终端的输出将非常有用 我搜索了又搜索,但我似乎找不到这个问题的好的、一般的答案。我只想在GUI中显示终端。我如何做到这一点(我假设它只需要几行代码)User interface Tkinter显示终端输出,user-interface,terminal,tkinter,output,User Interface,Terminal,Tkinter,Output,我正在使用Tkinter(Tk版本8.4)创建一个GUI,允许用户构建一个文本“输入”文件。该文本文件可由另一个程序读取,该程序进行计算,然后输出一个输出文件。我已经创建了一个菜单选项(使用OptionMenu小部件),通过单击“运行”选项从我的GUI运行计算程序。但是,为了确保计算正确并且程序运行正确,您需要密切关注终端。由于此GUI的目的是简化文本文件的构建和运行计算,因此在Tkinter GUI中的文本框或框架中显示终端的输出将非常有用 我搜索了又搜索,但我似乎找不到这个问题的好的、一般的
提前谢谢 您无法在程序中准确显示终端,但我认为这不是您真正想要的。听起来您只是想在GUI中显示命令的输出 你是如何计算的?你在用波本吗?如果是这样,您可以抓取程序的输出并将其插入文本小部件,如下所示:
p = sub.Popen('./script',stdout=sub.PIPE,stderr=sub.PIPE)
output, errors = p.communicate()
self.text.insert("end", output)
如果您使用线程或多处理,它会变得稍微复杂一些,但概念是一样的:以一种可以捕获输出的方式运行程序,然后在运行完成后将输出插入文本小部件。您无法在程序中准确显示终端,但我认为这不是您真正想要的。听起来您只是想在GUI中显示命令的输出 你是如何计算的?你在用波本吗?如果是这样,您可以抓取程序的输出并将其插入文本小部件,如下所示:
p = sub.Popen('./script',stdout=sub.PIPE,stderr=sub.PIPE)
output, errors = p.communicate()
self.text.insert("end", output)
如果使用线程或多处理,它会变得更复杂一些,但概念是一样的:以一种可以捕获输出的方式运行程序,然后在运行完成后将输出插入文本小部件中。嗯,我肯定不是专家,但让我试一试。 您可以将所有终端输出重定向到一个文件,例如
calculation.py>>text.txt
,或者将其包含在您的计算代码中,即:
while calculation: # <- your function
with open('text.txt', 'w') as f: # <- open a text file for ouput
f.write(<calculation output>) # <- keep writing the output
计算时:#嗯,我肯定不是专家,但让我试一试。
您可以将所有终端输出重定向到一个文件,例如calculation.py>>text.txt
,或者将其包含在您的计算代码中,即:
while calculation: # <- your function
with open('text.txt', 'w') as f: # <- open a text file for ouput
f.write(<calculation output>) # <- keep writing the output
计算时:#