CheckBox QML Type
Case à cocher pouvant être activée ou désactivée. En savoir plus...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
Propriétés
- checkState : enumeration
- nextCheckState : function
(since QtQuick.Controls 2.4 (Qt 5.11)) - tristate : bool
Description détaillée
CheckBox présente un bouton d’option qui peut être activé (coché) ou désactivé (décoché). Les cases à cocher sont généralement utilisées pour sélectionner une ou plusieurs options parmi un ensemble d’options. Pour les ensembles d’options plus importants, tels que ceux figurant dans une liste, envisagez plutôt d’utiliser CheckDelegate.
CheckBox hérite de son API de AbstractButton. Par exemple, l'état de la case à cocher peut être défini à l'aide de la propriété checked.
Outre les états « coché » et « non coché », il existe un troisième état : « partiellement coché ». L'état « partiellement coché » peut être activé à l'aide de la propriété ` tristate `. Cet état indique que l'état habituel « coché » ou « non coché » ne peut pas être déterminé, généralement en raison d'autres états qui affectent la case à cocher. Cet état est utile lorsque plusieurs nœuds enfants sont sélectionnés dans une arborescence, par exemple.
ColumnLayout {
CheckBox {
checked: true
text: qsTr("First")
}
CheckBox {
text: qsTr("Second")
}
CheckBox {
checked: true
text: qsTr("Third")
}
}Les groupes de cases à cocher hiérarchiques peuvent être gérés à l’aide d’une propriété ` ButtonGroup` non exclusive.

L’exemple suivant illustre comment l’état de sélection combiné des nœuds enfants peut être lié à l’état de sélection de la case à cocher parente :
Column {
ButtonGroup {
id: childGroup
exclusive: false
checkState: parentBox.checkState
}
CheckBox {
id: parentBox
text: qsTr("Parent")
checkState: childGroup.checkState
}
CheckBox {
checked: true
text: qsTr("Child 1")
leftPadding: indicator.width
ButtonGroup.group: childGroup
}
CheckBox {
text: qsTr("Child 2")
leftPadding: indicator.width
ButtonGroup.group: childGroup
}
}Voir également Personnalisation des contrôlesCheckBox, ButtonGroup et Button.
Documentation sur les propriétés
checkState : enumeration
Cette propriété contient l'état de sélection de la case à cocher.
États disponibles :
| Constante | Description |
|---|---|
Qt.Unchecked | La case à cocher n'est pas cochée. |
Qt.PartiallyChecked | La case à cocher est partiellement cochée. Cet état n'est utilisé que lorsque l'option « tristate » est activée. |
Qt.Checked | La case à cocher est cochée. |
Voir aussi « tristate » et « checked ».
nextCheckState : function [since QtQuick.Controls 2.4 (Qt 5.11)]
Cette propriété contient une fonction de rappel qui est appelée pour déterminer l'état suivant de la case à cocher chaque fois que celle-ci est activée ou désactivée de manière interactive par l'utilisateur, que ce soit au toucher, à l'aide de la souris ou du clavier.
Par défaut, une case à cocher normale alterne entre les états « Qt.Unchecked » et « Qt.Checked », tandis qu’une case à cocher à trois états alterne entre les états « Qt.Unchecked », « Qt.PartiallyChecked » et « Qt.Checked ».
La fonction de rappel ` nextCheckState ` permet de remplacer le comportement par défaut. L’exemple suivant implémente une case à cocher à trois états capable d’afficher un état « partiellement coché » en fonction de conditions externes, mais qui ne passe jamais à cet état lorsqu’elle est activée ou désactivée de manière interactive par l’utilisateur.
CheckBox {
tristate: true
checkState: allChildrenChecked ? Qt.Checked :
anyChildChecked ? Qt.PartiallyChecked : Qt.Unchecked
nextCheckState: function() {
if (checkState === Qt.Checked)
return Qt.Unchecked
else
return Qt.Checked
}
}Cette propriété a été introduite dans QtQuick.Controls 2.4 (Qt 5.11).
tristate : bool
Cette propriété indique si la case à cocher est une case à cocher à trois états.
Dans l'animation ci-dessous, la première case à cocher est à trois états :
La valeur par défaut est « false », c'est-à-dire que la case à cocher ne dispose que de deux états.
© 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.