Spec-Zone.ru › Qt 5.12

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

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

import QtQuick 2.12
import QtQuick.Controls 2.12

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

Spec-Zone.ru

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