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