Код:
import tkinter as tk
from tkinter import messagebox
# Глобальная переменная для отсчёта времени
t = 180 # Пример начального значения, можно менять в другой функции
def tick():
global t
if t > 0:
t -= 1
minutes, seconds = divmod(t, 60)
vuvodtime.config(text=f"Отсчёт времени: {minutes} мин {seconds} сек")
root.after(1000, tick) # Планируем следующий вызов через 1 секунду
else:
vuvodtime.config(text="Время вышло!")
messagebox.showinfo("Время вышло", "Отсчёт времени завершён!")
# Создание окна приложения
root = tk.Tk()
root.title("Обратный отсчёт")
# Лейбл для вывода времени
vuvodtime = tk.Label(root, text="", font=("Arial", 18))
vuvodtime.pack(pady=20)
# Кнопка для запуска обратного отсчёта (для тестирования)
start_button = tk.Button(root, text="Начать отсчёт", command=tick)
start_button.pack()
root.mainloop()
def tick():
global t
if t<=180 and t>120:
t-=1
vuvodtime.config(text=f"Отсчет времени:{2} мин {t-120} сек")
vuvodtime.after(1000,tick)
return t
elif t<=120 and t>60:
t -= 1
vuvodtime.config(text=f"Отсчет времени:{1} мин {t - 60} сек")
vuvodtime.after(1000, tick)
elif t<=60:
t-=1
vuvodtime.config(text=f"Отсчет времени:{t} сек")
vuvodtime.after(1000, tick)
if t==0:
vuvodtime.config(text="Время вышло!")