Python GTK4: Desarrollo de Aplicaciones GTK4 en Python
Introducción
GTK4 es una biblioteca de interfaz de usuario de código abierto y multiplataforma que se utiliza para crear aplicaciones de escritorio. Python es un lenguaje de programación de alto nivel que es popular para el desarrollo de aplicaciones web y de escritorio.
Este tutorial te enseñará cómo desarrollar aplicaciones GTK4 en Python. Cubriremos los conceptos básicos de GTK4, así como algunos ejemplos prácticos.
Requisitos previos
Para seguir este tutorial, necesitarás lo siguiente:
- Un editor de texto o IDE de Python
- Python 3.8 o superior
- El paquete GTK4
- El paquete PyGObject
Instalación de los paquetes
En Ubuntu, puedes instalar los paquetes GTK4 y PyGObject con los siguientes comandos:
sudo apt install libgtk-4-dev python3-gi
En Windows, puedes instalar los paquetes GTK4 y PyGObject con los siguientes comandos:
pip install pygobject gtk4
Creación de una aplicación simple
Para crear una aplicación GTK4 simple, crearemos una ventana con un botón. El botón tendrá la etiqueta «Hola, mundo».
El siguiente código creará una aplicación GTK4 simple:
import gi
gi.require_version("Gtk", "4.0")
from gi.repository import Gtk
class HolaMundoWindow(Gtk.Window):
def __init__(self):
super().__init__()
self.set_title("Hola, mundo")
self.set_default_size(200, 200)
button = Gtk.Button(label="Hola, mundo")
button.connect("clicked", self.on_button_clicked)
self.add(button)
def on_button_clicked(self, button):
print("Hola, mundo!")
window = HolaMundoWindow()
window.show()
Gtk.main()
Este código crea una clase llamada HolaMundoWindow
que hereda de la clase Gtk.Window
. La clase HolaMundoWindow
tiene un constructor que establece el título de la ventana y su tamaño predeterminado.
La clase HolaMundoWindow
también tiene un método llamado on_button_clicked()
que se llama cuando se hace clic en el botón. Este método imprime el mensaje «Hola, mundo!» en la consola.
Para ejecutar la aplicación, guarda el código anterior en un archivo llamado hola_mundo.py
. Luego, ejecuta el siguiente comando:
python hola_mundo.py
Creación de un widget de entrada de texto
En el siguiente ejemplo, crearemos un widget de entrada de texto. El usuario podrá ingresar su nombre y hacer clic en un botón para mostrar su nombre en una etiqueta.
import gi
gi.require_version("Gtk", "4.0")
from gi.repository import Gtk
class HolaNombreWindow(Gtk.Window):
def __init__(self):
super().__init__()
self.set_title("Hola, nombre")
self.set_default_size(200, 200)
# Crear un widget de entrada de texto
entry = Gtk.Entry()
entry.set_placeholder_text("Ingrese su nombre")
# Crear un botón
button = Gtk.Button(label="Mostrar nombre")
button.connect("clicked", self.on_button_clicked)
# Crear una etiqueta
label = Gtk.Label()
# Agregar los widgets a la ventana
self.add(entry)
self.add(button)
self.add(label)
def on_button_clicked(self, button):
# Obtener el nombre del usuario
nombre = entry.get_text()
# Mostrar el nombre en la etiqueta
label.set_text(f"Hola, {nombre}!")
window = HolaNombreWindow()
window.show()
Gtk.main()
Este código crea un widget de entrada de texto llamado entry
. El widget entry
tiene un texto de marcador de posición que le indica al usuario que ingrese su nombre.
El código también crea un botón llamado button
. El botón tiene la etiqueta «Mostrar nombre»