怎么实现用函数向Text控件insert自己设定的内容

sinat_33029743 2015-12-27 07:08:52
在Entry控件中可以使用StringVar()的trace方法传递或过去文本框的内容如:
def e_change():
evar.set('name1')
#evar.get() 获取文本框里的内容
from Tkinter import *
root = Tk()
evar = StringVar()
e = Entry(root,textvariable=evar)
e.pack()
e.trace('w',e_change)
root.mainloop()

但是Text控件最后输出的是变量名,如
def Tin():
Tvar.set("hello")
from Tkinter import *
root = Tk()
Tvar = StringVar()
t = Text(root)
t.insert(1.0,Tvar)
Tvar.trace('w',Tin)
t.pack()
root.mainloop()
最后输出的不是hello 而是变量名 哪位大神告知,感激不尽!
...全文
168 1 打赏 收藏 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
panghuhu250 2015-12-29
  • 打赏
  • 举报
回复
Text和Entry不一样, 不接受关联的Var. 你要自己去拿它的内容: text.get(1.0, END) # get content text.insert # insert content, strings like "hello" 另外, Tvar是StringVar对象, Tvar.get()才是它的内容, 应该用:
t.insert(1.0,Tvar.get())

37,737

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