HOWTO · Tkinter

Cómo usar un temporizador en Tkinter

Este tutorial muestra cómo utilizar un temporizador en Tkinter

En esta página

La ventana raíz de Tkinter tiene un método dedicado after que llama a una función después de un período de tiempo determinado -

after(ms, func)

ms es el intervalo en la unidad de ms,

func es el nombre de la función llamada.

try:
    import Tkinter as tk
except:
    import tkinter as tk

import time


class Clock:
    def __init__(self):
        self.root = tk.Tk()
        self.label = tk.Label(text="", font=("Helvetica", 48), fg="red")
        self.label.pack()
        self.update_clock()
        self.root.mainloop()

    def update_clock(self):
        now = time.strftime("%H:%M:%S")
        self.label.configure(text=now)
        self.root.after(1000, self.update_clock)


app = Clock()

self.root.after(1000, self.update_clock) llama a la propia función después de 1000 ms, por lo tanto, update_clock() la función se ejecuta en el intervalo de 1000 ms y muestra la hora actual en la etiqueta de Tkinter.

Atención
Tenga en cuenta que el período dado en el método after no está garantizado para llamar a la función después del período preciso, porque podría retrasarse si la aplicación está ocupada, debido a que Tkinter es de un solo hilo.

Reloj temporizador de Tkinter