ScrollBar QML Type

An interactive scroll bar control. More...

Import Statement: import QtQuick.Controls 2.0
Since: Qt 5.7
Inherits:

Control

Properties

Attached Properties

Methods

Detailed Description

ScrollBar is an interactive bar that can be used to scroll to a specific position. A scroll bar can be either vertical or horizontal, and can be attached to any Flickable, such as ListView and GridView.

Flickable {
    // ...
    ScrollBar.vertical: ScrollBar { }
}

Note: When ScrollBar is attached vertically or horizontally to a Flickable, its geometry and the following properties are automatically set and updated as appropriate:

Notice that ScrollBar does not filter key events of the Flickable it is attached to. The following example illustrates how to implement scrolling with up and down keys:

Flickable {
    focus: true

    Keys.onUpPressed: scrollBar.decrease()
    Keys.onDownPressed: scrollBar.increase()

    ScrollBar.vertical: ScrollBar { id: scrollBar }
}

Horizontal and vertical scroll bars do not share the active state with each other by default. In order to keep both bars visible whilst scrolling to either direction, establish a two-way binding between the active states as presented by the following example:

Flickable {
    anchors.fill: parent

    contentWidth: parent.width * 2
    contentHeight: parent.height * 2

    ScrollBar.horizontal: ScrollBar { id: hbar; active: vbar.active }
    ScrollBar.vertical: ScrollBar { id: vbar; active: hbar.active }
}

See also ScrollIndicator, Customizing ScrollBar, and Indicator Controls.

Property Documentation

active : bool

This property holds whether the scroll bar is active, i.e. when it's pressed or the attached Flickable is moving.


orientation : enumeration

This property holds the orientation of the scroll bar.

Possible values:

ConstantDescription
Qt.HorizontalHorizontal
Qt.VerticalVertical (default)

position : real

This property holds the position of the scroll bar, scaled to 0.0 - 1.0.

See also Flickable::visibleArea.


pressed : bool

This property holds whether the scroll bar is pressed.


size : real

This property holds the size of the scroll bar, scaled to 0.0 - 1.0.

See also Flickable::visibleArea.


stepSize : real

This property holds the step size. The default value is 0.0.

See also increase() and decrease().


Attached Property Documentation

ScrollBar.horizontal : ScrollBar

This property attaches a horizontal scroll bar to a Flickable.

Flickable {
    contentWidth: 2000
    ScrollBar.horizontal: ScrollBar { }
}

ScrollBar.vertical : ScrollBar

This property attaches a vertical scroll bar to a Flickable.

Flickable {
    contentHeight: 2000
    ScrollBar.vertical: ScrollBar { }
}

Method Documentation

void decrease()

Decreases the position by stepSize or 0.1 if stepSize is 0.0.

See also stepSize.


void increase()

Increases the position by stepSize or 0.1 if stepSize is 0.0.

See also stepSize.


© 2016 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.