根据Entry值链接Tkinter标签

时间:2014-04-17 15:03:27

标签: python tkinter

有没有办法让Tkinter标签自动更新以反映Entry字段文本的变化?例如,如果条目具有文本“1”,则标签应该说“T1”,但如果用户将条目中的文本更改为“x”,则标签应该说“Tx”,而不必按下按钮。

1 个答案:

答案 0 :(得分:2)

是的,这是可能的。我能想到的最简单的方法是使用.trace的{​​{1}}方法,如果StringVar的值发生变化,则会调用函数。这是一个例子:

StringVar()

有关def change_label(*args): label.config(text='') # clear label label.config(text='T' + var.get()) # set new label text root = Tk() var = StringVar() # make the StringVar() label = Label(root) entry = Entry(root, textvariable=var) # set the textvariable to var var.trace('w', change_label) # trace var to monitor for changes, calling function on change label.pack() entry.pack() root.mainloop() 的更多信息:http://effbot.org/tkinterbook/variable.htm