首页 > 解决方案 > 将输入和输出重定向到 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 ...?"

是否有类似的方法让文本小部件能够显示输入提示、接受输入并显示输出?

标签: pythontkinter

解决方案


是否有类似的方法让文本小部件能够显示输入提示、接受输入并显示输出?

不,没有办法自动将文本小部件用作标准输入。您必须编写代码来检测回车,然后从提示符开始到行尾获取数据。


推荐阅读