En esta página

ControlStateStyle QML Type

Describe el estilo de un control en un estado determinado. Más...

Import Statement: import Qt.labs.StyleKit
Inherits:

ControlStyleProperties

Inherited By:

ControlStyle and CustomControl

Propiedades

Descripción detallada

ControlStateStyle describe el estilo de un control en un estado particular. Un ControlStyle hereda ControlStateStyle, ya que representa el estado normal - las propiedades establecidas directamente en un ControlStyle describen el aspecto del control cuando no hay ningún otro estado activo. Los cambios específicos de estado se establecen a través de estados anidados como pressed, hovered, y checked.

Los estados anidados no son mutuamente excluyentes. Varios estados pueden estar activos al mismo tiempo; por ejemplo, un botón puede estar pulsado y sobre él al mismo tiempo. Cuando hay varios estados activos, se aplican todas las modificaciones de estado correspondientes. Si se establece la misma propiedad en varios estados activos, los conflictos se resuelven siguiendo el siguiente orden de prioridad: pressed hovered , highlighted, focused, checked, vertical. Así, por ejemplo, pressed.background.color gana a checked.background.color si el control es a la vez pressed y checked.

El estado disabled es una excepción: no se puede interactuar con un control desactivado, por lo que los estados pressed, hovered, highlighted, y focused no se aplicarán. Sin embargo, disabled puede combinarse con estados como checked y vertical.

Cuanto más anidado esté un estado, más cualificado estará. Por ejemplo, hovered.pressed.background.color tiene prioridad sobre hovered.background.color cuando hovered y pressed están activos. El orden de anidamiento no importa: hovered.pressed y pressed.hovered son equivalentes. Sin embargo, si se utilizan ambas formas al mismo tiempo, no se sabe cuál de ellas gana.

También se puede utilizar un anidamiento más profundo de los estados para resolver conflictos. Si se establece la misma propiedad tanto en hovered como en checked, el orden de prioridad significa que gana el valor de hovered. Si prefieres que gane el valor comprobado, o utilizar un valor totalmente diferente en esa situación, puedes anular la propiedad en hovered.checked, que entonces tiene prioridad sobre ambos.

El siguiente fragmento muestra cómo dar estilo a un botón de forma diferente dependiendo de su estado:

button {
    text.color: "white"
    background.color: "cornflowerblue"

    pressed.background.color: "cadetblue"
    hovered.background.color: "dodgerblue"
    highlighted.background.color: "lightblue"
    focused.background.color: "lightskyblue"
    checked.background.color: "darkseagreen"
    disabled.background.color: "gray"

    // hovered.checked takes precedence over both hovered and checked
    hovered.checked.background.color: "mediumseagreen"

    hovered.checked {
        // Nested states are grouped properties, so you can use the compact
        // per-property form above, or structure them hierarchically for
        // better readability. Both forms are functionally equivalent.
        pressed {
            // hovered.checked.pressed takes precedence over hovered.checked
            background {
                color: "mediumaquamarine"
                scale: 0.95
            }
            text {
                bold: true
            }
        }
    }
}

Nota: No se garantiza que los tipos de los módulos Qt.labs sigan siendo compatibles en futuras versiones.

Ver también ControlStyle, DelegateStyle, y FallbackStyle Reference.

Documentación de Propiedades

checked : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es checked.

Véase también pressed, hovered, highlighted, focused, vertical, disabled y StyleReader.checked.

disabled : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control está desactivado.

No se puede interactuar con un control desactivado, por lo que pressed, hovered, highlighted, y focused no se aplicarán al mismo tiempo que disabled.

Ver también pressed, hovered, highlighted, focused, checked, vertical, y StyleReader.disabled.

focused : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es focused.

Véase también pressed, hovered, highlighted, checked, vertical, disabled y StyleReader.focused.

highlighted : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es highlighted.

Véase también pressed, hovered, focused, checked, vertical, disabled y StyleReader.highlighted.

hovered : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es hovered.

Véase también pressed, highlighted, focused, checked, vertical, disabled y StyleReader.hovered.

pressed : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es pressed.

Véase también hovered, highlighted, focused, checked, vertical, disabled y StyleReader.pressed.

vertical : ControlStateStyle

Anulaciones de estilo aplicadas cuando el control es vertical (por ejemplo, un Slider vertical o ScrollBar).

Véase también pressed, hovered, highlighted, focused, checked, disabled, y StyleReader.vertical.

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