Sobre este documento...
Los contenidos de este documento están bajo la licencia Creative
Commons
Esta versión impresa se creo el 10 de Julio de 2008 y todavía esta
incompleta, si deseas descargar la última versión puede informarte en
http://www.elcodigok.com.ar
Si deseas aportar sugerencias, comentarios, críticas o informar la
presencia de errores puede hacerlo a
[email protected]
Para más información les recomiendo que visiten mi blog El CoDiGo K
http://www.elcodigok.com.ar y LaREPAWEB http://www.larepaweb.com.ar
PyQT Desarrollando Aplicaciones de Escritorio
Esta pequeña guía es el resultado de una recopilación y de horas de
trabajo, motivado desde hace tiempo, debido a que muchos
programadores quieren comenzar a programar con estas dos
grandiosas herramientas y muchas veces no sabe como dar los
primeros pasos sin quedarse en el intento.
Para ello esta guía intenta ser un documento de referencia y de
motivación para comenzar a trabajar y realizar interfaces de usuarios
muy simples.
INTRODUCCIÓN
¿Qué es Python?
Python es un Lenguaje de Programación creado por Guido van Rossum
en el año 1990, este personaje ya se los había presentado
anteriormente en nuestra sección de Programadores.
Es un lenguajes muy comparado con TCL, Perl, Scheme, Java y Ruby.
En la actualidad Python se desarrolla como un proyecto de código
abierto, administrado por la Python Software Foundation. La última
versión estable del lenguaje es actualmente la 2.5.1 (18 de abril de
2007).
Python permite dividir el programa en módulos reutilizables desde otros
programas Python. Viene con una gran colección de módulos estándar
que se pueden utilizar como base de los programas (o como ejemplos
para empezar a aprender Python). También hay módulos incluidos que
proporcionan E/S de ficheros, llamadas al sistema, sockets y hasta
interfaces a GUI (interfaz gráfica con el usuario) como Tk, GTK, Qt entre
otros.
Python es un lenguaje interpretado, lo que ahorra un tiempo
considerable en el desarrollo del programa, pues no es necesario
compilar ni enlazar. El intérprete se puede utilizar de modo interactivo,
lo que facilita experimentar con características del lenguaje, escribir
programas desechables o probar funciones durante el desarrollo del
programa. También es una calculadora muy útil.
Características de Python
En primer lugar les comento que Python es un Lenguaje de
Programación multiparadigma, lo cual significa que no trata de forzar a
los programadores a adoptar un determinado modelo de paradigma o
estilo sino que permite varios. Entre ella tenemos POO (Programación
Orientada a Objetos), Programación Estructurada, Programación
Funcional y la Programación orientada a Aspectos.
Python utiliza tipado dinámico de datos (puede tomar una variable
diferentes tipos de datos durante la ejecución del programa) y referencia
counting para el manejo de memoria. Otra característica importante de
Python es la resolución dinámica de nombres, lo que enlaza un método
y un nombre de variable durante la ejecución del programa.
Otro objetivo del diseño del lenguaje era la facilidad de extensión.
Nuevos módulos se pueden escribir fácilmente en C o C++.
Python puede utilizarse como un lenguaje de extensión para módulos y
aplicaciones que necesitan de una interfaz programable. Aunque el
diseño de Python es de alguna manera hostil a la programación
funcional tradicional del Lisp, existen bastantes analogías entre Python
y los lenguajes minimalistas de la familia del Lisp como puede ser
Scheme.
Las librerías QT
QT es una biblioteca multiplataforma, creadas para desarrollar
interfaces gráficas de usuarios. Fue creada por la compañía noruega
Trolltech (una compañía de software fundada en el año 1994).
Seguramente reconocerás a QT ya que el mismo utiliza el entorno
gráfico KDE (K Desktop Environment) un entorno gráfico para los
sistemas operativos GNU/Linux o FreeBSD entre otros.
Es desarrollado con el lenguaje de programación C++ de forma nativa
pero existen módulos para otros lenguajes de programación como ser
C, Python (PyQT), Java (QT Jambi), Perl (PerlQT), Gambas (gb.qt),
Ruby (QTRuby), PHP (PHP-QT), Mono (Qyoto), entre los más
reconocidos.
Es un librería totalmente Orientada a Objetos, es por ello que las API
(Application Programming Interface) cuenta con diferentes métodos,
soporta el uso de diferentes motores de Bases de Datos y el uso de
archivos XML, además de otras estructuras de datos tradicionales.
Estas librerías de desarrollo se encuentran disponibles para las
siguientes plataformas:
● X11 - Para X Windows System (GNU/Linux, Unix, BSD).
● Mac - Para los sistemas Mac OS X.
● Windows - Para las diferentes versiones del Sistema Operativo
Windows.
● PDA - Para los dispositivos empotrados.
De este modo podemos ver que en diferentes plataformas es totalmente
compatibles y listo para migrar.
MI PRIMER PROGRAMA
REALIZADO CON
PyQT
Basta de palabras y vamos a comenzar a programar y conocer lo simple
que puede llegar a ser esto.
En principio vamos a necesitar algunas aplicaciones instaladas, como
ser:
herramienta KDevelopDesigner
● El IDE de programación KDevelop, en él encontraremos la
● Python, el lenguaje interpretado a utilizar.
● Python-qt-dev
● Python-qt3
● pyqt-tools
Una ves que comprobamos que tenemos instalado todas estas
herramientas podemos decir que estamos listos para comenzar a
desarrollar.
Lo primero que vamos a realizar comenzar a utilizar KDevelopDesigner,
para poder realizar nuestros
formularios, les comento que
vamos a realizar el clásico
ejemplo “Hola Mundo!”.
Para aquellas personas que no
conocen de que se trata
KDevelopDesigner les comento
que se trata de una herramienta
que nos permite
realizar
interfaces de usuarios, formularios, Widget, etc, desarrollado para las
librerías QT.
KDevelopDesigner tiene una particularidad que realmente es muy
interesante y es algo que debemos comprender bien, les comentaba
que a través de esta herramienta vamos a poder desarrollar nuestros
formularios, los mismos se van a almacenar como archivos de extensión
.ui, estos archivos poseen un contenido al estilo XML pero que no
corresponde para un lenguaje de programación en particular.
Esto quiere decir que nosotros debemos transformar este archivo .ui a
un archivo para nuestro lenguaje de programación, entonces estos
formularios creados podemos utilizar tanto para C, C++, Python, Ruby,
etc. Más adelante vamos a ver como realizar esta operación.
Volvamos un poco a KDevelopDesigner vamos a crear un nuevo archivo
y en particular vamos a escoger un archivo Widget
Una ves que seleccionamos Widget vamos a poder utilizar por completo
esta herramienta. Podemos observar que nos aparece un formulario en
la parte central de IDE, en la parte izquierda nos encontramos con los
diferentes Widget que podemos agregar al formulario como ser, Linea
de Texto, Botones, Listas, ComboBox, Labels, Radios, Check,
Contenedores, etc.
Entonces podemos apreciar que a nuestros formularios vamos a poder
agregarle una gran cantidad de Widget para realizar diferentes
operaciones.
Como dijimos anteriormente en la parte central podemos apreciar el
formulario que vamos desarrollando y agregándole diferentes cosas.
Por último podemos observar a la derecha que encontramos un
explorador de proyectos, donde podemos ver todos los proyectos que
tenemos abiertos, un explorador de Objetos en donde podemos conocer
rápidamente todos los objetos que contiene el formulario y por último un
editor de propiedades de cada objeto, en donde podemos configurar y
editar cada una de las propiedades que contiene cada uno de los
objetos, más adelante vamos a ver en detalle estas cosas.
La siguiente imagen muestra todo lo descripto anteriormente.
Rápidamente vamos a comenzar a utilizar algunas propiedades de los
formulario, para ello seleccionamos el formulario, y nos dirigimos hasta
donde se encuentras las propiedades y nos dirigimos a caption y
modificamos la leyenda Form1 por algo que deseamos cambiar.
En el ejemplo que estamos desarrollando vemos como lo modificamos
para que figure como titulo otra leyenda. Otra propiedad que es
importante para modificar es la propiedad name y que nos indica el
nombre del formulario, para el ejemplo les recomendaría que lo llamen
Formulario.
Ahora comencemos a agregar algunos objetos a nuestro formulario,
para ello lo único que debemos realizar es identificar el objeto que
queremos agregar, seleccionarlo y luego colocarlo en el formulario, así
de simple como vemos en el ejemplo
De la misma manera vamos a ir agregando algunos botones y otros
agregados, siempre les recomendaría que modifiquen a todos los objeto
la propiedad name, ya que es muy importante y lo vamos a ver en la
programación y interacción. Colocar nombre representativos por
ejemplo a la Línea de Texto agregado yo le coloque LineaEdicion.
Ahora agregamos dos botones, uno con el name BotonHola y
podemos modificar la propiedad text, que para el caso de los botones
especifica la leyenda que se muestra en cada uno de los mismo.
Y agregamos el clásico botón salir, donde nuevamente le cambiamos la
propiedad name por BotonSalir y la propiedad text por una leyenda
como ser Salir.
De este modo podemos ver que nos queda el formulario terminada y
armado.
Ahora podemos ir
agregando algunas
funcionalidades y
correcciones a este
formulario,
por
ejemplo podemos
modificar el orden
del foco de cada
Comentarios de: PyQT Desarrollando Aplicaciones de Escritorio (0)
No hay comentarios