2014-01-25 6 views
1

현재 QtQureick3.0.0, Qt5.2.0 및 MSVC2012로 QtQuick 응용 프로그램을 개발 중입니다. qml에서 C++ 함수를 호출하는 응용 프로그램을 만들고 싶습니다. 기준. QtQuick2ApplicationViewer를 QtQuick2 응용 프로그램에 사용할 때 작동합니다.QtQuick2ControlsApplicationViewer에서 QML/C++ 클래스를 바인딩하는 방법

는 [MAIN.CPP] QtQuick 들어

#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(); 
} 

는 대신 QtQuick2ApplicationViewer의 QtQuick2ControlsApplicationViewer 필요 애플리케이션을 제어한다. 그러나 "rootContext()"메소드가 없습니다.

이 경우 QML 및 C++ 클래스를 어떻게 바인딩해야합니까?

답변