Alles rund um die Programmierung mit Qt
DBGTMaster
Beiträge: 190 Registriert: 19. August 2010 10:00
Beitrag
von DBGTMaster » 16. September 2013 16:11
Hallo,
ich habe einen Typ definiert.
file.h:
Code: Alles auswählen
typedef QList < QPair< QDate, quint32 > > backList..
...
...
Q_DECLARE_METATYPE(backList);
file.cpp:
Kompiler meint, QVariant hat als keinen Parameter "backlist".
Wie kann ich backList in einem QVariant übergeben?
Danke!
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 16. September 2013 19:22
Es gibt ja auch keine Funktion (in diesem Falle ctor) mit QVariant(const backList &data).
Du musst die Daten mit QVariant::setvalue<T>() setzen
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
DBGTMaster
Beiträge: 190 Registriert: 19. August 2010 10:00
Beitrag
von DBGTMaster » 18. September 2013 16:53
Hallo,
leider mein nächstes Problem:
Code: Alles auswählen
typedef QList< QPair<QDate, quint32> > backwardList;
backwardList backward;
Q_DECLARE_METATYPE(backwardList)
backward.append( QPair<QDate, quint32> (
date, int-val
)
);
QHash<QString, QVariant> cols;
cols["backward"].setValue<backwardList>(backward);
list.append( cols );
Der letzte Befehl wirft:
Code: Alles auswählen
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
QVariant::save: unable to save type 258.
Woran liegt das?
Christian81
Beiträge: 7319 Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:
Beitrag
von Christian81 » 18. September 2013 19:15
qRegisterMetaType() sollte das Problem lösen.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung