Обработчики ввода Qt Quick
Обработчики ввода Qt Quick представляют собой набор типов QML, используемых для обработки событий от устройств клавиатуры, сенсорного ввода, мыши и стилуса в пользовательском интерфейсе. В отличие от элементов обработки событий, таких как MouseArea и Flickable, обработчики ввода явно не являются визуальными, требуют меньше памяти и предназначены для использования в большем количестве: по одному экземпляру обработчика на каждый аспект взаимодействия. Каждый экземпляр обработчика ввода обрабатывает определенные события от имени своего parent элемента. Таким образом, визуальные и поведенческие аспекты лучше разделены, а поведение строится с помощью более мелкозернистой композиции.
В Qt 5.10 эти обработчики были введены в отдельном модуле Qt.labs.handlers. Сейчас они включены в Qt Quick начиная с версии 5.12. Существующее свойство Keys прикреплённое к элементу, аналогично по концепции, поэтому мы относим обработчики, ориентированные на устройства указания, плюс Keys как набор обработчиков ввода. В будущих версиях Qt ожидается предложить больше вариантов использования свойств, прикреплённых к элементу.
Обработчики ввода
Обработчик перетаскивания |
|
Обработчик наведения курсора мыши и планшета |
|
Поддержка навигации клавишами со стрелками |
|
Обеспечивает обработку клавиш для элементов |
|
Обработчик жестов масштабирования |
|
Обработчик реакции на одну точку касания |
|
Обработчик нажатий и щелчков |
|
Обработчик колеса мыши |
Основные возможности
Некоторые из ключевых особенностей:
- Обработка нажатий клавиш внутри фокусированного элемента
- Обработка жестов, таких как нажатие или перетаскивание, независимо от источника устройства
- Обработка жестов от разных типов устройств различными способами
- Каждый элемент может иметь неограниченное количество обработчиков
Связанная информация
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qtquickhandlers-index.html