Signals y slots en Qt (parte I)

Es normal que, para muchos, al hablar de Qt vengan a la cabeza dos palabras: signals y slots. Y es que Qt usa ampliamente este mecanismo de comunicación, muy similar al patrón observador, especialmente en lo referente a interfaces gráficas.

La documentación de Qt es muy extensa en el uso de este mecanismo, pero me ha parecido interesante resaltar algunos aspectos básicos y otros un poco menos obvios. Por su extensión, dividiré este artículo en dos entregas. En esta primera parte introduciré el uso más común y tradicional (el usado hasta Qt 4, aunque sea dentro del contexto de Qt 5), y en la segunda entrega pasaré a explicar las novedades introducidas en Qt 5, una comparativa …

Sigue leyendo →

Un breve tratado sobre la coexistencia de múltiples Q*Application

Breve historia de este post

Hace un par de años me tocó embeber el editor de interfaces de Qt (Qt Designer) dentro de otra aplicación. Si bien el cómo lo hice no tiene demasiada importancia ahora mismo, resulta que me enfrenté al siguiente problema: Qt Designer crea su propia instancia de QApplication, pero es que ¡la nueva aplicación contenedora también! Así que ante la clara pregunta ¿tendré problemas?, decidí estudiar el tema un poco más a fondo.

Antecedentes: QApplication

Un gran número de funcionalidades de Qt requieren de la existencia de un objeto especial, la aplicación: ésta gestiona los bucles de eventos, un gran número de variables globales (como el idioma actual), etc.

Dependiendo del modo de …

Sigue leyendo →