QMetaObject::invokeMethod() wird nicht aufgerufen
-
Hi.
Vorweg: Ich habe die Hauptklasse
MyClass
schon mittelsqRegisterMetaType<MyClass*>();
registriert.Ich habe einen Thread, in welchem ich
QMetaObject::invokeMethod()
aufrufe, jedoch wird die FunktionthreadCreateWidgets()
nicht aufgerufen.QMetaObject::invokeMethod(p /*pointer zu this*/, "threadCreateWidgets", Qt::QueuedConnection, Q_ARG(QVector<DashboardItem>*, dbi), Q_ARG(QWidget*, wid), Q_ARG(MyClass*, p))
Als der Thread beendet werden soll (bin mir nicht 100% sicher) bekomme ich dann eine Exception (read access violation) in der Datei
moc_myclass.cpp
:case 45: _t->threadCreateWidgets((*reinterpret_cast< QVector<DashboardItem>*(*)>(_a[1])),(*reinterpret_cast< QWidget*(*)>(_a[2])),(*reinterpret_cast< MyClass*(*)>(_a[3]))
Nun, wird meine Klasse
MyClass
nicht richtig registriert und deshalb wird die FunktionthreadCreateWidgets()
nicht aufgerufen?
-
Hat sich geklärt. Nachdem Post hier gleich den Fehler gefunden
Hab einen Typ vergessen zu registrieren...