Тип QML ScrollIndicator
Вертикальный или горизонтальный неинтерактивный индикатор прокрутки. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.15 |
| С момента: | Qt 5.7 |
| Наследует: |
Свойства
- active : bool
- horizontal : bool
- minimumSize : real
- orientation : перечисление
- position : real
- size : real
- vertical : bool
- visualPosition : real
- visualSize : real
Присоединенные свойства
- horizontal : ScrollIndicator
- vertical : ScrollIndicator
Подробное описание
ScrollIndicator — это неинтерактивный индикатор, показывающий текущую позицию прокрутки. Индикатор прокрутки может быть либо вертикальным, либо горизонтальным и может быть присоединён к любому Flickable, такому как ListView и GridView.
Flickable {
// ...
ScrollIndicator.vertical: ScrollIndicator { }
} Присоединение ScrollIndicator к Flickable
Примечание: Когда ScrollIndicator присоединяется вертикально или горизонтально к Flickable, его геометрия и следующие свойства автоматически устанавливаются и обновляются соответствующим образом:
Присоединённый ScrollIndicator переродится в целевой Flickable. Вертикально присоединённый ScrollIndicator изменяет свой размер на высоту Flickable и позиционируется по бокам от него в зависимости от направления выравнивания. Горизонтально присоединённый ScrollIndicator изменяет свой размер на ширину Flickable и позиционируется внизу. Автоматическое управление геометрией можно отключить, указав другой родитель для присоединённого ScrollIndicator. Это может быть полезно, например, если ScrollIndicator должен быть размещён вне Flickable, который используется для обрезки. Это показано в следующем примере:
Flickable {
id: flickable
clip: true
// ...
ScrollIndicator.vertical: ScrollIndicator {
parent: flickable.parent
anchors.top: flickable.top
anchors.left: flickable.right
anchors.bottom: flickable.bottom
}
} Связывание активного состояния горизонтальных и вертикальных индикаторов прокрутки
Горизонтальный и вертикальный индикаторы прокрутки по умолчанию не разделяют состояние active друг с другом. Чтобы сохранить оба индикатора видимыми во время прокрутки в любом направлении, установите двустороннюю привязку между активными состояниями, как показано в следующем примере:
Flickable {
anchors.fill: parent
contentWidth: parent.width * 2
contentHeight: parent.height * 2
ScrollIndicator.horizontal: ScrollIndicator { id: hbar; active: vbar.active }
ScrollIndicator.vertical: ScrollIndicator { id: vbar; active: hbar.active }
} Неприсоединённые индикаторы прокрутки
Можно создать экземпляр ScrollIndicator без использования API присоединённых свойств. Это полезно, когда поведение присоединённого индикатора прокрутки недостаточно или Flickable не используется. В следующем примере горизонтальный и вертикальный индикаторы прокрутки используются для указания того, насколько пользователь прокрутил текст (с использованием MouseArea вместо Flickable):
Rectangle {
id: frame
clip: true
width: 160
height: 160
border.color: "black"
anchors.centerIn: parent
Text {
id: content
text: "ABC"
font.pixelSize: 169
MouseArea {
id: mouseArea
drag.target: content
drag.minimumX: frame.width - width
drag.minimumY: frame.height - height
drag.maximumX: 0
drag.maximumY: 0
anchors.fill: content
}
}
ScrollIndicator {
id: verticalIndicator
active: mouseArea.pressed
orientation: Qt.Vertical
size: frame.height / content.height
position: -content.y / content.height
anchors { top: parent.top; right: parent.right; bottom: parent.bottom }
}
ScrollIndicator {
id: horizontalIndicator
active: mouseArea.pressed
orientation: Qt.Horizontal
size: frame.width / content.width
position: -content.x / content.width
anchors { left: parent.left; right: parent.right; bottom: parent.bottom }
}
} См. также ScrollBar, Настройка ScrollIndicator и Индикаторные элементы управления.
Документация по свойствам
active : bool
Это свойство указывает, активен ли индикатор, то есть когда присоединённый Flickable находится в движении.
Можно сохранить оба горизонтальных и вертикальных индикатора видимыми при прокрутке в любом направлении.
Это свойство автоматически устанавливается, когда индикатор прокрутки присоединён к flickable.
[только для чтения] horizontal : bool
Это свойство указывает, является ли индикатор прокрутки горизонтальным.
Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).
См. также orientation.
minimumSize : real
Это свойство содержит минимальный размер индикатора, масштабированный к 0.0 - 1.0.
Это свойство было введено в QtQuick.Controls 2.4 (Qt 5.11).
См. также size, visualSize и visualPosition.
orientation : перечисление
Это свойство содержит ориентацию индикатора.
Возможные значения:
| Постоянная | Описание |
|---|---|
Qt.Horizontal |
Горизонтальный |
Qt.Vertical |
Вертикальный (по умолчанию) |
Это свойство автоматически устанавливается, когда индикатор прокрутки присоединён к flickable.
См. также horizontal и vertical.
position : real
Это свойство содержит позицию индикатора, масштабированную к 0.0 - 1.0.
Это свойство автоматически устанавливается, когда индикатор прокрутки присоединён к flickable.
См. также Flickable::visibleArea и visualPosition.
size : real
Это свойство содержит размер индикатора, масштабированный к 0.0 - 1.0.
Это свойство автоматически устанавливается, когда индикатор прокрутки присоединён к flickable.
См. также Flickable::visibleArea, minimumSize и visualSize.
[только для чтения] vertical : bool
Это свойство указывает, является ли индикатор прокрутки вертикальным.
Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).
См. также orientation.
visualPosition : real
Это свойство содержит эффективную визуальную позицию индикатора, которая может быть ограничена минимальным размером.
Это свойство было введено в QtQuick.Controls 2.4 (Qt 5.11).
См. также position и minimumSize.
visualSize : real
Это свойство содержит эффективный визуальный размер индикатора, который может быть ограничен минимальным размером.
Это свойство было введено в QtQuick.Controls 2.4 (Qt 5.11).
См. также size и minimumSize.
Документация по присоединённым свойствам
ScrollIndicator.horizontal : ScrollIndicator
Это свойство присоединяет горизонтальный индикатор прокрутки к Flickable.
Flickable {
contentWidth: 2000
ScrollIndicator.horizontal: ScrollIndicator { }
} См. такжеПрисоединение ScrollIndicator к Flickable.
ScrollIndicator.vertical : ScrollIndicator
Это свойство прикрепляет вертикальную полосу прокрутки к Flickable.
Flickable {
contentHeight: 2000
ScrollIndicator.vertical: ScrollIndicator { }
} См. также Присоединение ScrollIndicator к Flickable.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtquick-controls2-scrollindicator.html