DoubleSpinBox QML Type
Ermöglicht dem Benutzer die Auswahl aus einer Reihe von voreingestellten Fließkommawerten. Mehr...
| Import Statement: | import QtQuick.Controls |
| Since: | Qt 6.11 |
| Inherits: |
Eigenschaften
- decimals : int
- displayText : string
- down
- down.hovered : bool
- down.implicitIndicatorHeight : real
- down.implicitIndicatorWidth : real
- down.indicator : Item
- down.pressed : bool
- editable : bool
- from : double
- inputMethodComposing : bool
- inputMethodHints : flags
(since QtQuick.Controls 2.2 (Qt 5.9)) - stepSize : double
- textFromValue : function
- to : int
- up
- up.hovered : bool
- up.implicitIndicatorHeight : real
- up.implicitIndicatorWidth : real
- up.indicator : Item
- up.pressed : bool
- validator : Validator
- value : double
- valueFromText : function
- wrap : bool
(since QtQuick.Controls 2.3 (Qt 5.10))
Signale
Methoden
Ausführliche Beschreibung

DoubleSpinBox ist ähnlich wie SpinBox, mit dem Unterschied, dass es Doppelwerte anstelle von Ganzzahlen unterstützt. Der Benutzer kann einen Wert auswählen, indem er auf die Schaltflächen mit den Auf- und Abwärtspfeilen klickt oder auf der Tastatur nach oben oder unten drückt. Optional kann DoubleSpinBox auch auf editable eingestellt werden, so dass der Benutzer einen Textwert in das Eingabefeld eingeben kann.
Standardmäßig liefert DoubleSpinBox diskrete Werte im Bereich von [0.00-99.99] mit einem stepSize von 1.0.
DoubleSpinBox { id: doubleSpinBox from: 0 value: 1.1 to: 100 stepSize: Math.pow(10, -decimals) decimals: 2 editable: true anchors.centerIn: parent }
Siehe auch SpinBox, Tumbler, Anpassen von DoubleSpinBox und Fokusverwaltung in Qt Quick Steuerelementen.
Dokumentation der Eigenschaft
decimals : int
Diese Eigenschaft legt fest, wie viele Dezimalstellen die Spinbox für die Anzeige und Interpretation von Doppelwerten verwendet.
Der Standardwert ist 2.
Das Ändern des Wertes dieser Eigenschaft kann sich auf from, to und value auswirken.
Warnung: Der Maximalwert für decimals ist DBL_MAX_10_EXP + DBL_DIG (323), da der Doppeltyp begrenzt ist.
displayText : string [read-only]
Diese Eigenschaft enthält den textuellen Wert der Spinbox.
Der Wert der Eigenschaft basiert auf textFromValue und locale, und ist gleich:
let text = spinBox.textFromValue(spinBox.value, spinBox.decimals, spinBox.locale)
Siehe auch textFromValue.
down group
down.hovered : bool
down.implicitIndicatorHeight : real
down.implicitIndicatorWidth : real
down.indicator : Item
down.pressed : bool
Diese gruppierte Eigenschaft enthält das Element Abwärtsindikator und seine zugehörigen Eigenschaften.
Siehe auch decrease().
editable : bool
Diese Eigenschaft gibt an, ob die Spinbox bearbeitbar ist. Der Standardwert ist false.
Siehe auch validator.
from : double
Diese Eigenschaft enthält den Anfangswert für den Bereich. Der Standardwert ist 0.0.
inputMethodComposing : bool [read-only]
Diese Eigenschaft gibt an, ob ein bearbeitbares Drehfeld eine partielle Texteingabe durch eine Eingabemethode aufweist.
Während des Zusammensetzens kann eine Eingabemethode auf Maus- oder Tastenereignisse des Drehkastens angewiesen sein, um den Teiltext zu bearbeiten oder zu bestätigen. Diese Eigenschaft kann verwendet werden, um zu bestimmen, wann Ereignisbehandler deaktiviert werden sollen, die den korrekten Betrieb einer Eingabemethode stören könnten.
inputMethodHints : flags [since QtQuick.Controls 2.2 (Qt 5.9)]
Diese Eigenschaft gibt der Eingabemethode Hinweise auf den erwarteten Inhalt des Drehkastens und seine Funktionsweise.
Der Standardwert ist Qt.ImhDigitsOnly.
Der Wert ist eine bitweise Kombination von Flags oder Qt.ImhNone, wenn keine Hinweise gesetzt sind.
Flags, die das Verhalten verändern, sind:
- Qt.ImhHiddenText - Zeichen sollten versteckt werden, wie es typischerweise bei der Eingabe von Passwörtern verwendet wird.
- Qt.ImhSensitiveData - Eingegebener Text sollte von der aktiven Eingabemethode nicht in einem persistenten Speicher wie dem prädiktiven Benutzerwörterbuch gespeichert werden.
- Qt.ImhNoAutoUppercase - Die Eingabemethode sollte nicht versuchen, am Ende eines Satzes automatisch auf Großbuchstaben umzuschalten.
- Qt.ImhPreferNumbers - Zahlen werden bevorzugt (sind aber nicht erforderlich).
- Qt.ImhPreferUppercase - Großbuchstaben werden bevorzugt (sind aber nicht erforderlich).
- Qt.ImhPreferLowercase - Kleinbuchstaben werden bevorzugt (sind aber nicht erforderlich).
- Qt.ImhNoPredictiveText - Keine Textvorhersage (d.h. Wörterbuchsuche) während des Tippens verwenden.
- Qt.ImhDate - Der Texteditor funktioniert wie ein Datumsfeld.
- Qt.ImhTime - Der Texteditor funktioniert wie ein Zeitfeld.
Flags, die die Eingabe einschränken (exklusive Flags) sind:
- Qt.ImhDigitsOnly - Nur Ziffern sind erlaubt.
- Qt.ImhFormattedNumbersOnly - Nur die Eingabe von Zahlen ist erlaubt. Dies schließt Dezimalpunkt und Minuszeichen ein.
- Qt.ImhUppercaseOnly - Nur die Eingabe von Großbuchstaben ist erlaubt.
- Qt.ImhLowercaseOnly - Nur die Eingabe von Kleinbuchstaben ist erlaubt.
- Qt.ImhDialableCharactersOnly - Nur Zeichen, die für die Telefonwahl geeignet sind, sind erlaubt.
- Qt.ImhEmailCharactersOnly - Nur Zeichen, die für E-Mail-Adressen geeignet sind, sind erlaubt.
- Qt.ImhUrlCharactersOnly - Nur Zeichen, die für URLs geeignet sind, sind erlaubt.
Masken:
- Qt.ImhExclusiveInputMask - Diese Maske ergibt einen Wert ungleich Null, wenn eines der Exklusiv-Flags verwendet wird.
Diese Eigenschaft wurde in QtQuick.Controls 2.2 (Qt 5.9) eingeführt.
stepSize : double
Diese Eigenschaft gibt die Schrittweite an. Der Standardwert ist 1.0.
Siehe auch increase() und decrease().
textFromValue : function
Diese Eigenschaft enthält eine Callback-Funktion, die immer dann aufgerufen wird, wenn ein Double-Wert in Anzeigetext umgewandelt werden muss.
Die Standardfunktion kann überschrieben werden, um benutzerdefinierten Text für einen bestimmten Wert anzuzeigen. Dies gilt sowohl für bearbeitbare als auch für nicht bearbeitbare Spinboxen; wenn beispielsweise die Auf- und Ab-Tasten oder ein Mausrad zum Erhöhen und Verringern des Wertes verwendet werden, wird der neue Wert mithilfe dieser Funktion in Anzeigetext umgewandelt.
Die Signatur der Callback-Funktion lautet string function(value, decimals, locale). Die Funktion kann zwei oder drei Argumente haben, wobei das erste Argument der umzuwandelnde Wert, das zweite Argument die Anzahl der Dezimalstellen und das optionale dritte Argument das Gebietsschema ist, das für die Umwandlung verwendet werden soll, falls zutreffend.
Die Standardimplementierung führt die Konvertierung mit Number.toLocaleString() durch:
textFromValue: function(value, decimals, locale) { return Number(value).toLocaleString(locale, 'f', decimals); }
Hinweis: Bei der Anwendung einer benutzerdefinierten textFromValue -Implementierung für editierbare Spinboxen muss eine passende valueFromText -Implementierung bereitgestellt werden, um den benutzerdefinierten Text wieder in einen Double-Wert umwandeln zu können.
Siehe auch valueFromText, validator, und locale.
to : int
Diese Eigenschaft enthält den Endwert für den Bereich. Der Standardwert ist 2.
up group
up.hovered : bool
up.implicitIndicatorHeight : real
up.implicitIndicatorWidth : real
up.indicator : Item
up.pressed : bool
Diese gruppierte Eigenschaft enthält das Element des Aufwärtsindikators und seine zugehörigen Eigenschaften.
Siehe auch increase().
validator : Validator
Diese Eigenschaft enthält den Eingabetext-Validator für bearbeitbare Spinboxen. Standardmäßig verwendet DoubleSpinBox DoubleValidator , um die Eingabe von doppelten Zahlen zu akzeptieren.
DoubleSpinBox { id: control validator: DoubleValidator { locale: control.locale.name bottom: Math.min(control.from, control.to) top: Math.max(control.from, control.to) } }
Siehe auch editable, textFromValue, valueFromText, locale, und Validierung von Eingabetext.
value : double
Diese Eigenschaft enthält den Wert im Bereich from - to. Der Standardwert ist 0.0.
valueFromText : function
Diese Eigenschaft enthält eine Callback-Funktion, die immer dann aufgerufen wird, wenn Eingabetext in einen Doppelwert umgewandelt werden muss.
Diese Funktion muss nur überschrieben werden, wenn textFromValue für eine editierbare Spinbox überschrieben wird.
Die Signatur der Callback-Funktion lautet int function(text, locale). Die Funktion kann ein oder zwei Argumente haben, wobei das erste Argument der zu konvertierende Text und das optionale zweite Argument das Gebietsschema ist, das für die Konvertierung verwendet werden soll, falls zutreffend.
Die Standardimplementierung führt die Konvertierung mit Number.fromLocaleString() durch:
valueFromText: function(text, locale) { return Number.fromLocaleString(locale, text); }
Hinweis: Wenn eine benutzerdefinierte textFromValue Implementierung für editierbare Spinboxen verwendet wird, muss eine passende valueFromText Implementierung bereitgestellt werden, um den benutzerdefinierten Text zurück in einen Doppelwert konvertieren zu können.
Siehe auch textFromValue, validator, und locale.
wrap : bool [since QtQuick.Controls 2.3 (Qt 5.10)]
Diese Eigenschaft legt fest, ob die Spinbox umbrochen wird. Der Standardwert ist false.
Wenn wrap true ist, ändert sich der Wert nach to zu from und umgekehrt.
Diese Eigenschaft wurde in QtQuick.Controls 2.3 (Qt 5.10) eingeführt.
Signal-Dokumentation
valueModified()
Dieses Signal wird ausgegeben, wenn der Wert des Drehfelds vom Benutzer interaktiv geändert wurde, entweder durch Berührung, Maus, Rad oder Tasten. Im Falle der Interaktion über die Tastatur wird das Signal nur ausgegeben, wenn der Text akzeptiert wurde, d.h. wenn die Enter- oder Return-Tasten gedrückt werden oder das Eingabefeld den Fokus verliert.
Hinweis: Der entsprechende Handler ist onValueModified.
Dokumentation der Methode
void decrease()
Verringert den Wert um stepSize, oder 1, wenn stepSize nicht definiert ist.
Siehe auch stepSize.
void increase()
Erhöht den Wert um stepSize, oder 1, wenn stepSize nicht definiert ist.
Siehe auch stepSize.
© 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.