Desarrollo de aplicaciones gráficas con Tkinter y Tk en Python
Tkinter y Tk son dos bibliotecas que permiten crear interfaces gráficas de usuario (GUI) en Python. Tkinter es la interfaz de Python para el kit de herramientas Tk, que es una biblioteca de código abierto y multiplataforma.
Instalación
Tkinter viene incluido en todas las distribuciones de Python. Para instalar Tk, simplemente abre una terminal y ejecuta el siguiente comando:
python -m pip install tk
Creando una ventana
Para crear una ventana con Tkinter, usamos el método Tk()
. Este método crea una nueva ventana y la devuelve como un objeto de la clase Tk()
.
import tkinter as tk
root = tk.Tk()
Ajustando la ventana
Podemos ajustar el tamaño, la ubicación y el título de la ventana usando los métodos geometry()
, place()
y title()
, respectivamente.
root.geometry("400x200")
root.place(x=0, y=0)
root.title("Mi primera ventana")
Añadiendo widgets
Los widgets son los elementos que componen una GUI. Tkinter proporciona una amplia variedad de widgets, como botones, etiquetas, cuadros de texto, etc.
Para añadir un widget a una ventana, usamos el método pack()
. Este método coloca el widget en la ventana de acuerdo con un algoritmo predeterminado.
# Añadir un botón
button = tk.Button(root, text="Hola mundo")
button.pack()
# Añadir una etiqueta
label = tk.Label(root, text="Este es un mensaje")
label.pack()
Eventos
Los eventos son interacciones del usuario con la GUI. Podemos responder a eventos usando métodos de escucha.
Para escuchar un evento, usamos el método bind()
. Este método asocia un evento a un método de escucha.
# Escuchar el evento de clic en el botón
button.bind("<Button-1>", lambda event: print("Hola"))
# Escuchar el evento de cambio en el cuadro de texto
entry.bind("<KeyRelease>", lambda event: print(entry.get()))
Ejemplo completo
import tkinter as tk
def saludar():
print("Hola")
root = tk.Tk()
# Añadir un botón
button = tk.Button(root, text="Hola mundo", command=saludar)
button.pack()
# Añadir una etiqueta
label = tk.Label(root, text="Este es un mensaje")
label.pack()
root.mainloop()
Este ejemplo crea una ventana con un botón y una etiqueta. El botón se llama «Hola mundo» y se le ha asignado un método de escucha para el evento de clic. El método de escucha imprime el mensaje «Hola».
Recursos
- Documentación de Tkinter: https://docs.python.org/3/library/tkinter.html
- Tutorial de Tkinter: https://www.tutorialspoint.com/python/python_gui_programming.htm
- Libro de Tkinter: https://tkdocs.com/tutorial/
Conclusión
Tkinter y Tk son herramientas poderosas para crear interfaces gráficas de usuario en Python. Con un poco de práctica, podrás crear aplicaciones gráficas atractivas y funcionales.