qt中对QDeclarativePropertyMap的未定义引用

时间:2015-05-20 06:56:37

标签: c++ qt qml

我是Qt的新手。

Qml在将QDeclarativePropertyMap从c ++传递给Qml时面临问题。

这是我的代码:

的main.cpp

#include <QApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
#include <QtDeclarative/qdeclarativepropertymap.h>
#include <QVariant>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QQmlApplicationEngine engine;
    ///giving error in below line
    QDeclarativePropertyMap *m_propertymap = new QDeclarativePropertyMap();
    m_propertymap->insert("time" ,QVariant(QString("yet to do")));
    m_propertymap->insert("area" ,QVariant(QString("india")));
    engine.rootContext()->setContextProperty("M_propertymap", m_propertymap);
    engine.load(QUrl(QStringLiteral("qrc:/main.qml")));

    return app.exec();
}

错误:

undefined reference to QDeclarativePropertyMap QObject

1 个答案:

答案 0 :(得分:0)

使用QtQml/QQmlPropertyMap代替

  

对QDeclarativePropertyMap QObject的未定义引用

是链接器错误,导致您尝试混合不同版本的qtquick