Приложения 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 реализует несколько элементов управления, таких как кнопки, меню и представления. Эти элементы управления имитируют поведение, характерное для разных платформ, таких как Windows, macOS и Linux.
Вторая группа элементов управления пользовательского интерфейса, Qt Quick Controls 2, была разработана для использования на встроенных системах, где аппаратные ресурсы ограничены. Для сравнения двух наборов элементов управления см. Сравнение 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.
Все API QML по модулям содержит список всех модулей QML в Qt 5.
Связанные темы
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qmlapplications.html