Tkinter,在调用<key> binding </key>之前更新Entry小部件

时间:2013-07-29 15:21:10

标签: python tkinter

我有一个脚本,每次将密钥输入到tkinter.Entry小部件设置时都会更新:

self.entrySearch.bind("<Key>", self.updateSearch)

我遇到的问题是,在将密钥输入Entry小部件之前,已绑定到"<Key>"的方法已解决。这意味着当我调用self.entrySearch.get()时,我只会在最后一次击键之前获得条目框中的内容。

我尝试过简单地将字符添加到最后,但我想不出解决退格或删除的方法,或者在字符串中间输入字符。

基本上,我正在寻找的是一种允许在解析绑定之前更新输入框的方法。

感谢。

1 个答案:

答案 0 :(得分:0)

将条目绑定到variable。跟踪变量变化。

try:
    from Tkinter import *
except ImportError:
    from tkinter import *

def print_entry_value(*args):
    print(v.get())

root = Tk()
v = StringVar()
v.trace('w', print_entry_value)
e = Entry(root, textvariable=v)
e.pack()
root.mainloop()