Tu primer aplicación en PySide

Si seguiste el wiki donde se explica la configuración inicial de PySide [developer.qt.nokia.com] y su instalación, entonces tendrás tu máquina lista para desarrollar aplicaciones Qt+Python con interfaz gráfica de usuario. Como en otros lenguajes de programación empezaremos con el tradicional “Hola Mundo!”

Este es un ejemplo sencillo de un Hola Mundo! en PySide:

  1. #!/usr/bin/python
  2.  
  3. # Importamos las clases de PySide
  4. import sys
  5. from PySide.QtCore import *
  6. from PySide.QtGui import *
  7.  
  8.  
  9. # Creamos una aplicacion Qt
  10. app = QApplication(sys.argv)
  11. # Creamos una etiqueta y la mostramos
  12. label = QLabel("Hola Mundo!")
  13. label.show()
  14. # Entra al bucle principal de la aplicación Qt
  15. app.exec_()
  16. sys.exit()

En las aplicaciones PySide de escritorio siempre debes iniciar el archivo importando las clases PySide.QtCore y PySide.QtGui. Estas clases tienen las funciones principales para construir las aplicaciones PySide. Por ejemplo, PySide.QtGui contiene las funciones para tratar con los widgets, que son los objetos con los que trabajas en Qt, estos pueden ser botones, barras de desplazamiento, lineas de texto entre muchas opciones, o como es nuestro caso, una etiqueta. Por otra parte PySide.QtCore contiene los métodos para manejar las señales y las ranuras (signals and slots) con los cuales se comunican los widgets entre sí.

Después de las importaciones, creamos una QApplication la cual es la aplicación Qt principal. Así como Qt puede recibir argumentos de la línea de comandos, debes pasar los argumentos al objeto QApplication. Usualmente no necesitas pasar ningún argumento, por lo tanto lo puedes dejar tal cual está.

Después de la creación de la aplicación, hemos creado un objeto QLabel. Un QLabel (etiqueta) es un widget que puede mostrar texto (sencillo o enriquecido, como HTML) e imágenes. Debes notar que después de la creación de la etiqueta llamamos el método show() que mostrará la etiqueta al usuario.

Finalmente llamamos app.exec_() que entrará al bucle principal de Qt e iniciará la ejecución del código Qt.

Uso de HTML en la etiqueta Qt

Tal cual se mencionó previamente puedes insertar tags de HTML en las etiquetas de Qt para mostrar texto enriquecido. Intenta cambiar el código que crea la etiqueta por algo como esto:

  1. label = QLabel("<font color=red size=40>Hola Mundo!</font>")

Ahora veras el Hola Mundo! más grande y rojo, puede intentar cambiarlo a otro color, otro tamaño, incluso hacerlo parpadear! también puedes crear otros elementos, como botones y demás.

Categories: