@Quvi

Почему не работает Label в связке с time.sleep() Tkinter?

Есть код выхода из окна, при нажатии кнопки должна появляться надпись и потом через указанное время выполняться window.destroy(), но он почему-то не работает
window = Tk()

def clicked():
    lbl = Label(window, text="текст перед закрытием", font=("Arial Bold", 15)) 
    lbl.grid(column=0, row=11)
    time.sleep(3)
    window.destroy()

# кнопка
btn = Button(window, text="Кнопка выхода", command=clicked)
btn.grid(column=0, row=10)

P.S. все импорты есть и при нажатии ничего не происходит, проходит 3 сек и окно закрывается
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
NeiroNx
@NeiroNx
Программист
Потому что time.sleep тормозит основной цикл программы и операции обновления интерфейса не успевают обработаться.

window.after(3000,window.destroy)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час