Qt QML
Модуль Qt QML предоставляет фреймворк для разработки приложений и библиотек с помощью языка QML. Он определяет и реализует инфраструктуру языка и движка, а также предоставляет API, позволяющий разработчикам приложений расширять язык QML с помощью пользовательских типов и интегрировать код QML с JavaScript и C++. Модуль Qt QML предоставляет как API QML, так и API C++.
Обратите внимание, что, хотя модуль Qt QML предоставляет язык и инфраструктуру для приложений QML, модуль Qt Quick предоставляет множество визуальных компонентов, поддержку модели-представления, фреймворк для анимации и многое другое для создания пользовательских интерфейсов.
Для тех, кто новичок в QML и Qt Quick, пожалуйста, обратитесь к Приложениям QML для ознакомления с разработкой приложений QML.
Использование модуля
API QML
Типы QML в Qt QML доступны через импорт QtQml. Чтобы использовать типы, добавьте следующую инструкцию импорта в ваш файл .qml:
import QtQml
API C++
Использование API C++ требует подключения к библиотеке модуля, либо напрямую, либо через другие зависимости. Несколько инструментов сборки имеют специальную поддержку для этого, включая CMake и qmake.
Сборка с помощью CMake
Используйте команду find_package() для поиска необходимых компонентов модуля в пакете Qt6:
find_package(Qt6 COMPONENTS Qml REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Qml)
См. также обзор Сборки с помощью CMake.
Сборка с помощью qmake
Для настройки модуля для сборки с помощью qmake, добавьте модуль в качестве значения переменной QT в файле проекта .pro:
QT += qml
QML и типы QML
Модуль Qt QML содержит фреймворк QML и важные типы QML, используемые в приложениях. Конструкции QML описаны в Справочнике QML.
В дополнение к Основным типам QML, модуль поставляется со следующими типами объектов QML:
Глобальный объект Qt предоставляет полезные перечисления и функции для различных типов QML.
Списки и модели
В Qt 5.1 новые типы моделей перемещены в подмодуль, QtQml.Models. Страница Модели Qt QML содержит более подробную информацию.
Средства JavaScript для приложений QML
Выражения JavaScript позволяют коду QML содержать логику приложения. Qt QML предоставляет фреймворк для выполнения выражений JavaScript в QML и из C++.
Эти разделы взяты из Справочника QML.
- Интеграция QML и JavaScript
- Использование выражений JavaScript с QML
- Динамическое создание объектов QML из JavaScript
- Определение ресурсов JavaScript в QML
- Импорт ресурсов JavaScript в QML
- Окружение JavaScript хоста
Интеграция QML с приложениями C++
Модуль также предоставляет фреймворк для запуска приложений QML. Фреймворк QML позволяет коду QML содержать выражения JavaScript и взаимодействовать с кодом C++.
Лицензии и авторские права
Qt QML доступен по коммерческим лицензиям от The Qt Company. Кроме того, он доступен по лицензиям свободного программного обеспечения. Начиная с Qt 5.4, эти лицензии свободного программного обеспечения являются GNU Lesser General Public License, version 3, или GNU General Public License, version 2. Подробнее см. Лицензирование Qt.
Кроме того, Qt QML в Qt 6.2.2 может содержать модули третьих сторон по следующим разрешительным лицензиям:
Лицензия BSD 2-пунктная ("упрощенная") |
Руководства и другая информация
Дополнительная информация для написания приложений QML:
- Справочник QML
- Приложения QML - важная информация для разработки приложений с помощью QML и Qt Quick
- Qt Quick - модуль, предоставляющий набор типов QML и классов C++ для создания пользовательских интерфейсов и приложений с помощью QML
- Кэш QML на диске - как настроить, если и где движок QML кэширует результаты компиляции.
Справочник
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qtqml-index.html