Hello,
(Oui le titre en dit long sur ma connaissance de Qt...)
J'ai besoin de modifier la GUI depuis un autre (éventuellement plusieurs) threads que le thread associé a la GUI, pour ça faut passer par des signaux / slots, jusque la pas de problèmes.
Maintenant, j'ai besoin que la/les classes qui doivent modifier la GUI héritent de QObject pour y ajouter des signaux, et c'est la que ça bloque.
La classe que j'utilise pour envoyer des signaux:
J'ai passé un coup de MOC dessus (obligatoire sur tous les QObjects ?)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class GUIManager: public Base<>, public QObject { Q_OBJECT signals: void updateSignal(); /* ... */ };
et les erreurs que j'obtient:
Il faut que toutes les classes de bases de GUIManager héritent de QObject ?'bool QObject::connect(const QObject *,const char *,const QObject *,const char *,Qt::ConnectionType)'*: impossible de convertir le paramètre 1 de 'const GUIManager *' en 'const QObject *'
'staticMetaObject'*: n'est pas membre de 'Base<>'
'qt_metacast'*: n'est pas membre de 'Base<>'
'qt_metacall'*: n'est pas membre de 'Base<>'
Pourquoi Qt veut pas comprendre que GUIManager est un QObject ?
Partager