tkinter Entry组件中的问题
本帖最后由 乙方al 于 2022-8-21 14:01 编辑求助!
为什么当Entry的validate参数为'key',validatecommand返回False的时候,输入框就输入不了内容?
就比如下面这段代码,当在输入框中输入'aa'后,就输不动了,输入框一直显示'aa'
from tkinter import *
root = Tk()
def test():
if e.get() == 'aa':
return False
else:
return True
e = Entry(root, validate="key", validatecommand=test)
e.pack(padx=10, pady=10)
mainloop()
validatecommand=test
test 返回false说明你输入不合法,此时当然不能继续操作。
当前提问,我能告诉你的是让test返回true说明你输入合法,可以继续操作
test
return True
本帖最后由 qq1151985918 于 2022-8-21 23:07 编辑
from tkinter import *
root = Tk()
def test():
if e.get() == 'aa':
e.delete(0, "end")
e.config(validate="key")
return False
else:
return True
e = Entry(root, validate="key", validatecommand=test)
e.pack(padx=10, pady=10)
mainloop()
ba21 发表于 2022-8-21 21:46
validatecommand=test
test 返回false说明你输入不合法,此时当然不能继续操作。
当前提问,我能告诉你 ...
好吧!昨天我往后看了一下书,小甲鱼在书已经解释过了
可是帖子正在审核,原本想删了,可是不知道怎么删,最后到晚上才审核通过{:10_291:}
不过也同样感谢!
{:10_244:}
页:
[1]