Приложения QML
QML — это декларативный язык, позволяющий описывать пользовательские интерфейсы в терминах их визуальных компонентов и взаимодействия между ними. Это высокочитаемый язык, разработанный для динамичного подключения компонентов, позволяющий легко повторно использовать и настраивать компоненты в пользовательском интерфейсе. Используя модуль QtQuick, дизайнеры и разработчики могут легко создавать плавные анимированные пользовательские интерфейсы в QML и имеют возможность подключения этих интерфейсов к любым библиотекам C++ back-end.
Что такое QML?
QML — это спецификация пользовательского интерфейса и язык программирования. Он позволяет разработчикам и дизайнерам создавать высокопроизводительные, плавно анимированные и визуально привлекательные приложения. QML предлагает высокочитаемый декларативный синтаксис, похожий на JSON, с поддержкой императивных выражений JavaScript, объединенных с динамическими связями свойств.
import QtQuick
import QtQuick.Controls
ApplicationWindow {
width: 400
height: 400
visible: true
Button {
id: button
text: "A Special Button"
background: Rectangle {
implicitWidth: 100
implicitHeight: 40
color: button.down ? "#d6d6d6" : "#f6f6f6"
border.color: "#26282a"
border.width: 1
radius: 4
}
}
} Инфраструктура языка и движка QML предоставляется модулем Qt QML. Для получения подробной информации о языке QML, пожалуйста, обратитесь к документации модуля Qt QML.
Следующие страницы содержат дополнительную информацию о QML:
- Первые шаги с QML — начните использовать QML с помощью этих примеров
- Создание проектов Qt Quick в Qt Creator
- Справочник по QML — справочная информация о конструкциях и функциях QML
- Рекомендации по написанию кода QML
- Словарь терминов QML
- Все QML API по модулям
Что такое Qt Quick?
Qt Quick — это стандартная библиотека типов и функциональности QML для QML. Она включает визуальные типы, интерактивные типы, анимации, модели и представления, эффекты частиц и эффекты шейдеров. Разработчик QML-приложений может получить доступ ко всей этой функциональности с помощью одной инструкции импорта.
Библиотека QtQuick QML предоставляется модулем Qt Quick. Для получения подробной информации о различных типах QML и других функциях, предоставляемых Qt Quick, пожалуйста, обратитесь к документации модуля Qt Quick. Qt Quick добавляет визуальные типы, типы анимации и другие типы QML в дополнение к стандартным типам QML из Qt QML.
- Визуальные типы в QML
- Обработка пользовательского ввода в QML
- Анимации в QML
- Вывод текста в QML
- Макеты в QML
- Поддержка стилей и тем
- Интеграция JavaScript в QML
Кнопки, меню и другие элементы управления
Для набора элементов управления пользовательского интерфейса модуль Qt Quick Controls реализует несколько элементов управления, таких как кнопки, меню и представления. Эти элементы управления поставляются с несколькими встроенными стилями, которые можно использовать, а также поддерживают создание пользовательских стилей.
Проекты Qt Quick
Qt Creator настраивает среды проектов для следующих типов приложений Qt Quick:
- Прокрутка — навигация на основе прокрутки
- Стек — навигация на основе стека
- Свайп — приложение на основе страниц со свайп-навигацией
- Python — проекты Qt для Python могут иметь QML интерфейсы и поддерживаются Qt Creator
Для получения дополнительной информации о приложениях Qt Quick посетите следующие страницы:
- Создание проектов Qt Quick
- Инструменты проектирования — инструменты для проектирования пользовательских интерфейсов
Примеры кода и демонстрации
Чтобы узнать больше о применении кода QML, есть несколько примеров кода, демонстрирующих использование типов QML. Кроме того, есть несколько демонстраций, показывающих использование кода QML в приложениях.
- Начало работы с программированием Qt Quick — учебник, демонстрирующий создание простого QML текстового редактора.
- Примеры и учебники Qt Quick
Дополнительные темы разработки приложений
- Интеграция QML и C++
- Развертывание приложений QML
- Рекомендации по QML и Qt Quick
- Учет производительности и рекомендации
- Локализация и интернационализация
- Тестирование и отладка
Связанные темы
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qmlapplications.html