Тип QML DragHandler
Обработчик перетаскивания. Подробнее...
| Заявление об импорте: | import QtQuick 2.12 |
| Наследует: |
Свойства
- translation : QVector2D
-
xAxis
- xAxis.minimum : real
- xAxis.maximum : real
- xAxis.enabled : bool
-
yAxis
- yAxis.minimum : real
- yAxis.maximum : real
- yAxis.enabled : bool
Подробное описание
DragHandler — это обработчик, используемый для интерактивного перемещения элемента. Как и другие обработчики ввода, по умолчанию он полностью функционален и управляет своим target.
import QtQuick 2.12
Rectangle {
width: 100
height: 100
color: "lightsteelblue"
DragHandler { }
} Он имеет свойства для ограничения диапазона перетаскивания.
Если он объявлен внутри одного элемента, но присвоен другому target, то он обрабатывает события в пределах границ элемента parent, но управляет элементом target вместо него:
import QtQuick 2.12
Item {
width: 640
height: 480
Rectangle {
id: feedback
border.color: "red"
width: Math.max(10, handler.centroid.ellipseDiameters.width)
height: Math.max(10, handler.centroid.ellipseDiameters.height)
radius: Math.max(width, height) / 2
visible: handler.active
}
DragHandler {
id: handler
target: feedback
}
} Третий способ использования — установить target в null и каким-либо другим способом реагировать на изменения свойств:
import QtQuick 2.12
Item {
width: 640
height: 480
DragHandler {
id: handler
target: null
}
Text {
color: handler.active ? "darkgreen" : "black"
text: handler.centroid.centroid.x.toFixed(1) + "," + handler.centroid.position.y.toFixed(1)
x: handler.centroid.position.x - width / 2
y: handler.centroid.position.y - height
}
} Если minimumPointCount и maximumPointCount установлены на значения больше 1, пользователю потребуется перетащить столько пальцев в одном направлении, чтобы начать перетаскивание. Жест перетаскивания с несколькими пальцами может быть обнаружен независимо как от (по умолчанию) жеста перетаскивания одним пальцем DragHandler, так и от PinchHandler на том же элементе, и таким образом может быть использован для настройки какой-либо другой функции независимо от обычного поведения pinch: например, для настройки преобразования наклона или настройки какого-либо другого числового значения, если target установлено в null. Но если target — это элемент, centroid — это точка, в которой начинается перетаскивание, и в которую будет перемещён target (с учётом ограничений).
В настоящее время поддержка перетаскивания и перемещения не реализована.
Документация по свойствам
[только для чтения] translation : QVector2D
Смещение с начала жеста.
xAxis.minimum : real
xAxis контролирует ограничения для перетаскивания по горизонтали.
minimum — это минимальное допустимое значение x, которое будет применено к target. maximum — это максимальное допустимое значение x, которое будет применено к target. Если enabled равно true, перетаскивание по горизонтали разрешено.
yAxis.minimum : real
yAxis контролирует ограничения для перетаскивания по вертикали.
minimum — это минимальное допустимое значение y, которое будет применено к target. maximum — это максимальное допустимое значение y, которое будет применено к target. Если enabled равно true, перетаскивание по вертикали разрешено.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qml-qtquick-draghandler.html