En esta página

DelegateStyle QML Type

Define la apariencia visual de un elemento dentro de un control. Más...

Import Statement: import Qt.labs.StyleKit
Inherited By:

HandleStyle, IndicatorStyle, and SubIndicatorStyle

Propiedades

Descripción detallada

DelegateStyle describe la apariencia visual de un elemento visual dentro de un ControlStyle, como su background, indicator, o un subelemento como indicator.foreground. Proporciona propiedades para controlar size, color, border, radius, shadow, image, opacity, y más.

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

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

Documentación de Propiedades

alignment : Qt::Alignment

La alineación del delegado dentro de su padre. El valor por defecto es Qt.AlignLeft | Qt.AlignVCenter.

border : BorderStyle

Propiedad agrupada para estilizar el borde de este delegado.

bottomLeftRadius : real

El radio de la esquina inferior izquierda. Si no se establece, vuelve a radius.

Véase también radius, topLeftRadius, topRightRadius, y bottomRightRadius.

bottomMargin : real

El margen inferior de este delegado. Si no se establece, vuelve a margins.

Véase también margins, topMargin, leftMargin, y rightMargin.

bottomRightRadius : real

El radio de la esquina inferior derecha. Si no se establece, vuelve a radius.

Véase también radius, topLeftRadius, topRightRadius, y bottomLeftRadius.

clip : bool

Si el delegado recorta su contenido. El valor por defecto es false.

color : color

El color de relleno de este delegado. El valor por defecto es transparent.

A diferencia de Quick Rectangle, donde un degradado sustituye al color, StyleKit dibuja el gradient encima del color. Esto significa que puede utilizar un degradado semitransparente como superposición (por ejemplo, un sutil efecto de sombreado) mientras el color se muestra por debajo.

button {
    background.gradient: Gradient {
        GradientStop { position: 0.0; color: Qt.alpha("black", 0.0)}
        GradientStop { position: 1.0; color: Qt.alpha("black", 0.2)}
    }
    background.color: "lightsteelblue"
    hovered.background.color: Qt.darker("lightsteelblue", 1.1)
    pressed.background.color: Qt.darker("lightsteelblue", 1.2)
}

Véase también gradient y opacity.

data : QObject

Un objeto arbitrario que puede utilizarse para pasar datos personalizados del estilo a un componente personalizado de delegate.

Esto permite definir propiedades de estilo personalizadas más allá de lo que proporciona la API StyleKit. El objeto de datos puede variar entre estados y temas, lo que hace posible aplicar estilo a elementos en un delegate personalizado que no están cubiertos por las propiedades incorporadas.

El siguiente fragmento utiliza un delegado personalizado que dibuja una superposición Text cuyo color varía en función del estado del control. El delegado hereda StyledItem, que es opcional pero garantiza que el resto del fondo del botón se represente con normalidad.

component OverlayData : QtObject {
    property color overlayColor
}

toolButton {
    background.delegate: StyledItem {
        id: custom
        Text {
            color: custom.delegateStyle.data.overlayColor
            font.pixelSize: 30
            text: "シ"
        }
    }
    background.data: OverlayData {
        overlayColor: "sandybrown"
    }
    hovered.background.data: OverlayData {
        overlayColor: "magenta"
    }
}

Nota: El objeto data se propaga como un todo. A diferencia de las propiedades de estilo normales, las propiedades individuales dentro del objeto de datos no se propagan por separado.

Véase también delegate.

delegate : Component

El delegado utilizado para renderizar DelegateStyle en un controlQt Quick .

El valor por defecto es null, en cuyo caso se utiliza StyledItem.

El delegado necesita definir las siguientes propiedades requeridas:

required property DelegateStyle delegateStyle
required property QtObject control

delegateStyle DelegateStyle control apunta al ControlQt Quick al que pertenece el delegado. Este último puede utilizarse para resolver información adicional sobre el control que no esté disponible en el estilo.

Si conoce el tipo específico del control propietario, puede utilizarlo en lugar de QtObject para la propiedad control. Por ejemplo, dado que en el siguiente fragmento de código siempre se utiliza un controlador delegado dentro de un control deslizante, el tipo puede establecerse en T.Slider:

