Spec-Zone.ru › Qt 6.0

Тип QML ScrollIndicator

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

Заявление об импорте: import QtQuick.Controls 2.0
С момента: 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.

[только для чтения, начиная с 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

Spec-Zone.ru

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