Python GTK4: Desarrollo de Aplicaciones GTK4 en Python

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:

Python
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.

Python
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»