Spec-Zone.ru › Qt 5.13

Начало работы с Qt Quick Controls 2

Вот пример QML-файла, использующего элементы управления:

import QtQuick 2.13
import QtQuick.Controls 2.13

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.13/qtquickcontrols2-gettingstarted.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API