标准输出到 tkinter GUI [英] stdout to tkinter GUI
本文介绍了标准输出到 tkinter GUI的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何将标准输出数据重定向到 tkinter 文本小部件?
How can I redirect stdout data to a tkinter Text widget?
推荐答案
您需要创建一个类文件类,其 write
方法改为写入 Tkinter 小部件,然后执行 sys.stdout = <你的新课程>
.请参阅这个问题.
You need to make a file-like class whose write
method writes to the Tkinter widget instead, and then do sys.stdout = <your new class>
. See this question.
示例(从链接复制):
class IORedirector(object):
'''A general class for redirecting I/O to this Text widget.'''
def __init__(self,text_area):
self.text_area = text_area
class StdoutRedirector(IORedirector):
'''A class for redirecting stdout to this Text widget.'''
def write(self,str):
self.text_area.write(str,False)
然后,在您的 Tkinter 小部件中:
and then, in your Tkinter widget:
# To start redirecting stdout:
import sys
sys.stdout = StdoutRedirector( self )
# (where self refers to the widget)
# To stop redirecting stdout:
sys.stdout = sys.__stdout__
这篇关于标准输出到 tkinter GUI的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文