Тип ScrollIndicator QML
Вертикальный или горизонтальный неинтерактивный индикатор прокрутки. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.14 |
| С тех пор: | 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 : enumeration
Это свойство содержит ориентацию индикатора.
Возможные значения:
| Постоянная | Описание |
|---|---|
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.14/qml-qtquick-controls2-scrollindicator.html