Тип QML ScrollIndicator
Вертикальный или горизонтальный неинтерактивный индикатор прокрутки. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 2.0 |
| С момента: | 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.0/qml-qtquick-controls2-scrollindicator.html