Object::connect: No such signal

Ich habe ein problem, um das erstellen von benutzerdefinierten slots/signal mit einem struct. Ich habe den folgenden code :

qRegisterMetaType<namespace::myClassA::aStruct>();
QObject::connect(&myClassA, SIGNAL(theSignal(myClassA::aStruct)),
                  &myClassB, SLOT(theSlot(myClassA::aStruct)));

Beim starten des Programms bekam ich :

Object::connect: No such signal NameSpace::myClassA::theSignal(myClassA::aStruct)
Object::connect:  (receiver name: 'NameSpace__CLASSNAME')

Wie kann ich dieses problem behoben?

PS: Der slot und das signal wurde korrekt deklariert in der header-Dateien die Datei Q_SIGNALS und Q_SLOTS Schlüsselwörter, mit dem richtigen argument (aStruct)

Haben Sie laufen qmake nach der Implementierung der signal-und slot?
Q_DECLARE_METATYPE/qRegisterMetatype ist es nicht notwendig, noch wird es helfen, für direkte verbindungen (der Standardwert, wenn beide Objekte im gleichen thread)
Es fällt mir auf, dass selbst das, was Aussehen könnte wie kleine Stiche, die verhindern können, dass die ordnungsgemäße Funktionsweise: SIGNAL(PageClosed(QWidget *Seite)) hat einen Fehler erzeugt. Entfernt habe ich die parameter: - Seite, und es wurde akzeptiert.

InformationsquelleAutor peterphonic | 2013-02-08

Schreibe einen Kommentar