如题,网上找了很多都没找到合适的解决方法,看看论坛有没有大佬会的 GUI 代码如下:
from tkinter import * root = Tk() text = Text(root,width=200,height=150) text.pack()
希望实现像终端打印 Log 那样在 Text 控件上打印,已经试过重定向 sys.stderr,没啥效果,可能写的方式不对
1
给 text 绑定一个 varString()
修改 varString() 即可
你这个问题太简单了,让我怀疑我是 py 大佬
老哥,Text 控件没有 textvariable 选项
抱歉哈,好久没登录了。 你使用 tkinter 肯定是想做界面。 Text 如果没有属性的话,你可以绑给 Label,Label 组件具有这个属性 又或者你想用 Text 组件,那么 Text 组件有 Insert 方法
1 from tkinter import * 2 3 root = Tk() 4 text = Text(root,width=20,height=15) 5 text.pack() 6 text.insert(INSERT,"Python3 \n") #INSERT 索引表示插入光标当前的位置 7 text.insert(END,"python 算法") 8 mainloop()
也可以实现你的实时 log,具体怎么实现看你自己的意愿了
self.appValue = tk.StringVar() self.appValue.set('双击选择 app') appLabel = Label(self.master, textvariable=self.appValue) appLabel.pack(side=TOP, pady=10, expand=YES, fill=BOTH)
谢谢关注 已经控件实时读取文件的方式解决了,也可以重写 log 的 headler,将 log 中的 stderr 直接插入到控件中去实现
大佬,可以发出来解决结果吗?