Sur cette page

DelegateStyle QML Type

Définit l'apparence visuelle d'un élément à l'intérieur d'un contrôle. Plus d'informations...

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

HandleStyle, IndicatorStyle, and SubIndicatorStyle

Propriétés

Description détaillée

DelegateStyle décrit l'apparence visuelle d'un élément visuel à l'intérieur d'un site ControlStyle, tel que background, indicator, ou un sous-élément comme indicator.foreground. Il fournit des propriétés pour contrôler size, color, border, radius, shadow, image, opacity, et plus encore.

Note : La compatibilité des types dans les modules Qt.labs n'est pas garantie dans les versions futures.

Voir aussi ControlStyle, ControlStateStyle, et FallbackStyle Reference.

Documentation sur les propriétés

alignment : Qt::Alignment

L'alignement du délégué dans son parent. La valeur par défaut est Qt.AlignLeft | Qt.AlignVCenter.

border : BorderStyle

Propriété groupée permettant de styliser la bordure de ce délégué.

bottomLeftRadius : real

Rayon du coin inférieur gauche. S'il n'est pas défini, il est ramené à radius.

Voir aussi radius, topLeftRadius, topRightRadius, et bottomRightRadius.

bottomMargin : real

La marge inférieure de ce délégué. Si elle n'est pas définie, elle est ramenée à margins.

Voir aussi margins, topMargin, leftMargin, et rightMargin.

bottomRightRadius : real

Rayon du coin inférieur droit. S'il n'est pas défini, il est ramené à radius.

Voir aussi radius, topLeftRadius, topRightRadius, et bottomLeftRadius.

clip : bool

Si le délégué clique sur son contenu. La valeur par défaut est false.

color : color

La couleur de remplissage de ce délégué. La valeur par défaut est transparent.

Contrairement à un Quick Rectangle, où un dégradé remplace la couleur, StyleKit dessine le gradient par-dessus la couleur. Cela signifie que vous pouvez utiliser un dégradé semi-transparent comme recouvrement (par exemple, un effet d'ombrage subtil) tout en laissant apparaître la couleur en dessous.

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)
}

Voir également gradient et opacity.

data : QObject

Un objet arbitraire qui peut être utilisé pour transmettre des données personnalisées du style à un composant personnalisé delegate.

Cela vous permet de définir des propriétés de style personnalisées au-delà de ce que fournit l'API StyleKit. L'objet de données peut varier selon les états et les thèmes, ce qui permet de styliser les éléments d'un site delegate personnalisé qui ne sont pas couverts par les propriétés intégrées.

L'extrait suivant utilise un délégué personnalisé qui dessine une superposition Text dont la couleur varie en fonction de l'état du contrôle. Le délégué hérite de StyledItem, ce qui est facultatif mais garantit que le reste de l'arrière-plan du bouton est rendu normalement.

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"
    }
}

Remarque : l'objet data est propagé dans son ensemble. Contrairement aux propriétés de style ordinaires, les propriétés individuelles à l'intérieur de l' objet de données ne sont pas propagées séparément.

Voir également delegate.

delegate : Component

Le délégué utilisé pour rendre le DelegateStyle dans un contrôleQt Quick .

La valeur par défaut est null, auquel cas StyledItem est utilisé pour le rendu.

Le délégué doit définir les propriétés obligatoires suivantes :

required property DelegateStyle delegateStyle
required property QtObject control

delegateStyle pointe sur DelegateStyle qui décrit comment le délégué doit être stylé. control pointe sur le contrôleQt Quick qui possède le délégué. Ce dernier peut être utilisé pour résoudre des informations supplémentaires sur le contrôle qui ne sont pas disponibles dans le style.

Si vous connaissez le type spécifique du contrôle propriétaire, vous pouvez l'utiliser à la place de QtObject pour la propriété control. Par exemple, étant donné qu'un délégué handle dans l'extrait ci-dessous est toujours utilisé à l'intérieur d'un Slider, le type peut être défini à 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)
        }
    }
}

Remarque : si un DelegateStyle a un drop shadow défini, il sera dessiné séparément par une propriété de type shadow delegate.

Voir également data et StyledItem.

gradient : Gradient

Le dégradé de ce délégué. La valeur par défaut est null (pas de dégradé).

Contrairement à la méthode Quick Rectangle, où le dégradé remplace la couleur, StyleKit dessine le dégradé par-dessus la couleur. Cela signifie que vous pouvez utiliser un dégradé semi-transparent en superposition (par exemple, un effet d'ombrage subtil) tout en laissant apparaître la couleur en dessous.

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)
}

Voir également color.

image : ImageStyle

Propriété groupée permettant de placer une image à l'intérieur de ce délégué.

Voir aussi ImageStyle.

implicitHeight : real

La hauteur implicite de ce délégué.

implicitWidth : real

La largeur implicite de ce délégué. Réglez cette valeur sur Style.Stretch pour que le délégué remplisse la largeur disponible du contrôle.

leftMargin : real

La marge gauche de ce délégué. Si elle n'est pas définie, elle est ramenée à margins.

Voir aussi margins, rightMargin, topMargin, et bottomMargin.

margins : real

La marge uniforme autour de ce délégué. Ce paramètre fournit une valeur par défaut pour leftMargin, rightMargin, topMargin, et bottomMargin. Chaque côté peut être modifié individuellement.

Voir aussi leftMargin, rightMargin, topMargin, et bottomMargin.

minimumWidth : real

La largeur minimale de ce délégué. La taille du délégué ne sera pas inférieure à cette valeur.

opacity : real

L'opacité de ce délégué, de 0.0 (totalement transparent) à 1.0 (totalement opaque). La valeur par défaut est 1.0.

Voir également visible et color.

radius : real

Rayon d'angle appliqué aux quatre coins de ce délégué. Les coins individuels peuvent être remplacés par topLeftRadius, topRightRadius, bottomLeftRadius, et bottomRightRadius.

Voir également topLeftRadius, topRightRadius, bottomLeftRadius, et bottomRightRadius.

rightMargin : real

La marge droite de ce délégué. Si elle n'est pas définie, elle est ramenée à margins.

Voir aussi margins, leftMargin, topMargin, et bottomMargin.

rotation : real

La rotation de ce délégué, en degrés.

scale : real

Le facteur d'échelle de ce délégué. La valeur par défaut est 1.0.

shadow : ShadowStyle

Propriété groupée permettant de styliser une ombre portée derrière ce délégué.

Voir aussi ShadowStyle.

topLeftRadius : real

Rayon du coin supérieur gauche. S'il n'est pas défini, il est ramené à radius.

Voir aussi radius, topRightRadius, bottomLeftRadius, et bottomRightRadius.

topMargin : real

La marge supérieure de ce délégué. Si elle n'est pas définie, elle est ramenée à margins.

Voir aussi margins, bottomMargin, leftMargin, et rightMargin.

topRightRadius : real

Rayon du coin supérieur droit. S'il n'est pas défini, il est ramené à radius.

Voir aussi radius, topLeftRadius, bottomLeftRadius, et bottomRightRadius.

visible : bool

Si ce délégué est visible. La valeur par défaut est true.

Remarque : bien que la valeur par défaut soit true, la valeur fallback style (qui remplace de nombreuses valeurs par défaut) définit background.visible à false pour les contrôles qui ne doivent généralement pas dessiner d'arrière-plan, tels que CheckBox, RadioButton et Slider.

Voir également 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.