Tkinter: Herramienta GUI integrada en Python

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Guía completa de Tkinter: la biblioteca para crear GUI en Python

Tkinter (Tk interface) es la biblioteca estándar para crear interfaces gráficas de usuario (GUI) en Python. Su nombre proviene de Tk, un kit de herramientas GUI multiplataforma desarrollado originalmente para el lenguaje Tcl. Tkinter actúa como el enlace de Python para Tk y viene incluido en la instalación estándar de Python desde la versión 3.1, lo que lo convierte en la herramienta más accesible para crear aplicaciones de ventana.

La biblioteca es compatible con los principales sistemas operativos: Windows, Linux y macOS, garantizando que tus aplicaciones funcionen en múltiples plataformas. Su facilidad de aprendizaje y sus mínimas dependencias hacen de Tkinter una opción ideal para desarrolladores principiantes, proyectos educativos y la creación de pequeñas aplicaciones de escritorio.

Historia y arquitectura de Tkinter

Tkinter fue creado a principios de la década de 1990 como un envoltorio de Python para el kit de herramientas GUI de Tk. Tk, a su vez, fue desarrollado por John Ousterhout en la Universidad de California, Berkeley. En más de 30 años de existencia, la biblioteca ha evolucionado significativamente, pero ha mantenido su filosofía de simplicidad y fiabilidad.

La arquitectura de Tkinter se basa en la programación orientada a eventos. El elemento principal es el bucle principal de eventos (event loop), que espera las acciones del usuario y responde a ellas llamando a las funciones de control correspondientes.

Instalación y primer programa

Verificar si Tkinter está instalado

Tkinter forma parte de la biblioteca estándar de Python y, por lo general, no requiere instalación por separado. Para comprobar su disponibilidad, ejecuta:

python -c "import tkinter; print('Tkinter está disponible')"

Instalación en diferentes sistemas operativos

Windows: Tkinter se instala automáticamente con Python.

macOS: Viene incluido en la instalación estándar de Python.

Linux (Ubuntu/Debian):

sudo apt-get install python3-tk

Linux (CentOS/RHEL):

sudo yum install tkinter
# o para versiones más recientes
sudo dnf install python3-tkinter

Crear tu primera aplicación

import tkinter as tk

# Crear la ventana principal
window = tk.Tk()
window.title("Mi primera aplicación")
window.geometry("400x300")
window.resizable(True, True)

# Iniciar el bucle principal
window.mainloop()

Componentes principales de Tkinter

Ventana principal (Root Window)

La ventana principal es el elemento raíz de cualquier aplicación Tkinter. Todos los demás widgets deben colocarse dentro de ella o en sus ventanas secundarias.

import tkinter as tk

root = tk.Tk()
root.title("Título de la ventana")
root.geometry("800x600+100+50")  # ancho x alto + margen_x + margen_y
root.minsize(300, 200)  # tamaño mínimo
root.maxsize(1200, 800)  # tamaño máximo
root.configure(bg='lightblue')  # color de fondo

Widgets principales y su uso

Etiqueta (Label)

Label se utiliza para mostrar texto o imágenes que el usuario no puede editar.

label = tk.Label(
    window, 
    text="Etiqueta informativa",
    font=("Arial", 14),
    fg="blue",
    bg="white",
    anchor="center"
)
label.pack(pady=10)

Botón (Button)

El botón es un elemento interactivo para ejecutar acciones.

def button_click():
    print("¡Botón presionado!")

button = tk.Button(
    window,
    text="Presióname",
    command=button_click,
    font=("Arial", 12),
    bg="green",
    fg="white",
    width=15,
    height=2
)
button.pack(pady=5)

Campo de entrada (Entry)

Entry se usa para

Recommendations