En esta página

CheckDelegate QML Type

Delegado de elemento con un indicador de comprobación que puede activarse o desactivarse. Más...

Import Statement: import QtQuick.Controls
Inherits:

ItemDelegate

Propiedades

Descripción detallada

CheckDelegate presenta un elemento delegado que puede activarse (marcado) o desactivarse (sin marcar). Los delegados de verificación se utilizan normalmente para seleccionar una o varias opciones de un conjunto de opciones de una lista. Para conjuntos de opciones más pequeños, o para opciones que necesitan ser identificables de forma única, considere el uso de CheckBox en su lugar.

CheckDelegate hereda su API de ItemDelegate, que a su vez hereda de AbstractButton. Por ejemplo, puede establecer text, y reaccionar a clicks utilizando la API AbstractButton. El estado del delegado de comprobación puede establecerse con la propiedad checked.

Además de los estados comprobado y no comprobado, existe un tercer estado: parcialmente comprobado. El estado parcialmente comprobado puede activarse mediante la propiedad tristate. Este estado indica que el estado regular checked/unchecked no puede ser determinado; generalmente debido a otros estados que afectan al delegado check. Este estado es útil, por ejemplo, cuando se seleccionan varios nodos secundarios en una vista en árbol.

ListView {
    model: ["Option 1", "Option 2", "Option 3"]
    delegate: CheckDelegate {
        text: modelData
    }
}

Consulte también Personalización de CheckDelegate, Controles delegados y CheckBox.

Documentación de propiedades

checkState : enumeration

Esta propiedad determina el estado de comprobación del delegado de comprobación.

Estados disponibles:

ConstanteDescripción
Qt.UncheckedEl delegado no está chequeado.
Qt.PartiallyCheckedEl delegado está parcialmente comprobado. Este estado sólo se utiliza cuando tristate está activado.
Qt.CheckedEl delegado está marcado.

Véase también tristate y checked.

nextCheckState : function [since QtQuick.Controls 2.4 (Qt 5.11)]

Esta propiedad contiene una función de devolución de llamada a la que se llama para determinar el siguiente estado de comprobación cada vez que el delegado de comprobación es cambiado de forma interactiva por el usuario a través del tacto, el ratón o el teclado.

Por defecto, un delegado de comprobación normal alterna entre los estados Qt.Unchecked y Qt.Checked, y un delegado de comprobación triestatal alterna entre los estados Qt.Unchecked, Qt.PartiallyChecked y Qt.Checked.

La función de retrollamada nextCheckState puede anular el comportamiento predeterminado. El siguiente ejemplo implementa un delegado de comprobación tri-state que puede presentar un estado parcialmente comprobado dependiendo de condiciones externas, pero que nunca cicla al estado parcialmente comprobado cuando el usuario lo conmuta interactivamente.

CheckDelegate {
    tristate: true
    checkState: allChildrenChecked ? Qt.Checked :
                   anyChildChecked ? Qt.PartiallyChecked : Qt.Unchecked

    nextCheckState: function() {
        if (checkState === Qt.Checked)
            return Qt.Unchecked
        else
            return Qt.Checked
    }
}

Esta propiedad se introdujo en QtQuick.Controls 2.4 (Qt 5.11).

tristate : bool

Esta propiedad determina si el delegado de comprobación tiene tres estados.

En la animación siguiente, el primer checkdelegate tiene tres estados:

El valor por defecto es false, es decir, el delegado sólo tiene dos estados.

© 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.