密钥绑定在tkinter中没有响应

时间:2017-09-09 10:12:15

标签: python tkinter binding tkinter-entry

我尝试将<Return>键事件绑定在两个Entry上,但验证码不起作用(没有显示错误,{{1 \ n}功能只是不适用)

这里是条目初始化:

validate

这里是支持将验证功能绑定到条目的代码:

from tkinter import *

fi = Tk()
l_n = Entry(fi)
l_t = Entry(fi)
b1 = Button(fi, cursor="hand2", overrelief=GROOVE, text="Run", command=someUnrelatedFunction, state=DISABLED)

最后,这里是打包和验证功能:

l_n.bind("<Return>",lambda name='l_n':validate(name))
l_t.bind("<Return>",lambda name='l_t':validate(name))

这里的问题是什么?

1 个答案:

答案 0 :(得分:1)

在tkinter中,当你进行绑定时,tkinter本身会为保存事件信息的回调添加另一个参数。因此,当您尝试使用lambda传递参数时,您也应该考虑这一点。

l_n.bind("<Return>", lambda event, name='l_n': validate(name))
l_t.bind("<Return>", lambda event, name='l_t': validate(name))