python - 将输入和输出重定向到 Tkinter 文本小部件
问题描述
我只能找到将设置字符串打印到文本小部件的修复程序,但是无论我如何尝试使用 sys.stdout 和其他方法,我都无法获得一个接受输入并提供输出的函数出现在文本框中。
我可以给一个按钮一个带有命令参数的函数,但这只会调用 IDE 中原始输出框中的函数。
我也试过
def set_text(function,entry):
entry.insert(END, function)
return
button1 = Button(root,command=lambda:set_text(get_seed(),entry)
但输入提示出现在IDE输出框中,当我输入值时,我收到以下错误消息:
Exception in Tkinter callback:
_tkinter.TclError: wrong # args: should be ".!frame2.!text insert index chars ?tagList chars tagList ...?"
是否有类似的方法让文本小部件能够显示输入提示、接受输入并显示输出?
解决方案
是否有类似的方法让文本小部件能够显示输入提示、接受输入并显示输出?
不,没有办法自动将文本小部件用作标准输入。您必须编写代码来检测回车,然后从提示符开始到行尾获取数据。