// import QtQuick.Templates as T

slider {
    handle.delegate: Rectangle {
        id: handle
        required property DelegateStyle delegateStyle
        required property T.Slider control
        implicitWidth: delegateStyle.implicitWidth
        implicitHeight: delegateStyle.implicitHeight
        radius: delegateStyle.radius
        color: delegateStyle.color
        Text {
            anchors.centerIn: parent
            text: handle.control.value.toFixed(0)
        }
    }
}

Nota: Si un DelegateStyle tiene un drop shadow definido, será dibujado por separado por un shadow delegate.

Véase también data y StyledItem.

gradient : Gradient

El gradiente de este delegado. El valor por defecto es null (sin degradado).

A diferencia de Quick Rectangle, donde un degradado sustituye al color, StyleKit dibuja el degradado encima del color. Esto significa que puede utilizar un degradado semitransparente como superposición (por ejemplo, un sutil efecto de sombreado) mientras el color se muestra por debajo.

button {
    background.gradient: Gradient {
        GradientStop { position: 0.0; color: Qt.alpha("black", 0.0)}
        GradientStop { position: 1.0; color: Qt.alpha("black", 0.2)}
    }
    background.color: "lightsteelblue"
    hovered.background.color: Qt.darker("lightsteelblue", 1.1)
    pressed.background.color: Qt.darker("lightsteelblue", 1.2)
}

Véase también color.

image : ImageStyle

Propiedad agrupada para colocar una imagen dentro de este delegado.

Véase también ImageStyle.

implicitHeight : real

La altura implícita de este delegado.

implicitWidth : real

El ancho implícito de este delegado. Establézcalo en Style.Stretch para que el delegado ocupe todo el ancho disponible del control.

leftMargin : real

El margen izquierdo de este delegado. Si no se establece, vuelve a margins.

Véase también margins, rightMargin, topMargin, y bottomMargin.

margins : real

El margen uniforme alrededor de este delegado. Establecer esto proporciona un valor predeterminado para leftMargin, rightMargin, topMargin, y bottomMargin. Cada margen puede anularse individualmente.

Véase también leftMargin, rightMargin, topMargin, y bottomMargin.

minimumWidth : real

La anchura mínima de este delegado. El delegado no tendrá un tamaño inferior a este valor.

opacity : real

La opacidad de este delegado, desde 0.0 (totalmente transparente) hasta 1.0 (totalmente opaco). El valor por defecto es 1.0.

Véase también visible y color.

radius : real

El radio de la esquina aplicado a las cuatro esquinas de este delegado. Las esquinas individuales se pueden anular con topLeftRadius, topRightRadius, bottomLeftRadius, y bottomRightRadius.

Véase también topLeftRadius, topRightRadius, bottomLeftRadius, y bottomRightRadius.

rightMargin : real

El margen derecho de este delegado. Si no se establece, vuelve a margins.

Véase también margins, leftMargin, topMargin, y bottomMargin.

rotation : real

La rotación de este delegado, en grados.

scale : real

El factor de escala de este delegado. El valor por defecto es 1.0.

shadow : ShadowStyle

Propiedad agrupada para estilizar una sombra detrás de este delegado.

Véase también ShadowStyle.

topLeftRadius : real

El radio de la esquina superior izquierda. Si no se establece, vuelve a radius.

Véase también radius, topRightRadius, bottomLeftRadius, y bottomRightRadius.

topMargin : real

El margen superior de este delegado. Si no se establece, vuelve a margins.

Véase también margins, bottomMargin, leftMargin, y rightMargin.

topRightRadius : real

El radio de la esquina superior derecha. Si no se establece, vuelve a radius.

Véase también radius, topLeftRadius, bottomLeftRadius, y bottomRightRadius.

visible : bool

Si este delegado es visible. El valor por defecto es true.

Nota: Aunque el valor predeterminado es true, fallback style (que anula muchos de los valores predeterminados) establece background.visible a false para los controles que normalmente no deben dibujar un fondo, como CheckBox, RadioButton y Slider.

Véase también opacity.

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