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: | |
| Status: | Technology preview |
Ce type est en préversion technologique et est susceptible d'être modifié.
Propriétés
- checked : bool
- controlType : enumeration
- enabled : bool
- focused : bool
- font : font
- global : ControlStyleProperties
- highlighted : bool
- hovered : bool
- palette : palette
- pressed : bool
- vertical : bool
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.
| Constante | Description |
|---|---|
StyleReader.BusyIndicator | BusyIndicator |
StyleReader.Button | Button |
StyleReader.CheckBox | CheckBox |
StyleReader.CheckDelegate | CheckDelegate |
StyleReader.ComboBox | ComboBox |
StyleReader.DelayButton | DelayButton |
StyleReader.Dial | Dial |
StyleReader.Dialog | Dialog |
StyleReader.DialogButtonBox | DialogButtonBox |
StyleReader.Frame | Frame |
StyleReader.GroupBox | GroupBox |
StyleReader.ItemDelegate | ItemDelegate |
StyleReader.Label | Label |
StyleReader.Menu | Menu |
StyleReader.MenuBar | MenuBar |
StyleReader.MenuBarItem | MenuBarItem |
StyleReader.MenuItem | MenuItem |
StyleReader.MenuSeparator | MenuSeparator |
StyleReader.Page | Page |
StyleReader.PageIndicator | PageIndicator |
StyleReader.Pane | Pane |
StyleReader.Popup | Popup |
StyleReader.ProgressBar | ProgressBar |
StyleReader.RadioButton | RadioButton |
StyleReader.RadioDelegate | RadioDelegate |
StyleReader.RoundButton | RoundButton |
StyleReader.ScrollBar | ScrollBar |
StyleReader.ScrollView | ScrollView |
StyleReader.SearchField | SearchField |
StyleReader.Slider | Slider |
StyleReader.SpinBox | SpinBox |
StyleReader.SwipeDelegate | SwipeDelegate |
StyleReader.Switch | Switch |
StyleReader.SwitchDelegate | SwitchDelegate |
StyleReader.TabBar | TabBar |
StyleReader.TabButton | TabButton |
StyleReader.TextArea | TextArea |
StyleReader.TextField | TextField |
StyleReader.ToolBar | ToolBar |
StyleReader.ToolButton | ToolButton |
StyleReader.ToolSeparator | ToolSeparator |
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.