Desarrollo de interfaces gráficas en Python 3 con Tkinter. Tomás Domínguez Mínguez

Читать онлайн.
Название Desarrollo de interfaces gráficas en Python 3 con Tkinter
Автор произведения Tomás Domínguez Mínguez
Жанр Математика
Серия
Издательство Математика
Год выпуска 0
isbn 9788426734013



Скачать книгу

href="#ulink_fd2512fa-a0b6-5366-b5d0-00a3667f7d0a">11.6.1 if…else

       11.6.2 while

       11.6.3 for

       11.7 Estructuras de datos

       11.7.1 Listas

       11.7.2 Tuplas

       11.7.3 Conjuntos

       11.7.4 Diccionarios

       11.8 Entrada de datos de usuario

       11.9 El depurador de código de Python

       11.10 Funciones

       11.11 Alcance de las variables

       11.12 Clases y objetos

       11.12.1 Herencia

       11.13 Módulos

       11.14 Threads

       11.15 Ficheros

       11.16 Excepciones

       11.17 Práctica. Aplicación de gestión de clientes

       12. ANEXO B. UNA ÚLTIMA PRÁCTICA

       12.1 Módulo gestión de clientes

       12.2 Interfaz de usuario

       12.2.1 Funciones del menú “Archivo”

       12.2.2 Funciones del menú “Operaciones”

       12.2.3 Funciones del menú “Ayuda”

      Unidad 1

       INTRODUCCIÓN

      Las interfaces de usuario son el medio de interacción entre las aplicaciones y las personas. Dependiendo de la forma en la que se lleve a cabo esta comunicación, se distinguen diferentes tipos: desde las de línea de comandos (en las que el intercambio de información se realiza utilizando únicamente texto), pasando por las interfaces gráficas, hasta las sofisticadas interfaces de voz (en las que el usuario ni siquiera necesita usar las manos).

      Si conoce Python, sabrá que la forma más sencilla de intercambio de datos con un programa escrito en este lenguaje es mediante la shell de su entorno de desarrollo o la línea de comandos proporcionada por una ventana de símbolo del sistema en Windows, la aplicación Terminal en macOS o una consola de Linux (también llamada “terminal” o shell). Se trata, por lo tanto, de una interfaz textual.

illustration

      Si no conoce Python, al final del libro dispone de un amplio anexo en el que se describen los fundamentos de este lenguaje. Allí se dan todos los conocimientos necesarios para poder seguir las prácticas propuestas.

      Por sus características, este tipo de interfaces son muy limitadas, por lo que su utilización puede resultar difícil y engorrosa, aparte de poco atractiva, lo que puede provocar el rechazo de la aplicación. Por ese motivo, salvo casos excepcionales, la mayoría disponen de una interfaz gráfica. Los programas escritos en Python no iban a ser una excepción, y existen diversos paquetes para su desarrollo con los que podrá usar todo tipo de controles gráficos. Entre ellos, destacan:

      •Tkinter. Librería estándar de Python. Viene integrada en el propio entorno.

      •PyQT. Creada por Riverbank, proporciona un puente de acceso al conocido framework QT de desarrollo de interfaces gráficas de usuario. Incluye un entorno gráfico (PyQt5 designer) con el que incluso se podrían construir de forma sencilla, mediante el método de arrastrar y soltar (drag and drop) los controles gráficos. Se distribuye con una licencia GPL (GNU General Public License – Licencia Pública General de GNU) y otra comercial.

      •PySide. Similar a la anterior, también proporciona un puente de acceso a QT; pero, a diferencia de PyQT, está disponible bajo la licencia LGPL (Lesser General Public License – Licencia Pública General Reducida de GNU). Surge como respuesta de Nokia (propietaria de QT) a la negativa de Riverbank de liberar PyQt bajo esta licencia, al requerir el pago de la comercial en caso de que la aplicación también lo sea (algo que no sucede con la licencia LGPL).

      •Kivy. Se trata de un paquete de código abierto con licencia MIT (Massachusetts Institute of Technology – Instituto Tecnológico de Massachusetts), para el desarrollo rápido de interfaces gráficas multiplataforma. No solo funciona en Windows, Linux o macOS, sino también en Android e iOS. Los gráficos se procesan a través de OpenGL ES 2, en lugar de controles gráficos nativos, lo que hace que su apariencia sea similar, independientemente del sistema operativo en el que se ejecute.

illustration

      El nombre del paquete QT juega con la forma en la que se pronuncia en inglés, similar a la palabra cute (“bonito” o “lindo”).

illustration

      El término framework se puede traducir como “marco de trabajo”. En el contexto de QT, representa un entorno de desarrollo específico para interfaces de usuario.

illustration

      OpenGL (Open Graphics Library) es un estándar que define una API multilenguaje y multiplataforma para el desarrollo de gráficos 2D y 3D.

      Cada uno de estos paquetes tiene sus puntos fuertes, por lo que decidirse por uno u otro dependerá de las necesidades del proyecto en el que se vaya a emplear, la plataforma donde se ejecute y/o las preferencias del programador. De todos ellos, se ha elegido Tkinter, por ser el estándar de Python.

      Como se acaba de indicar, Tkinter es el paquete estándar de Python para el desarrollo de interfaces gráficas de usuario.