NIFTux es una calculadora de la letra del NIF hecha con python 3 y pyqt para GNU/Linux, aunque debería funcionar también en Windows y OSX.
Esta es mi primera aplicación creada con es lenguaje y librería todo un clásico en el aprendizaje de lenguajes nuevos.
Para poder desarrollarla o ejecutarla hay que instalar los siguientes paquetes:
sudo apt install python3 python3-minimal python3-netifaces python3-pyperclip python3-pyqt5 python3-python-utils python3-setuptools
Desarrollo de la interfaz
La interfaz se ha desarrollado con pyqt 5, concretamente con QT Designer que se puede localizar en la categoría 'Desarrollo' dentro del menú de tu distro una vez instalada.
El funcionamiento es muy sencillo, vamos añadiendo los distintos elementos que va a tener el programa (widgets) y luego guardamos el proyecto, que se guardará en formato json con la extensión ui.
Hay que convertir este archivo json en otro que sea código python para lo que usamos el siguiente comando:
pyuic5 -x miprogramagui.ui -o miprogramagui.py
La parte de programación
El código generado por pyqt no debe modificarse directamente porque cuando hagamos una modificación en la gui y lo regeneremos se perderían los cambios, así que hay que hacer otro programa (p.e.: mi programa.py) que llame a dicho código (miprogramagui.py), como es una parte muy complicada para explicar en un artículo, lo mejor es que mires el código como lo tengo hecho para hacerte una idea sobre como funciona.
En esta ocasión he usado PyCharm Community para editar el código, pero puedes usar cualquier editor profesional para programación como jEdit, NetBeans, Eclipse...
Funcionamiento
Se ejecuta con el comando:python3 niftux.pyComo siempre te puedes hacer un acceso directo para facilitar la ejecución desde el entorno gráfico.
El funcionamiento es tan intuitivo que tampoco voy a profundizar mucho, haces clic con el ratón en los botones correspondientes o usas el teclado para introducir la cifra, pudiendo borrar la última con el botón Backspace o toda ella con el botón Delete.
Soporta el portapapeles del sistema pudiéndose copiar y pegar con los botones de la aplicación o con los del teclado.
Se sale con la tecla ESC o cerrando la ventana.
Enlaces para profundizar
Si quieres hacer tus propias aplicaciones con pyqt y python3 lo mejor es que mires la documentación que miré yo y toda la que encuentres por ahí, ya que el aprendizaje de un nuevo lenguaje y sacarle todo el jugo es un proceso que requiere mucho esfuerzo y tesón, para empezar os dejo algunos enlaces:
- ¡Quiero Aprender Python!.
- Curso Aplicaciones GUI Python con PyQT.
- Python para principiantes.
- Eventos en Python.
- Python para impacientes.
- Manejo de atributos mediante propiedades.
- Tutorial de Python (y Django!) en Español.
- DigitalOcean eBook: How To Code in Python.
- Python para profesores.
- Python en fidev.
- Cómo desarrollar aplicaciones en QT con Python 3 y pyside2.
- Show an image using a label.
- Python PyQt5.QtGui.QPixmap() Examples .
- How to Create Dialogs in Python.
- Ejemplos de la GUI de Python (Tutorial de Tkinter).
- Spyder, un potente entorno de desarrollo interactivo para Python.