Здравствуйте! В сегодняшней статье рассмотрим, как реализовать автоматическое обновление элемента Label в Tkinter . Такая функция полезна для отображения времени, статуса приложения, данных из внешних источников и других динамических изменений.

Часы реального времени на Python  и Tkinter

Здравствуйте! В сегодняшней статье рассмотрим, как реализовать автоматическое обновление элемента Label в Tkinter. Такая функция полезна для отображения времени, статуса приложения, данных из внешних источников и других динамических изменений.

Как работает автообновление в Tkinter?

Tkinter предоставляет метод after(), который позволяет выполнять заданную функцию с определённой периодичностью:

В качестве примера создадим окно с текущим временем, которое будет обновляться каждую секунду.



import tkinter as tk
from datetime import datetime

# Создаем окно
root = tk.Tk()
root.title("Автообновление Label")
root.geometry("300x150")

# Создаем Label для отображения времени
time_label = tk.Label(root, text="", font=("Arial", 18))
time_label.pack(pady=20)

# Функция для обновления времени
def update_time():
    current_time = datetime.now().strftime("%H:%M:%S")  # Получаем текущее время
    time_label.config(text=f"Текущее время: {current_time}")  # Обновляем текст Label
    time_label.after(1000, update_time)  # Планируем обновление через 1 секунду

# Запускаем обновление
update_time()

# Запуск основного цикла приложения
root.mainloop()