Тип QML ScrollIndicator
Вертикальный или горизонтальный неинтерактивный индикатор прокрутки. Подробнее...
| Оператор импорта: | import QtQuick.Controls |
| С тех пор: | 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.
[только для чтения, начиная с QtQuick.Controls 2.3 (Qt 5.10)] horizontal : bool
Это свойство определяет, является ли индикатор прокрутки горизонтальным.
Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).
См. также orientation.
[начиная с QtQuick.Controls 2.4 (Qt 5.11)] 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.
[только для чтения, начиная с QtQuick.Controls 2.3 (Qt 5.10)] vertical : bool
Это свойство определяет, является ли индикатор прокрутки вертикальным.
Это свойство было введено в QtQuick.Controls 2.3 (Qt 5.10).
См. также orientation.
[начиная с QtQuick.Controls 2.4 (Qt 5.11)] visualPosition : real
Это свойство содержит эффективную визуальную позицию индикатора, которая может быть ограничена минимальным размером.
Это свойство было введено в QtQuick.Controls 2.4 (Qt 5.11).
См. также position и minimumSize.
[начиная с QtQuick.Controls 2.4 (Qt 5.11)] 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-6.2/qml-qtquick-controls2-scrollindicator.html