假设我们有一个非常简单的 QML 文件,如下所示:
import QtQuick 2.0
Rectangle {
width: 800
height: 600
color: '#000'
Text {
text: qsTr("Hi all")
anchors.centerIn: parent
}
}
QML 文件与 QtQuick2ApplicationViewer 帮助类一起加载,如下所示:
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/MyApp/Login/Window.qml"));
viewer.showFullScreen();
例如,如果我想将 Rectangle 的颜色从 C++ 更改为白色,我应该如何进行。我的猜测是:
QQuickItem *window = viewer.rootObject();
window->setProperty("color", "#fff");
但所做的只是以下编译器错误:
invalid use of incomplete type 'struct QQuickItem'
forward declaration of 'struct QQuickItem'