Приложения QML
QML — это декларативный язык, позволяющий описывать пользовательские интерфейсы в терминах визуальных компонентов и их взаимодействия. Это высокочитаемый язык, разработанный для динамичного соединения компонентов, и позволяющий легко повторно использовать и настраивать компоненты внутри пользовательского интерфейса. Используя модуль QtQuick, дизайнеры и разработчики могут легко создавать плавные анимированные пользовательские интерфейсы в QML и имеют возможность подключать эти интерфейсы к любым библиотекам C++ на стороне сервера.
Что такое QML?
QML — это спецификация пользовательского интерфейса и язык программирования. Он позволяет разработчикам и дизайнерам создавать высокопроизводительные, плавно анимированные и визуально привлекательные приложения. QML предлагает высокочитаемый декларативный синтаксис, похожий на JSON, с поддержкой императивных выражений JavaScript в сочетании с динамическими связываниями свойств.
Инфраструктура языка и движка QML предоставляется модулем Qt QML. Для получения подробной информации о языке QML, пожалуйста, обратитесь к документации модуля Qt QML.
На следующих страницах содержится более подробная информация о QML:
- Первые шаги с QML - начните использовать QML с этими примерами
- Создание проектов Qt Quick в Qt Creator
- Справочник по QML - справочная информация о конструкциях и функциях QML
- Рекомендации по программированию QML
- Словарь терминов QML
Что такое Qt Quick?
Qt Quick — это стандартная библиотека типов и функциональности для QML. Она включает визуальные типы, интерактивные типы, анимации, модели и представления, эффекты частиц и эффекты шейдеров. Разработчик приложений QML может получить доступ ко всей этой функциональности с помощью одной инструкции импорта.
Библиотека QML QtQuick предоставляется модулем Qt Quick. Для получения подробной информации о различных типах QML и других функциях, предоставляемых Qt Quick, обратитесь к документации модуля Qt Quick.
Пользовательские интерфейсы QML
Для создания или настройки графических пользовательских интерфейсов Qt Quick добавляет визуальные типы, типы анимации и другие типы QML в дополнение к стандартным типам QML из Qt QML. Qt Quick Designer интегрирован в Qt Creator и поддерживает QtQuick 2 начиная с версии Qt Creator 2.7 и выше.
- Визуальные типы в QML
- Реагирование на ввод пользователя в QML
- Анимации в QML
- Отображение текста в QML
- Макеты в QML
- Поддержка стилей и тем
- Интеграция JavaScript в QML
- Масштабируемость
Кнопки, меню и другие элементы управления
Для набора базовых элементов управления пользовательского интерфейса модуль Qt Quick Controls реализует несколько элементов управления, такие как кнопки, меню и представления. Эти элементы управления поставляются с несколькими встроенными стилями, которые можно использовать, а также поддерживают создание пользовательских стилей.
Специальные эффекты
Несколько модулей Qt предоставляют типы для создания специальных эффектов в приложениях. Соответствующие страницы содержат более подробную информацию об определенных применениях.
- Эффекты частиц
- Графические эффекты - для создания эффектов композиции изображений.
Просмотр веб-контента в приложениях QML
Типы QML, WebEngineView и WebView, отображают и визуализируют динамический веб-контент. Единственное различие между ними заключается в том, что последний использует родное веб-представление, если оно доступно. Оба типа могут загружать URL-адрес или строку HTML. Чтобы узнать больше о них и просмотреть примеры кода, обратитесь к документации Qt WebEngine и Qt WebView.
Датчики, жесты и сенсорные интерфейсы
Модуль Qt Sensors позволяет приложениям считывать информацию с датчиков, таких как акселерометры и датчики наклона. Существует общий API QML для разных платформ и он может быть расширен на C++.
- Типы QML Qt Sensors
- Примеры Qt Sensors
- Карта совместимости - перечисляет уровень поддержки для разных мобильных платформ
Мультимедийный контент
Модуль Qt Multimedia позволяет приложениям обрабатывать различные медиа-данные с помощью удобного набора типов QML. Эти типы QML могут быть расширены на C++.
-
Мультимедиа
- Обзор аудио
- Обзор видео
- Обзор камеры
- Обзор радио
- Qt Audio Engine - для воспроизведения 3D позиционного звука и управления контентом.
Мобильные устройства
Несколько модулей Qt предоставляют API QML для сетевых и мобильных устройств. Типы QML предоставляют доступ к устройствам с Bluetooth, Near-Field Communications (NFC) и GPS.
Дополнительную информацию можно найти на страницах Сети и подключение и Мобильные API.
Примеры кода и демонстрации
Чтобы узнать больше об использовании кода QML, есть несколько примеров кода, которые показывают, как используются типы QML. Кроме того, есть несколько демонстраций, которые показывают, как код QML используется в приложениях.
- Начало работы с программированием Qt Quick - учебное пособие, демонстрирующее создание простого текстового редактора QML.
- Примеры и учебные материалы Qt Quick
Расширенные темы разработки приложений
- Интеграция QML и C++
- Развертывание приложений QML
- Рекомендации по QML и Qt Quick
- Соображения и рекомендации по производительности
- Локализация и интернационализация
- Тестирование и отладка
Другие модули QML
Qt Quick предоставляет только базовые визуальные типы, и большая часть функциональности Qt экспонируется QML через другие модули. Если вам нужна функциональность этих модулей, следует изучить их документацию QML.
Все QML API по модулям содержит список всех модулей QML в Qt 5.
Связанные темы
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qmlapplications.html