tkinter去图标化和延迟后撤回帧

时间:2019-07-12 10:45:24

标签: python tkinter

如果用户输入的日志不正确,则需要先在上面显示第二个窗口1秒钟,然后将其隐藏。但是现在我只是在按下按钮后冻结了全局1秒应用程序。 我该如何解决?谢谢!

我尝试了time.sleep和函数之后-同样的问题。

from tkinter import *


def check():
    login = login_entry.get()
    password = pass_entry.get()

    if login == "login" and password == "pass":
        root.destroy()
    else:
        wrong_frame.deiconify()
        wrong_frame.after(1000, wrong_frame.withdraw())


root = Tk()
root.overrideredirect(True)
root.geometry("{0}x{1}+0+0".format(root.winfo_screenwidth(), root.winfo_screenheight()))
root.focus_set()
root.bind("<Insert>", lambda e: root.quit())

login_entry = Entry()
login_entry.pack(side='top', expand='yes')
login_entry.focus_set()

pass_entry = Entry()
pass_entry.pack(side='top', expand='no')

button_enter = Button(text="Enter", command=check)
button_enter.pack(side='top', expand='yes')

wrong_frame = Tk()
wrong_frame.overrideredirect(True)
wrong_frame.geometry("{0}x{1}+0+0".format(wrong_frame.winfo_screenwidth(), wrong_frame.winfo_screenheight()))

wrong_label = Label(wrong_frame, text="Access Denied", fg='red')
wrong_label.pack(side='top', expand='yes')

wrong_frame.withdraw()

root.mainloop()

如果用户输入错误,我需要显示错误帧1秒钟。

0 个答案:

没有答案
相关问题