Декстоп программа Пайтон зависает
изучаю библиотеку tkinter и решил написать небольшую программу на проверку пароля. У меня есть функция, которая сверяет пароль и делает разные действия в зависимости от того, что получилось, при введении верного пароля программа работает как надо, но при внесении неверного пароля, программа просто зависает и помогает только выключение окна.
Скрины:![][1]](https://i.stack.imgur.com/fiKCv.png)
Ответы (1 шт):
Автор решения: Vladyslav
→ Ссылка
Вот исправленный код, который должен работать правильно:
import tkinter as tk
password = "Westyuiopasd"
def get_password():
global password
entered_password = enter_password.get()
if password != entered_password:
incorrect_password_label = tk.Label(root, text=f'Вы ввели неверный пароль: {entered_password}',
font=('Times New Roman', 18, 'bold'))
incorrect_password_label.grid(row=0, column=1, sticky='we')
enter_password.delete(0, tk.END)
incorrect_password_label.after(2000, lambda: incorrect_password_label.destroy()) # Удаление через 2 секунды
else:
correct_password_label = tk.Label(root, text="Вы ввели правильный пароль. Вы и в правду любите Ангелину",
bg="blue",
font=('Times New Roman', 18, 'bold'))
correct_password_label.grid(row=0, column=2, sticky='we')
enter_password.delete(0, tk.END)
root = tk.Tk()
root.title("PythonHomework")
root.geometry("1280x750+130+0")
enter_password = tk.Entry(root)
enter_password.grid(row=0, column=1, sticky='we')
enter_password_label = tk.Label(root, text='Введите пароль:', font=('Times New Roman', 18, 'bold'))
enter_password_label.grid(row=0, column=0, sticky='we')
enter_password_button = tk.Button(root, text='Ввод', command=get_password, font=('Times New Roman', 18, 'bold'))
enter_password_button.grid(row=1, column=0, columnspan=2, sticky='we')
root.grid_columnconfigure(0, minsize=100)
root.grid_columnconfigure(1, minsize=100)
root.grid_columnconfigure(2, minsize=100)
root.mainloop()

