2

目前我正在通过 QtCreator3.0.0、Qt5.2.0 和 MSVC2012 开发 QtQuick 应用程序。我想制作一个从 qml 调用 C++ 函数的应用程序。基于这篇文章。当我将 QtQuick2ApplicationViewer 用于 QtQuick2 应用程序时,它可以工作。

[主.cpp]

#include <QtGui/QGuiApplication>
#include "qtquick2applicationviewer.h"
#include <QQmlContext>
#include "testclass.h"
int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);
    TestClass cppObj;
    QtQuick2ApplicationViewer viewer;
    viewer.rootContext()->setContextProperty("cppObj", &cppObj);
    viewer.setMainQmlFile(QStringLiteral("qml/QtQuick2CppTest/main.qml"));
    viewer.showExpanded();

    return app.exec();
}

对于 QtQuick Controls 应用程序,它需要 QtQuick2Con​​trolsApplicationViewer 而不是 QtQuick2ApplicationViewer。但它没有方法“rootContext()”。

在这种情况下,我应该如何绑定 QML 和 C++ 类。

4

1 回答 1

1

我从 Qt 项目论坛得到了解决方法。

于 2014-01-25T22:02:07.583 回答