DelegateStyle QML Type
Definiert das visuelle Erscheinungsbild eines Elements innerhalb eines Steuerelements. Mehr...
| Import Statement: | import Qt.labs.StyleKit |
| Inherited By: |
Eigenschaften
- alignment : Qt::Alignment
- border : BorderStyle
- bottomLeftRadius : real
- bottomMargin : real
- bottomRightRadius : real
- clip : bool
- color : color
- data : QObject
- delegate : Component
- gradient : Gradient
- image : ImageStyle
- implicitHeight : real
- implicitWidth : real
- leftMargin : real
- margins : real
- minimumWidth : real
- opacity : real
- radius : real
- rightMargin : real
- rotation : real
- scale : real
- shadow : ShadowStyle
- topLeftRadius : real
- topMargin : real
- topRightRadius : real
- visible : bool
Detaillierte Beschreibung
DelegateStyle beschreibt das visuelle Erscheinungsbild eines visuellen Elements innerhalb eines ControlStyle, wie z.B. background, indicator, oder eines Unterelements wie indicator.foreground. Es bietet Eigenschaften zur Steuerung von size, color, border, radius, shadow, image, opacity, und mehr.
Hinweis: Es ist nicht garantiert, dass Typen in Qt.labs-Modulen in zukünftigen Versionen kompatibel bleiben.
Siehe auch ControlStyle, ControlStateStyle, und FallbackStyle Referenz.
Dokumentation der Eigenschaften
alignment : Qt::Alignment
Die Ausrichtung des Delegaten innerhalb seines übergeordneten Elements. Der Standardwert ist Qt.AlignLeft | Qt.AlignVCenter.
border : BorderStyle
Gruppierte Eigenschaft für die Gestaltung des Rahmens dieses Delegaten.
bottomLeftRadius : real
Der Radius für die linke untere Ecke. Wenn er nicht gesetzt ist, fällt er auf radius zurück.
Siehe auch radius, topLeftRadius, topRightRadius, und bottomRightRadius.
bottomMargin : real
Der untere Rand dieses Delegaten. Wenn er nicht gesetzt ist, fällt er auf margins zurück.
Siehe auch margins, topMargin, leftMargin, und rightMargin.
bottomRightRadius : real
Der Radius der rechten unteren Ecke. Wenn er nicht gesetzt ist, fällt er auf radius zurück.
Siehe auch radius, topLeftRadius, topRightRadius, und bottomLeftRadius.
clip : bool
Ob der Delegat seinen Inhalt ausspart. Der Standardwert ist false.
color : color
Die Füllfarbe dieses Delegaten. Der Standardwert ist transparent.
Im Gegensatz zu einem Quick Rectangle, bei dem ein Farbverlauf die Farbe ersetzt, zeichnet StyleKit den gradient über die Farbe. Das bedeutet, dass Sie einen halbtransparenten Farbverlauf als Overlay verwenden können (z. B. für einen subtilen Schattierungseffekt), während die Farbe darunter durchscheint.
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) }
Siehe auch gradient und opacity.
data : QObject
Ein beliebiges Objekt, das verwendet werden kann, um benutzerdefinierte Daten vom Stil an eine benutzerdefinierte delegate Komponente zu übergeben.
Damit können Sie benutzerdefinierte Stileigenschaften definieren, die über das hinausgehen, was die StyleKit API bietet. Das Datenobjekt kann zwischen Zuständen und Themen variieren, wodurch es möglich ist, Elemente in einem benutzerdefinierten delegate zu gestalten, die nicht von den eingebauten Eigenschaften abgedeckt werden.
Das folgende Snippet verwendet einen benutzerdefinierten Delegaten, der ein Overlay Text zeichnet, dessen Farbe je nach Zustand des Steuerelements variiert. Der Delegat erbt StyledItem, was optional ist, aber sicherstellt, dass der Rest des Schaltflächenhintergrunds normal gerendert wird.
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" } }
Hinweis: Das Objekt data wird als Ganzes weitergegeben. Im Gegensatz zu regulären Stileigenschaften werden die einzelnen Eigenschaften innerhalb des Datenobjekts nicht separat weitergegeben.
Siehe auch delegate.
delegate : Component
Der Delegat, der zum Rendern von DelegateStyle in einem Qt Quick Control verwendet wird.
Der Standardwert ist null, in diesem Fall wird stattdessen StyledItem für das Rendering verwendet.
Der Delegat muss die folgenden erforderlichen Eigenschaften definieren:
required property DelegateStyle delegateStyle required property QtObject control
delegateStyle zeigt auf DelegateStyle, das beschreibt, wie der Delegat gestylt werden soll. control zeigt auf das Qt Quick Control, das den Delegaten besitzt. Letzteres kann verwendet werden, um zusätzliche Informationen über das Steuerelement aufzulösen, die nicht über den Stil verfügbar sind.
Wenn Sie den spezifischen Typ des besitzenden Steuerelements kennen, können Sie es anstelle von QtObject für die Eigenschaft control verwenden. Da z. B. ein Handle-Delegat im folgenden Schnipsel immer innerhalb eines Schiebereglers verwendet wird, kann der Typ auf T.Slider gesetzt werden:
// 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) } } }
Hinweis: Wenn ein DelegateStyle ein drop shadow definiert hat, wird es separat durch ein shadow delegate.
Siehe auch data und StyledItem.
gradient : Gradient
Der Farbverlauf dieses Delegaten. Der Standardwert ist null (kein Farbverlauf).
Anders als bei Quick Rectangle, wo ein Farbverlauf die Farbe ersetzt, wird bei StyleKit der Farbverlauf über die Farbe gelegt. Das bedeutet, dass Sie einen halbtransparenten Farbverlauf als Overlay verwenden können (z. B. für einen subtilen Schattierungseffekt), während die Farbe darunter durchscheint.
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) }
Siehe auch color.
image : ImageStyle
Gruppierte Eigenschaft zum Platzieren eines Bildes innerhalb dieses Delegaten.
Siehe auch ImageStyle.
implicitHeight : real
Die implizite Höhe dieses Delegaten.
implicitWidth : real
Die implizite Breite dieses Delegaten. Setzen Sie dies auf Style.Stretch, damit der Delegat die verfügbare Breite des Steuerelements ausfüllt.
leftMargin : real
Der linke Rand dieses Delegaten. Wenn er nicht gesetzt ist, fällt er auf margins zurück.
Siehe auch margins, rightMargin, topMargin, und bottomMargin.
margins : real
Der einheitliche Rand um diesen Delegaten. Diese Einstellung bietet einen Standardwert für leftMargin, rightMargin, topMargin und bottomMargin. Jede Seite kann einzeln außer Kraft gesetzt werden.
Siehe auch leftMargin, rightMargin, topMargin, und bottomMargin.
minimumWidth : real
Die Mindestbreite dieses Delegaten. Die Größe des Delegaten wird nicht kleiner als dieser Wert sein.
opacity : real
Die Deckkraft dieses Delegaten, von 0.0 (völlig transparent) bis 1.0 (völlig undurchsichtig). Der Standardwert ist 1.0.
radius : real
Der Eckenradius, der auf alle vier Ecken dieses Delegaten angewendet wird. Einzelne Ecken können mit topLeftRadius, topRightRadius, bottomLeftRadius und bottomRightRadius außer Kraft gesetzt werden.
Siehe auch topLeftRadius, topRightRadius, bottomLeftRadius, und bottomRightRadius.
rightMargin : real
Der rechte Rand dieses Delegaten. Wenn er nicht gesetzt ist, fällt er auf margins zurück.
Siehe auch margins, leftMargin, topMargin, und bottomMargin.
rotation : real
Die Drehung dieses Delegierten, in Grad.
scale : real
Der Skalierungsfaktor dieses Delegaten. Der Standardwert ist 1.0.
shadow : ShadowStyle
Gruppierte Eigenschaft zum Gestalten eines Schlagschattens hinter diesem Delegaten.
Siehe auch ShadowStyle.
topLeftRadius : real
Der Radius für die linke obere Ecke. Wenn er nicht gesetzt ist, fällt er auf radius zurück.
Siehe auch radius, topRightRadius, bottomLeftRadius, und bottomRightRadius.
topMargin : real
Der obere Rand dieses Delegaten. Wenn er nicht gesetzt ist, fällt er auf margins zurück.
Siehe auch margins, bottomMargin, leftMargin, und rightMargin.
topRightRadius : real
Der Radius der rechten oberen Ecke. Wenn er nicht gesetzt ist, fällt er auf radius zurück.
Siehe auch radius, topLeftRadius, bottomLeftRadius, und bottomRightRadius.
visible : bool
Ob dieser Delegat sichtbar ist. Der Standardwert ist true.
Hinweis: Obwohl der Standardwert true ist, setzt fallback style (das viele der Standardwerte außer Kraft setzt) background.visible auf false für Steuerelemente, die normalerweise keinen Hintergrund zeichnen sollten, wie CheckBox, RadioButton und Slider.
Siehe auch 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.