Hum... tu ne fais pas exactement ce que Yan a proposé :
- en utilisant MainWindow au lieu d'un QObject créé spécifiquement pour émettre le signal, tu ne respectes pas trop le principe de responsabilité unique
- en utilisant MainWindow, tu as un couplage fort entre ta fonction callback et MainWindow, c'est à dire que ta fonction callback doit connaitre la définition de MainWindow (avec des risques d'inclusion et de définitions multiples... comme tu as pu le constater). Tu perds l'intérêt des signaux/slots qui ne nécessite pas que la classe émettrice connaisse la classe réceptrice et vice-versa. Tu pourrais appeler directement une fonction
MainWindow::drawImage(const QImage&)
En bref, n'utilise pas MainWindow
Partager