我的.after命令遇到问题。它不是等待5秒,而是立即进入下一个功能。如何让它等待5秒钟?
def passwordmaking():
passmakingtext = ment1.get()
if passmakingtext == passmaking:
print ("pass")
sys.exit()
else :
label.configure(text = "Password isn't right, Bye")
label.after(5000, bye())
def bye():
sys.exit()
感谢您的帮助
答案 0 :(得分:1)
label.after(5000, bye())
错了;您首先致电bye()
,然后将致电label.after(arg1,arg2)
,arg2
为bye()
的返回值;但是,由于bye()
会导致您的计划失败,label.after
永远不会被调用。
你可能想要arg2
之类的东西代表一个在5000毫秒后调用的可调用函数;在这种情况下,请使用bye
而不是bye()
。一个是函数对象,另一个是调用它的结果。