Spec-Zone.ru › Qt 5.15

Тип QML ScrollIndicator

Вертикальный или горизонтальный неинтерактивный индикатор прокрутки. Подробнее...

Заявление об импорте: import QtQuick.Controls 2.15
С момента: Qt 5.7
Наследует:

Control

  • Список всех членов, включая унаследованные члены

Свойства

  • 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, его геометрия и следующие свойства автоматически устанавливаются и обновляются соответствующим образом:

  • orientation
  • position
  • size
  • active

Присоединённый 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API