Начало работы с Qt Quick Controls 2
Ниже приведен пример QML-файла, использующего элементы управления:
import QtQuick 2.6
import QtQuick.Controls 2.1
ApplicationWindow {
title: "My Application"
width: 640
height: 480
visible: true
Button {
text: "Push Me"
anchors.centerIn: parent
}
} Настройка элементов управления из C++
Хотя QQuickView традиционно использовался для отображения QML-файлов в приложении C++, это означает, что вы можете задавать свойства окна только из C++.
С Qt Quick Controls 2 объявите ApplicationWindow корневым элементом вашего приложения и запустите его с помощью QQmlApplicationEngine. Это гарантирует, что вы можете управлять свойствами окна верхнего уровня из QML.
Ниже приведен пример исходного файла, использующего элементы управления:
#include <QGuiApplication>
#include <QQmlApplicationEngine>
int main(int argc, char *argv[])
{
QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
} Использование данных C++ из QML
Если вам нужно зарегистрировать класс C++ для использования из QML, вы можете вызвать qmlRegisterType() перед объявлением вашего QQmlApplicationEngine. Дополнительную информацию см. в разделе Определение типов QML из C++.
Если вам нужно предоставить данные компонентам QML, необходимо сделать их доступными в контексте текущего QML-движка. Дополнительную информацию см. в разделе QQmlContext.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qtquickcontrols2-gettingstarted.html