Sur cette page

StyleReader QML Type

Lit les propriétés du style actif pour un contrôle spécifique. En savoir plus…

Import Statement: import Qt.labs.StyleKit
Inherits:

ControlStyleProperties

Status: Technology preview

Ce type est en préversion technologique et est susceptible d'être modifié.

Propriétés

Description détaillée

StyleReader fait le lien entre un contrôle dans Qt Quick Controls et l'active style. Il expose toutes les propriétés de style — backgrounds, indicators, handles, text, padding, etc. — auxquelles un contrôle, ainsi que ses délégués, doit se lier. Tous les contrôles intégrés d'StyleKit utilisent en interne un StyleReader à cette fin.

Les propriétés d’état — hovered, pressed, focused, checked, highlighted, etc. — indiquent à StyleReader dans quel état se trouve le contrôle. Il les utilise pour résoudre et lire les valeurs de propriété correctes à partir de l’ Style, en tenant compte de Themes, StyleVariations, fallback types et de la propagation des propriétés.

Lors de l’implémentation d’un ` CustomControl`, vous pouvez suivre la même approche que pour les contrôles intégrés :

// Main.qml

component CustomButton : Rectangle {
    StyleReader {
        id: styleReader
        controlType: StyleReader.Button
        hovered: hoverHandler.hovered
        pressed: tapHandler.pressed
        palette: app.palette
    }

    implicitWidth: styleReader.background.width
    implicitHeight: styleReader.background.height
    color: styleReader.background.color
    radius: styleReader.background.radius

    HoverHandler { id: hoverHandler }
    TapHandler { id: tapHandler }

    Text {
        font: styleReader.font
        anchors.centerIn: parent
        text: "ok"
    }
}

Remarque : les propriétés de style héritées de ControlStyleProperties ne correspondent pas directement à l’ Style. Elles reflètent plutôt un cache de valeurs potentiellement interpolées pendant une transition active. Les modifier ne mettra pas à jour les propriétés correspondantes dans l’ Style et pourrait interférer avec les transitions en cours. Modifiez directement l’ Style lorsque vous devez changer une propriété de style.

Remarque : la compatibilité des types dans les modules Qt.labs n’est pas garantie dans les versions futures.

Voir également CustomControl, Style, StyleVariation.controlType et Résolution des propriétés StyleKit.

Documentation sur les propriétés

checked : bool

Si la case est cochée.

Liez cette propriété à la propriété « checked » du contrôle.

La valeur par défaut est « false ».

Voir également ControlStateStyle.checked.

controlType : enumeration

Indique le type de contrôle de l'Style à partir duquel ce lecteur lit les propriétés. Ce paramètre peut être défini soit sur l'une des valeurs prédéfinies ci-dessous, soit sur une custom control type définie dans l'Style.

ConstanteDescription
StyleReader.BusyIndicatorBusyIndicator
StyleReader.ButtonButton
StyleReader.CheckBoxCheckBox
StyleReader.CheckDelegateCheckDelegate
StyleReader.ComboBoxComboBox
StyleReader.DelayButtonDelayButton
StyleReader.DialDial
StyleReader.DialogDialog
StyleReader.DialogButtonBoxDialogButtonBox
StyleReader.FrameFrame
StyleReader.GroupBoxGroupBox
StyleReader.ItemDelegateItemDelegate
StyleReader.LabelLabel
StyleReader.MenuMenu
StyleReader.MenuBarMenuBar
StyleReader.MenuBarItemMenuBarItem
StyleReader.MenuItemMenuItem
StyleReader.MenuSeparatorMenuSeparator
StyleReader.PagePage
StyleReader.PageIndicatorPageIndicator
StyleReader.PanePane
StyleReader.PopupPopup
StyleReader.ProgressBarProgressBar
StyleReader.RadioButtonRadioButton
StyleReader.RadioDelegateRadioDelegate
StyleReader.RoundButtonRoundButton
StyleReader.ScrollBarScrollBar
StyleReader.ScrollViewScrollView
StyleReader.SearchFieldSearchField
StyleReader.SliderSlider
StyleReader.SpinBoxSpinBox
StyleReader.SwipeDelegateSwipeDelegate
StyleReader.SwitchSwitch
StyleReader.SwitchDelegateSwitchDelegate
StyleReader.TabBarTabBar
StyleReader.TabButtonTabButton
StyleReader.TextAreaTextArea
StyleReader.TextFieldTextField
StyleReader.ToolBarToolBar
StyleReader.ToolButtonToolButton
StyleReader.ToolSeparatorToolSeparator

Voir également StyleVariation.controlType.

enabled : bool

Indique si le contrôle est activé.

Liez cette propriété à la propriété « enabled » du contrôle.

La valeur par défaut est ` true`.

Voir également ControlStateStyle.disabled.

focused : bool

Indique si le contrôle a le focus actif.

Liez cette propriété à la propriété « activeFocus » du contrôle.

La valeur par défaut est false.

Voir également ControlStateStyle.focused.

font : font [read-only]

Police effective pour ce type de contrôle, telle que définie par la propriété ` style`. Cela tient également compte des éventuelles modifications de police définies dans les propriétés ` text ` du style.

Liez la propriété ` font ` du contrôle à cette propriété.

Remarque : contrairement à des propriétés telles que ` hovered`, ` pressed ` et ` palette ` — qui sont transmises du contrôle à l'StyleReader —, la propriété `font` est une propriété de sortie. Liez la propriété ` font ` du contrôle à cette valeur, et non l'inverse.

global : ControlStyleProperties [read-only]

Permet d'accéder directement aux propriétés de style, en contournant toute transition en cours.

Lorsqu’une transition d’état est en cours, les propriétés de style lues à partir d’un StyleReader peuvent renvoyer des valeurs interpolées. En ajoutant global au début du chemin d’accès à la propriété, vous contournez la transition et obtenez immédiatement les valeurs de l’état final.

Par exemple, lors d’une transition de hovered vers pressed, background.color peut renvoyer une valeur interpolée entre la color de l’état hovered et la couleur de l’état pressed. global.background.color, en revanche, renvoie directement la couleur de l’état « enfoncé ».

Voir également transitionsEnabled.

highlighted : bool

Si le contrôle est mis en surbrillance.

Liez cette propriété à la propriété « highlighted » du contrôle.

La valeur par défaut est ` false`.

Voir également ControlStateStyle.highlighted.

hovered : bool

Si le curseur est sur le contrôle.

Liez cette propriété à la propriété « hovered » du contrôle.

La valeur par défaut est « false ».

Voir également ControlStateStyle.hovered.

palette : palette

La palette du contrôle. StyleKit l'utilise pour résoudre les propriétés de couleur liées à l'palette dans l'Style.

Liez cette propriété à la propriété ` palette ` du contrôle.

Voir également Style.palette.

pressed : bool

Si le bouton est enfoncé.

Liez cette propriété à la propriété « pressed » du contrôle.

La valeur par défaut est « false ».

Voir également ControlStateStyle.pressed.

vertical : bool

Si le contrôle est orienté verticalement.

Liez cette propriété à la propriété « orientation » du contrôle.

La valeur par défaut est « false ».

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