ScrollView QML Type
Vue défilante. Plus d'informations...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
Propriétés
- contentChildren : list<Item>
- contentData : list<QtObject>
- effectiveScrollBarHeight : real
(since 6.6) - effectiveScrollBarWidth : real
(since 6.6)
Description détaillée
ScrollView permet de faire défiler un contenu défini par l'utilisateur. Il peut être utilisé pour remplacer un site Flickable ou pour décorer un site existant.

Le premier exemple montre l'utilisation la plus simple de ScrollView.
ScrollView { width: 200 height: 200 Label { text: "ABC" font.pixelSize: 224 } }
Le deuxième exemple illustre l'utilisation d'un Flickable existant, c'est-à-dire un ListView.
ScrollView { width: 200 height: 200 ListView { model: 20 delegate: ItemDelegate { text: "Item " + index required property int index } } }
Note : Depuis Qt-6.0, ScrollView clippe automatiquement son contenu si vous n'utilisez pas un Flickable comme enfant. Si vous ne le souhaitez pas, vous pouvez placer votre propre Flickable en tant qu'enfant et contrôler explicitement la propriété clip du Flickable.
Dimensionnement
Comme pour le Flickable, il y a plusieurs choses à garder à l'esprit lors de l'utilisation du ScrollView :
- Si un seul élément est utilisé dans un ScrollView, la taille du contenu est automatiquement calculée sur la base de la taille implicite de l'élément qu'il contient. Toutefois, si plusieurs éléments sont utilisés (ou si aucune taille implicite n'est fournie), les propriétés contentWidth et contentHeight doivent être réglées sur la taille combinée des éléments qu'elles contiennent.
- Si la taille du contenu est inférieure ou égale à la taille du ScrollView, il ne sera pas possible de le faire défiler.
- Si vous souhaitez que le ScrollView ne défile que verticalement, vous pouvez lier contentWidth à availableWidth (et vice versa pour contentHeight). Cela permettra au contenu de remplir tout l'espace disponible horizontalement à l'intérieur du ScrollView, en tenant compte de tout rembourrage ou barre de défilement.
Barres de défilement
Les barres de défilement horizontales et verticales sont accessibles et personnalisables à l'aide des propriétés attachées ScrollBar.horizontal et ScrollBar.vertical. L'exemple suivant ajuste les politiques des barres de défilement de manière à ce que la barre de défilement horizontale soit toujours désactivée et la barre de défilement verticale toujours activée.
ScrollView { // ... ScrollBar.horizontal.policy: ScrollBar.AlwaysOff ScrollBar.vertical.policy: ScrollBar.AlwaysOn }
Interaction tactile ou souris
Au toucher, ScrollView active le flicage et rend les barres de défilement non interactives.
En cas d'interaction avec une souris, le clignement est désactivé et les barres de défilement sont interactives.
Les barres de défilement peuvent être rendues interactives au toucher, ou non interactives en cas d'interaction avec un périphérique à souris, en définissant la propriété interactive explicitement à true ou false, respectivement.
ScrollView { // ... ScrollBar.horizontal.interactive: true ScrollBar.vertical.interactive: true }
Variations de la taille des délégués
Des délégués de taille variable peuvent conduire ScrollBar à "sauter" lorsque de nouveaux délégués sont chargés dans la vue. Pour cette raison, il est recommandé d'avoir des délégués de taille égale. Voir Variable Delegate Size and Section Labels pour plus d'informations.
Voir également ScrollBar, ScrollIndicator, Personnaliser ScrollView, les contrôles de conteneurs et la gestion du focus dans les contrôles Qt Quick .
Property Documentation
contentChildren : list<Item>
Cette propriété contient la liste des enfants du contenu.
La liste contient tous les éléments qui ont été déclarés en QML en tant qu'enfants de la vue.
Remarque : contrairement à contentData, contentChildren n'inclut pas les objets QML non visuels.
Voir également Item::children et contentData.
contentData : list<QtObject> [default]
Cette propriété contient la liste des données de contenu.
La liste contient tous les objets qui ont été déclarés en QML comme enfants de la vue.
Remarque : contrairement à contentChildren, contentData inclut des objets QML non visuels.
Voir également Item::data et contentChildren.
effectiveScrollBarHeight : real [since 6.6]
Cette propriété définit la hauteur effective de la barre de défilement horizontale. Lorsque la barre de défilement est visible, cette propriété correspond à la hauteur actuelle de la barre de défilement. Lorsque la barre de défilement n'est pas visible ou que sa politique est définie sur QQuickScrollBar::AlwaysOff, cette propriété est 0.
Cette propriété a été introduite dans Qt 6.6.
Voir également ScrollBar::policy.
effectiveScrollBarWidth : real [since 6.6]
Cette propriété définit la largeur effective de la barre de défilement verticale. Lorsque la barre de défilement est visible, cette propriété correspond à la largeur actuelle de la barre de défilement. Lorsque la barre de défilement n'est pas visible ou que sa politique est définie sur QQuickScrollBar::AlwaysOff, cette propriété est 0.
Cette propriété a été introduite dans Qt 6.6.
Voir également ScrollBar::policy.
© 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.