Desarrollo de aplicaciones con Pygubu en Python

Desarrollo de aplicaciones con Pygubu en Python

Pygubu es una herramienta de desarrollo de aplicaciones de escritorio basada en el framework Tkinter de Python. Permite crear interfaces gráficas de usuario (GUI) de forma rápida y sencilla, sin necesidad de escribir código en Tkinter.

Requisitos

Para poder utilizar Pygubu, es necesario tener instalado Python 3.6 o superior. Además, es necesario instalar la biblioteca Pygubu, que se puede hacer con el siguiente comando:

pip install pygubu

Creación de una aplicación

Para crear una aplicación con Pygubu, es necesario abrir el editor de diseño de Pygubu. Esto se puede hacer ejecutando el siguiente comando:

pygubu-designer

Una vez abierto el editor, se mostrará una ventana con una paleta de widgets en el panel superior. Para crear una nueva interfaz, basta con arrastrar y soltar los widgets deseados en la ventana principal.

Ejemplo de interfaz

A continuación, se muestra un ejemplo de interfaz creada con Pygubu:

<pre>
<interface>
    <widget name="main_window" position="center">
        <widget name="label" position="top">
            <text>Hola mundo!</text>
        </widget>
        <widget name="button" position="bottom">
            <text>Aceptar</text>
        </widget>
    </widget>
</interface>
</pre>

Este código crea una interfaz con una ventana principal que contiene un label en la parte superior y un botón en la parte inferior.

Añadir lógica a la aplicación

Una vez creada la interfaz, es necesario añadir la lógica a la aplicación. Para ello, se puede utilizar el código generado por Pygubu o escribir el código manualmente.

Ejemplo de lógica

A continuación, se muestra un ejemplo de código que añade lógica a la aplicación anterior:

<pre>
import pygubu

class MyApp(pygubu.TkApp):
    def __init__(self):
        super().__init__()

        self.main_window = self.load_ui("main_window.ui")
        self.main_window.label.config(text="Hola mundo!")
        self.main_window.button.config(command=self.on_click)

    def on_click(self):
        print("¡Hola mundo!")

if __name__ == "__main__":
    MyApp().run()
</pre>

Este código añade un mensaje de bienvenida al label y muestra un mensaje de salida por consola cuando se hace clic en el botón.

Compilar la aplicación

Una vez que la aplicación esté completa, se puede compilar en un archivo ejecutable para Windows, Linux o macOS. Para ello, se puede utilizar la biblioteca PyInstaller:

pip install pyinstaller
pyinstaller --onefile --windowed --icon=icon.ico my_app.py

Este comando compilará la aplicación en un archivo ejecutable llamado my_app.exe (Windows), my_app (Linux) o my_app.app (macOS).

Conclusión

Pygubu es una herramienta sencilla y potente que permite crear aplicaciones de escritorio en Python de forma rápida y sencilla. Es una buena opción para desarrolladores principiantes que quieran crear aplicaciones GUI sin tener que aprender Tkinter.