ScrollIndicator QML Type
Indicateur de défilement vertical ou horizontal non interactif. En savoir plus...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
Propriétés
- active : bool
- horizontal : bool
(since QtQuick.Controls 2.3 (Qt 5.10)) - minimumSize : real
(since QtQuick.Controls 2.4 (Qt 5.11)) - orientation : enumeration
- position : real
- size : real
- vertical : bool
(since QtQuick.Controls 2.3 (Qt 5.10)) - visualPosition : real
(since QtQuick.Controls 2.4 (Qt 5.11)) - visualSize : real
(since QtQuick.Controls 2.4 (Qt 5.11))
Propriétés associées
- horizontal : ScrollIndicator
- vertical : ScrollIndicator
Description détaillée
ScrollIndicator est un indicateur non interactif qui indique la position actuelle de défilement. Un indicateur de défilement peut être soit vertical soit horizontal, et peut être associé à n'importe quel Flickable, tel que ListView et GridView.
Flickable {
// ...
ScrollIndicator.vertical: ScrollIndicator { }
}Associer un ScrollIndicator à un Flickable
Remarque : lorsque ScrollIndicator est associé vertically ou horizontally à un Flickable, sa géométrie et les propriétés suivantes sont automatiquement définies et mises à jour comme il convient :
Un ScrollIndicator associé se rattache au Flickable cible. Un ScrollIndicator associé verticalement s'adapte à la hauteur du Flickable et se positionne de part et d'autre de celui-ci en fonction de l'layout direction. Un ScrollIndicator associé horizontalement s'adapte à la largeur du Flickable et se positionne en bas de celui-ci. La gestion automatique de la géométrie peut être désactivée en spécifiant un autre parent pour le ScrollIndicator associé. Cela peut s’avérer utile, par exemple, si le ScrollIndicator doit être placé à l’extérieur d’un Flickable de découpage. L’exemple suivant illustre cette situation :
Flickable {
id: flickable
clip: true
// ...
ScrollIndicator.vertical: ScrollIndicator {
parent: flickable.parent
anchors.top: flickable.top
anchors.left: flickable.right
anchors.bottom: flickable.bottom
}
}Liaison de l'état actif des indicateurs de défilement horizontaux et verticaux
Par défaut, les indicateurs de défilement horizontaux et verticaux ne partagent pas l'état « active » entre eux. Afin de maintenir les deux indicateurs visibles lors du défilement dans l'une ou l'autre direction, établissez une liaison bidirectionnelle entre les états actifs, comme le montre l'exemple suivant :
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 }
}Indicateurs de défilement non attachés
Il est possible de créer une instance de ScrollIndicator sans utiliser l’API des propriétés attachées. Cela s’avère utile lorsque le comportement de l’indicateur de défilement attaché n’est pas suffisant ou qu’aucun « Flickable » n’est utilisé. Dans l’exemple suivant, des indicateurs de défilement horizontaux et verticaux sont utilisés pour indiquer jusqu’où l’utilisateur a fait défiler le texte (en utilisant MouseArea au lieu de 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 }
}
}
Tailles variables des délégués
Des tailles de délégués variables peuvent entraîner des « sauts » de l’indicateur de défilement lorsque de nouveaux délégués sont chargés dans la vue. Il est donc recommandé d’utiliser des délégués de taille identique. Voir Variable Delegate Size and Section Labels pour plus d’informations.
Voir également ScrollBar, Personnalisation de ScrollIndicator et Contrôles d'indicateur.
Documentation sur les propriétés
active : bool
Cette propriété s'applique que l'indicateur soit actif ou non, c'est-à-dire lorsque le Flickable associé est en mode « moving ».
Il est possible de conserver l'both horizontal and vertical indicators visible e tout en faisant défiler dans l'une ou l'autre direction.
Cette propriété est automatiquement définie lorsque l'indicateur de défilement est sur « attached to a flickable ».
horizontal : bool [read-only, since QtQuick.Controls 2.3 (Qt 5.10)]
Cette propriété indique si l'indicateur de défilement est horizontal.
Cette propriété a été introduite dans QtQuick.Controls 2.3 (Qt 5.10).
Voir également orientation.
minimumSize : real [since QtQuick.Controls 2.4 (Qt 5.11)]
Cette propriété contient la taille minimale de l'indicateur, mise à l'échelle selon la formule suivante : 0.0 - 1.0.
Cette propriété a été introduite dans QtQuick.Controls 2.4 (Qt 5.11).
Voir également size, visualSize et visualPosition.
orientation : enumeration
Cette propriété définit l'orientation de l'indicateur.
Valeurs possibles :
| Constante | Description |
|---|---|
Qt.Horizontal | Horizontale |
Qt.Vertical | Verticale (par défaut) |
Cette propriété est définie automatiquement lorsque l'indicateur de défilement est attached to a flickable.
Voir également horizontal et vertical.
position : real
Cette propriété contient la position de l'indicateur, mise à l'échelle selon la valeur « 0.0 - 1.0 ».
Cette propriété est définie automatiquement lorsque l'indicateur de défilement est attached to a flickable.
Voir également Flickable::visibleArea et visualPosition.
size : real
Cette propriété contient la taille de l'indicateur, mise à l'échelle selon la valeur « 0.0 - 1.0 ».
Cette propriété est définie automatiquement lorsque l'indicateur de défilement est « attached to a flickable ».
Voir également Flickable::visibleArea, minimumSize et visualSize.
vertical : bool [read-only, since QtQuick.Controls 2.3 (Qt 5.10)]
Cette propriété indique si l'indicateur de défilement est vertical.
Cette propriété a été introduite dans QtQuick.Controls 2.3 (Qt 5.10).
Voir également orientation.
visualPosition : real [since QtQuick.Controls 2.4 (Qt 5.11)]
Cette propriété contient la position visuelle effective de l'indicateur, qui peut être limitée par la propriété ` minimum size`.
Cette propriété a été introduite dans QtQuick.Controls 2.4 (Qt 5.11).
Voir également « position » et « minimumSize ».
visualSize : real [since QtQuick.Controls 2.4 (Qt 5.11)]
Cette propriété contient la taille visuelle effective de l'indicateur, qui peut être limitée par la propriété ` minimum size`.
Cette propriété a été introduite dans QtQuick.Controls 2.4 (Qt 5.11).
Voir également « size » et « minimumSize ».
Documentation sur les propriétés associées
ScrollIndicator.horizontal : ScrollIndicator [attached]
Cette propriété ajoute un indicateur de défilement horizontal à un élément « Flickable ».
Flickable {
contentWidth: 2000
ScrollIndicator.horizontal: ScrollIndicator { }
}Voir également Attaching ScrollIndicator to a Flickable.
ScrollIndicator.vertical : ScrollIndicator [attached]
Cette propriété ajoute un indicateur de défilement vertical à une balise Flickable.
Flickable {
contentHeight: 2000
ScrollIndicator.vertical: ScrollIndicator { }
}Voir également Attaching ScrollIndicator to a Flickable.
© 2026 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.