Qt QML Type
Stellt ein globales Objekt mit nützlichen Enums und Funktionen von Qt zur Verfügung. Mehr...
Import Statement: | import QtQml |
Eigenschaften
- application : Application
- inputMethod : InputMethod
- platform : object
- styleHints : object
- uiLanguage : string
Methoden
- string QT_TRANSLATE_NOOP(string context, string sourceText, string disambiguation)
- string QT_TRID_NOOP(string id)
- string QT_TR_NOOP(string sourceText, string disambiguation)
- color alpha(color baseColor, real value)
- string atob(data)
- binding(function)
- string btoa(data)
- callLater(function)
- callLater(function, argument1, argument2, ...)
- color color(string name)
- color colorEqual(color lhs, string rhs)
- Component createComponent(url url, enumeration mode, QtObject parent)
- Component createComponent(string moduleUri, string typeName, enumeration mode, QtObject parent)
(since 6.5)
- object createQmlObject(string qml, object parent, string filepath)
- color darker(color baseColor, real factor)
- exit(int retCode)
- font font(object fontSpecifier)
- list<string> fontFamilies()
- string formatDate(datetime date, variant format, variant localeFormatOption)
- string formatDateTime(datetime dateTime, variant format, variant localeFormatOption)
- string formatTime(datetime time, variant format, variant localeFormatOption)
- void gc()
- color hsla(real hue, real saturation, real lightness, real alpha)
- color hsva(real hue, real saturation, real value, real alpha)
- bool isQtObject(object)
- color lighter(color baseColor, real factor)
- locale(name)
- string md5(data)
- matrix4x4 matrix4x4()
- matrix4x4 matrix4x4(var values)
- matrix4x4 matrix4x4(real m11, real m12, real m13, real m14, real m21, real m22, real m23, real m24, real m31, real m32, real m33, real m34, real m41, real m42, real m43, real m44)
- bool openUrlExternally(url target)
- point point(real x, real y)
- string qsTr(string sourceText, string disambiguation, int n)
- string qsTrId(string id, int n)
- string qsTranslate(string context, string sourceText, string disambiguation, int n)
- quaternion quaternion(real scalar, real x, real y, real z)
- quit()
- rect rect(real x, real y, real width, real height)
- url resolvedUrl(url url)
- url resolvedUrl(url url, object context)
- color rgba(real red, real green, real blue, real alpha)
- size size(real width, real height)
- color tint(color baseColor, color tintColor)
- url url(url url)
- vector2d vector2d(real x, real y)
- vector3d vector3d(real x, real y, real z)
- vector4d vector4d(real x, real y, real z, real w)
Detaillierte Beschreibung
Qt
ist ein Singleton-Typ, der Hilfsfunktionen, Eigenschaften und Enums bereitstellt. Hier ein Beispiel für die Verwendung dieses Typs:
import QtQuick 2.0 Text { color: Qt.rgba(1, 0, 0, 1) text: Qt.md5("hello, world") }
Aufzählungen
Das Qt-Objekt enthält die Enums, die in Qt Namespace verfügbar sind. Sie können beispielsweise auf die Aufzählungswerte Qt::LeftButton und Qt::RightButton als Qt.LeftButton
und Qt.RightButton
zugreifen.
Typen
Das Qt-Objekt enthält auch Hilfsfunktionen zum Erstellen von Objekten mit bestimmten Datentypen. Dies ist vor allem dann nützlich, wenn Sie die Eigenschaften eines Objekts festlegen und die Eigenschaft einen der folgenden Typen hat:
Wenn das Modul QtQuick
importiert wurde, stehen den Clients auch die folgenden Hilfsfunktionen zur Erstellung von Objekten bestimmter Datentypen zur Verfügung:
color
- use Qt.rgba(), Qt.hsla(), Qt.darker(), Qt.lighter() oder Qt.tint()font
- Qt.font() verwendenvector2d
- Qt.vector2d() verwendenvector3d
- Qt.vector3d() verwendenvector4d
- Qt.vector4d() verwendenquaternion
- Qt.quaternion() verwendenmatrix4x4
- Qt.matrix4x4 verwenden ()
Datum/Uhrzeit-Formatierer
Das Qt-Objekt enthält mehrere Funktionen zur Formatierung der Werte QDateTime, QDate und QTime.
- string Qt.formatDateTime(datetime date, variant format)
- string Qt.formatDate(datetime date, variant format)
- string Qt.formatTime(datetime date, variant format)
Die Formatspezifikation ist unter Qt.formatDateTime beschrieben.
Dynamische Objekterzeugung
Mit den folgenden Funktionen des globalen Objekts können Sie QML-Elemente dynamisch aus Dateien oder Strings erstellen. Einen Überblick über ihre Verwendung finden Sie unter Dynamische QML-Objekterstellung aus JavaScript.
- object Qt.createComponent(url)
- object Qt.createQmlObject(string qml, object parent, string filepath)
Andere Funktionen
Die folgenden Funktionen sind ebenfalls im Qt-Objekt enthalten.
- Qt.quit()
- Qt.md5(string)
- string Qt.btoa(string)
- string Qt.atob(string)
- object Qt.binding(function)
- object Qt.locale()
- string Qt.resolvedUrl(string)
- Qt.openUrlExternally(Zeichenkette)
- list<string> Qt.fontFamilies()
Dokumentation der Eigenschaft
application : Application |
Das application
Objekt ermöglicht den Zugriff auf globale Anwendungsstatus-Eigenschaften, die von vielen QML-Komponenten gemeinsam genutzt werden.
Es ist das gleiche wie das Application Singleton.
Das folgende Beispiel verwendet das application
Objekt, um anzuzeigen, ob die Anwendung gerade aktiv ist:
import QtQuick Rectangle { width: 300; height: 55 color: Qt.application.active ? "white" : "lightgray" Text { text: "Application " + (Qt.application.active ? "active" : "inactive") opacity: Qt.application.active ? 1.0 : 0.5 anchors.centerIn: parent } }
Hinweis: Wenn QML ohne QGuiApplication verwendet wird, sind die folgenden Eigenschaften undefiniert:
- application.active
- application.state
- application.layoutDirection
- application.font
inputMethod : InputMethod |
Es ist dasselbe wie das InputMethod Singleton.
Das Objekt inputMethod
ermöglicht den Zugriff auf das Objekt QInputMethod der Anwendung und alle seine Eigenschaften und Slots. Weitere Einzelheiten finden Sie in der Dokumentation QInputMethod.
platform : object |
Das platform
Objekt liefert Informationen über die zugrunde liegende Plattform.
Seine Eigenschaften sind:
platform.os | Diese schreibgeschützte Eigenschaft enthält den Namen des Betriebssystems. Mögliche Werte sind:
Hinweis: Der Wert der Eigenschaft unter macOS ist "osx", unabhängig von der Apple-Namenskonvention. Der zurückgegebene Wert wird für Qt 7 auf "macos" aktualisiert. |
platform.pluginName | Dies ist der Name der Plattform, die in der Instanz QGuiApplication eingestellt ist und von QGuiApplication::platformName() zurückgegeben wird. |
styleHints : object |
Das styleHints
Objekt bietet plattformspezifische Style-Hinweise und Einstellungen. Siehe die QStyleHints Dokumentation für weitere Details.
Sie sollten stattdessen über Application::styleHints auf StyleHints zugreifen, da dies bessere Typinformationen für Werkzeuge wie das Qt Quick Compiler.
Hinweis: Das Objekt styleHints
ist nur verfügbar, wenn Sie das Modul Qt Quick verwenden.
uiLanguage : string |
Das uiLanguage-Objekt enthält den Namen der Sprache, die für die Übersetzung der Zeichenketten der Benutzeroberfläche verwendet wird. Sie ist in C++ als QQmlEngine::uiLanguage-Eigenschaft verfügbar.
Sie können den Wert frei setzen und in Bindungen verwenden. Es wird empfohlen, sie nach der Installation von Übersetzern in Ihrer Anwendung zu setzen. Konventionell bedeutet eine leere Zeichenkette, dass keine Übersetzung aus der im Quellcode verwendeten Sprache erfolgen soll.
Wenn Sie QQmlApplicationEngine verwenden und sich der Wert ändert, wird QQmlEngine::retranslate() aufgerufen.
Dokumentation der Methode
callLater(function) |
callLater(function, argument1, argument2, ...) |
Verwenden Sie diese Funktion, um redundante Aufrufe einer Funktion oder eines Signals zu vermeiden.
Die Funktion, die als erstes Argument an Qt.callLater() übergeben wird, wird später aufgerufen, wenn die QML-Engine zur Ereignisschleife zurückkehrt.
Wenn diese Funktion mehrmals kurz hintereinander mit der gleichen Funktion als erstes Argument aufgerufen wird, wird diese Funktion nur einmal aufgerufen.
Zum Beispiel:
import QtQuick Rectangle { width: 480 height: 320 property int callsToUpdateMinimumWidth: 0 property bool optimize: true property int currentTextModel: 0 property var columnTexts: [ ["Click on either", "rectangle above", "and note how the counter", "below updates", "significantly faster using the", "regular (non-optimized)", "implementation"], ["The width", "of this column", "is", "no wider than the", "widest item"], ["Note how using Qt.callLater()", "the minimum width is", "calculated a bare-minimum", "number", "of times"] ] Text { x: 20; y: 280 text: "Times minimum width has been calculated: " + callsToUpdateMinimumWidth } Row { y: 25; spacing: 30; anchors.horizontalCenter: parent.horizontalCenter Rectangle { width: 200; height: 50; color: "lightgreen" Text { text: "Optimized behavior\nusing Qt.callLater()"; anchors.centerIn: parent } MouseArea { anchors.fill: parent; onClicked: { optimize = true; currentTextModel++ } } } Rectangle { width: 200; height: 50; color: "lightblue" Text { text: "Regular behavior"; anchors.centerIn: parent} MouseArea { anchors.fill: parent; onClicked: { optimize = false; currentTextModel++ } } } } Column { id: column anchors.centerIn: parent onChildrenChanged: optimize ? Qt.callLater(updateMinimumWidth) : updateMinimumWidth() property int widestChild function updateMinimumWidth() { callsToUpdateMinimumWidth++ var w = 0; for (var i in children) { var child = children[i]; if (child.implicitWidth > w) { w = child.implicitWidth; } } widestChild = w; } Repeater { id: repeater model: columnTexts[currentTextModel%3] delegate: Text { color: "white" text: modelData width: column.widestChild horizontalAlignment: Text.Center Rectangle { anchors.fill: parent; z: -1; color: index%2 ? "gray" : "darkgray" } } } } }
Alle zusätzlichen Argumente, die an Qt.callLater() übergeben werden, werden an die aufgerufene Funktion weitergereicht. Beachten Sie, dass, wenn redundante Aufrufe eliminiert werden, nur der letzte Satz von Argumenten an die Funktion weitergegeben wird.
Markiert sourceText für die dynamische Übersetzung in die angegebene context; d.h. die gespeicherte sourceText wird nicht verändert.
Wenn dieselbe sourceText in verschiedenen Rollen innerhalb desselben Übersetzungskontexts verwendet wird, kann eine zusätzliche Identifizierungszeichenfolge für disambiguation übergeben werden.
Gibt die sourceText zurück.
QT_TRANSLATE_NOOP wird in Verbindung mit den dynamischen Übersetzungsfunktionen qsTr() und qsTranslate() verwendet. Es identifiziert eine Zeichenkette als übersetzungsbedürftig (damit sie von lupdate
identifiziert werden kann), überlässt aber die eigentliche Übersetzung den dynamischen Funktionen.
Beispiel:
Item { property string greeting: QT_TRANSLATE_NOOP("CustomContext", "hello") Text { text: qsTranslate("CustomContext", greeting) } }
Siehe auch Internationalisierung mit Qt.
Markiert id für die dynamische Übersetzung.
Gibt die id zurück.
QT_TRID_NOOP wird in Verbindung mit der dynamischen Übersetzungsfunktion qsTrId() verwendet. Sie identifiziert einen String als übersetzungsbedürftig (so dass er mit lupdate
identifiziert werden kann), überlässt aber die eigentliche Übersetzung qsTrId().
Beispiel:
Siehe auch qsTrId() und Internationalisierung mit Qt.
Markiert sourceText für dynamische Übersetzung; d.h. die gespeicherte sourceText wird nicht verändert.
Wenn dieselbe sourceText in verschiedenen Rollen innerhalb desselben Übersetzungskontexts verwendet wird, kann ein zusätzlicher Identifizierungsstring für disambiguation übergeben werden.
Gibt die sourceText zurück.
QT_TR_NOOP wird in Verbindung mit den dynamischen Übersetzungsfunktionen qsTr() und qsTranslate() verwendet. Es identifiziert eine Zeichenkette als übersetzungsbedürftig (damit sie von lupdate
identifiziert werden kann), überlässt aber die eigentliche Übersetzung den dynamischen Funktionen.
Beispiel:
Siehe auch Internationalisierung mit Qt.
Gibt baseColor mit einem Alpha-Wert von value zurück.
value ist ein realer Wert zwischen 0 (völlig transparent) und 1 (völlig undurchsichtig).
string atob(data) |
ASCII zu binär - diese Funktion dekodiert den base64 kodierten data String und gibt ihn zurück.
binding(function) |
Gibt ein JavaScript-Objekt zurück, das eine Eigenschaftsbindung darstellt, mit einer function, die die Bindung auswertet.
Es gibt zwei Hauptanwendungsfälle für diese Funktion: Erstens, um eine Eigenschaftsbindung zwingend aus JavaScript-Code anzuwenden:
Item { property bool someCondition: true property int edgePosition Component.onCompleted: { if (someCondition == true) { // bind to the result of the binding expression passed to Qt.binding() edgePosition = Qt.binding(function() { return x + width }) } } }
und zweitens, um eine Eigenschaftsbindung bei der Initialisierung von Eigenschaftswerten dynamisch konstruierter Objekte (über Component.createObject() oder Loader.setSource()) anzuwenden.
Nehmen wir zum Beispiel die Existenz einer DynamicText-Komponente an:
import QtQuick Text { id: textElement width: 200 height: 200 text: "Default text" property string dynamicText: "Dynamic text" onTextChanged: console.log(text) }
die Ausgabe von:
Item { id: root property string dynamicText: "Root text" Component.onCompleted: { var c = Qt.createComponent("DynamicText.qml") var obj1 = c.createObject(root, { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) }) root.dynamicText = "Modified root text" var obj2 = c.createObject(root, { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) }) obj2.dynamicText = "Modified dynamic text" } }
und von:
Item { id: root property string dynamicText: "Root text" Loader { id: loaderOne onLoaded: root.dynamicText = "Modified root text" } Loader { id: loaderTwo onLoaded: item.dynamicText = "Modified dynamic text" } Component.onCompleted: { loaderOne.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) }) loaderTwo.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) }) } }
sollten beide sein:
Root text extra text Modified root text extra text Dynamic text extra text Modified dynamic text extra text
Diese Funktion kann nicht in Eigenschaftsbindungsdeklarationen verwendet werden (siehe die Dokumentation zu Bindungsdeklarationen und Bindungszuweisungen), außer wenn das Ergebnis in einem Array gespeichert wird, das an eine var-Eigenschaft gebunden ist.
string btoa(data) |
Binary to ASCII - diese Funktion gibt eine base64-Kodierung von data zurück.
Gibt die Farbe zurück, die der angegebenen name entspricht (d.h. rot oder #ff0000). Wenn es keine solche Farbe gibt, wird null
zurückgegeben.
Gibt true
zurück, wenn sowohl lhs als auch rhs die gleichen Farbwerte ergeben. Beide Argumente können entweder Farbwerte oder Zeichenkettenwerte sein. Wenn ein String-Wert übergeben wird, muss er in eine Farbe konvertierbar sein, wie für den Wertetyp color beschrieben.
Component createComponent(url url, enumeration mode, QtObject parent) |
Gibt ein Component -Objekt zurück, das unter Verwendung der QML-Datei unter der angegebenen url erstellt wurde, oder null
, wenn eine leere Zeichenkette angegeben wurde.
Die Component::status Eigenschaft der zurückgegebenen Komponente zeigt an, ob die Komponente erfolgreich erstellt wurde. Wenn der Status Component.Error
ist, finden Sie unter Component::errorString() eine Fehlerbeschreibung.
Wenn der optionale Parameter mode auf Component.Asynchronous
gesetzt ist, wird die Komponente in einem Hintergrund-Thread geladen. Die Eigenschaft Component::status lautet Component.Loading
während des Ladevorgangs. Der Status ändert sich zu Component.Ready
, wenn die Komponente erfolgreich geladen wird, oder zu Component.Error
, wenn das Laden fehlschlägt. Dieser Parameter ist standardmäßig auf Component.PreferSynchronous
gesetzt, wenn er weggelassen wird.
Wenn mode auf Component.PreferSynchronous
gesetzt ist, versucht Qt, die Komponente synchron zu laden, kann sie aber gegebenenfalls auch asynchron laden. Zu den Szenarien, die ein asynchrones Laden verursachen können, gehören unter anderem die folgenden:
- Die URL verweist auf eine Netzwerkressource
- Die Komponente wird als Ergebnis einer anderen Komponente erstellt, die asynchron geladen wird.
Wenn der optionale Parameter parent angegeben wird, sollte er auf das Objekt verweisen, das zum übergeordneten Objekt für das erstellte Component Objekt wird. Wenn kein Modus übergeben wurde, kann dies das zweite Argument sein.
Rufen Sie Component.createObject() für die zurückgegebene Komponente auf, um eine Objektinstanz der Komponente zu erstellen.
Zum Beispiel:
import QtQuick Item { id: container width: 300; height: 300 function loadButton() { var component = Qt.createComponent("Button.qml"); if (component.status == Component.Ready) { var button = component.createObject(container); button.color = "red"; } } Component.onCompleted: loadButton() }
Weitere Informationen zur Verwendung dieser Funktion finden Sie unter Dynamische QML-Objekterstellung aus JavaScript.
Um ein QML-Objekt aus einer beliebigen QML-Zeichenkette (statt aus einer Datei) zu erstellen, verwenden Sie Qt.createQmlObject().
|
Dies ist eine überladene Funktion.
Gibt ein Component Objekt zurück, das für den durch moduleUri und typeName angegebenen Typ erstellt wurde.
import QtQml QtObject { id: root property Component myComponent: Qt.createComponent("QtQuick", "Rectangle", Component.Asynchronous, root) }
Diese Überladung verhält sich größtenteils wie die auf url
basierende Version, kann aber verwendet werden, um Typen zu instanziieren, die keine URL haben (z. B. C++-Typen, die über QML_ELEMENT registriert wurden).
Hinweis: In einigen Fällen hat die Übergabe von Component.Asynchronous
keine Auswirkung:
- Der Typ ist in C++ implementiert
- Der Typ ist eine Inline-Komponente.
Wenn der optionale Parameter parent übergeben wird, sollte er auf das Objekt verweisen, das das Elternobjekt für das erstellte Component Objekt wird. Wenn kein Modus übergeben wurde, kann dies das zweite Argument sein.
Diese Methode wurde in Qt 6.5 eingeführt.
Gibt ein neues Objekt zurück, das aus der angegebenen Zeichenkette qml erstellt wurde und den angegebenen parent hat, oder null
, wenn ein Fehler bei der Erstellung des Objekts auftrat.
Wenn filepath angegeben ist, wird es für die Fehlerberichterstattung für das erstellte Objekt verwendet.
Beispiel (wobei parentItem
die ID eines vorhandenen QML-Objekts ist):
const newObject = Qt.createQmlObject(` import QtQuick Rectangle { color: "red" width: 20 height: 20 } `, parentItem, "myDynamicSnippet" );
Im Falle eines Fehlers wird ein QQmlError Objekt ausgelöst. Dieses Objekt hat eine zusätzliche Eigenschaft, qmlErrors
, die ein Array der aufgetretenen Fehler ist. Jedes Objekt in diesem Array hat die Mitglieder lineNumber
, columnNumber
, fileName
und message
. Wenn zum Beispiel in dem obigen Ausschnitt color als "colro" falsch geschrieben wurde, würde das Array ein Objekt wie das folgende enthalten: {"lineNumber" : 1, "columnNumber" : 32, "fileName" : "dynamicSnippet1", "message" : "Cannot assign to non-existent property "colro""}.
Hinweis: Diese Funktion kehrt sofort zurück und funktioniert daher möglicherweise nicht, wenn der String qml neue Komponenten lädt (d. h. externe QML-Dateien, die noch nicht geladen wurden). In diesem Fall sollten Sie stattdessen Qt.createComponent() verwenden.
Warnung: Diese Funktion ist extrem langsam, da sie bei jedem Aufruf den übergebenen QML-String kompilieren muss. Außerdem ist es sehr einfach, ungültiges QML zu erzeugen, wenn man QML-Code programmatisch konstruiert. Es ist viel besser, Ihre QML-Komponenten als separate Dateien zu speichern und Eigenschaften und Methoden hinzuzufügen, um ihr Verhalten anzupassen, als neue Komponenten durch Stringmanipulation zu erzeugen.
Weitere Informationen zur Verwendung dieser Funktion finden Sie unter Dynamische QML-Objekterstellung aus JavaScript.
Gibt eine Farbe zurück, die um den angegebenen Faktor factor dunkler ist als baseColor.
Wenn der Faktor größer als 1,0 ist, gibt diese Funktion eine dunklere Farbe zurück. Wenn Sie den Faktor auf 3,0 setzen, wird eine Farbe mit einem Drittel der Helligkeit zurückgegeben. Wenn der Faktor kleiner als 1.0 ist, wird eine hellere Farbe zurückgegeben, aber wir empfehlen die Verwendung der Funktion Qt.lighter() für diesen Zweck. Wenn der Faktor 0 oder negativ ist, ist der Rückgabewert nicht spezifiziert.
Die Funktion konvertiert die aktuelle RGB-Farbe nach HSV, teilt die Wertkomponente (V) durch den Faktor und konvertiert die Farbe zurück nach RGB.
Wenn factor nicht angegeben wird, wird eine Farbe zurückgegeben, die 50% dunkler ist als baseColor (Faktor 2,0).
exit(int retCode) |
Diese Funktion bewirkt, dass das Signal QQmlEngine::exit(int) ausgegeben wird. Innerhalb des qml-Tools führt dies dazu, dass die Launcher-Anwendung mit dem angegebenen Rückgabewert (retCode) beendet wird. Um die Ereignisschleife mit einem bestimmten Rückgabewert zu verlassen, wenn diese Methode aufgerufen wird, kann eine C++-Anwendung das Signal QQmlEngine::exit(int) mit dem Slot QCoreApplication::exit(int) verbinden.
Siehe auch quit().
font font(object fontSpecifier) |
Gibt eine Schriftart mit den im Objekt fontSpecifier angegebenen Eigenschaften oder die nächstgelegene passende Schriftart zurück. Das Objekt fontSpecifier sollte Schlüssel-Wert-Paare enthalten, wobei die gültigen Schlüssel die Namen der Untereigenschaften des Typs font und die Werte die gültigen Werte für jede Untereigenschaft sind. Ungültige Schlüssel werden ignoriert.
Gibt eine Liste der für die Anwendung verfügbaren Schriftfamilien zurück.
Gibt eine String-Darstellung von date zurück, die optional mit format formatiert werden kann.
Der Parameter date kann ein JavaScript Date
Objekt, eine date Eigenschaft, ein QDate oder QDateTime Wert sein. Die Parameter format und localeFormatOption können alle möglichen Formatwerte sein, wie für Qt.formatDateTime() beschrieben.
Wenn format nicht angegeben ist, wird date unter Verwendung des Standardgebietsschemas Locale.ShortFormat formatiert.
Siehe auch Locale.
Gibt eine String-Darstellung von dateTime zurück, optional formatiert unter Verwendung von format und localeFormatOption.
Der Parameter dateTime kann ein JavaScript Date
Objekt, eine date Eigenschaft, ein QDate, QTime oder QDateTime Wert sein.
Wenn format nicht angegeben wird, wird dateTime unter Verwendung von Locale.ShortFormat mit dem Standardgebietsschema formatiert. Andernfalls sollte format entweder sein:
- Einer der Qt::DateFormat Aufzählungswerte, wie
Qt.RFC2822Date
oderQt.ISODate
. - Eine Zeichenkette, die das Format der zurückgegebenen Zeichenkette angibt, wie unten beschrieben.
- Ein
locale
Objekt.
Wenn format ein Gebietsschemaobjekt angibt, wird dateTime mit QLocale::toString formatiert. In diesem Fall kann localeFormatOption einen Wert des Typs QLocale::FormatType enthalten, um die Formatierung weiter abzustimmen. Wenn keine Angabe gemacht wird, wird Locale.ShortFormat verwendet.
Wenn format eine Formatzeichenkette angibt, sollte sie die folgenden Ausdrücke verwenden, um das Datum anzugeben:
Ausdruck | Ausgabe |
---|---|
d | der Tag als Zahl ohne führende Null (1 bis 31) |
dd | der Tag als Zahl mit einer führenden Null (01 bis 31) |
ddd | der abgekürzte lokalisierte Tagesname (z. B. 'Mon' bis 'Sun'). Verwendet QDate::shortDayName(). |
dddd | der lange lokalisierte Tagesname (z. B. 'Montag' bis 'Qt::Sunday'). Verwendet QDate::longDayName(). |
M | der Monat als Zahl ohne führende Null (1-12) |
MM | der Monat als Zahl mit einer führenden Null (01-12) |
MMM | der abgekürzte lokalisierte Monatsname (z. B. 'Jan' bis 'Dez'). Verwendet QDate::shortMonthName(). |
MMMM | der lange lokalisierte Monatsname (z. B. 'Januar' bis 'Dezember'). Verwendet QDate::longMonthName(). |
jj | das Jahr als zweistellige Zahl (00-99) |
jjjj | die Jahreszahl als vierstellige Zahl |
Zusätzlich können die folgenden Ausdrücke verwendet werden, um die Zeit anzugeben:
Ausdruck | Ausgabe |
---|---|
h | die Stunde ohne führende Null (0 bis 23 oder 1 bis 12 bei AM/PM-Anzeige) |
hh | die Stunde mit einer führenden Null (00 bis 23 oder 01 bis 12 bei AM/PM-Anzeige) |
m | die Minute ohne führende Null (0 bis 59) |
mm | die Minute mit einer führenden Null (00 bis 59) |
s | die Sekunde ohne vorangestellte Null (0 bis 59) |
ss | die Sekunde mit einer führenden Null (00 bis 59) |
z | die Millisekunden ohne führende Nullen (0 bis 999) |
zzz | die Millisekunden mit führenden Nullen (000 bis 999) |
AP | AM/PM-Anzeige verwenden. AP wird entweder durch "AM" oder "PM" ersetzt. |
ap | am/pm-Anzeige verwenden. ap wird entweder durch "am" oder "pm" ersetzt. |
t | enthält eine Zeitzonenanzeige. |
Alle anderen Eingabezeichen werden ignoriert. Eine Folge von Zeichen, die in einfachen Anführungszeichen eingeschlossen sind, wird als Text behandelt und nicht als Ausdruck verwendet. Zwei aufeinanderfolgende einfache Anführungszeichen ("''") werden in der Ausgabe durch ein einfaches Anführungszeichen ersetzt.
Zum Beispiel, wenn der folgende Datums-/Zeitwert angegeben wurde:
// 21 May 2001 14:13:09 var dateTime = new Date(2001, 5, 21, 14, 13, 09)
Dieser Wert dateTime könnte an Qt.formatDateTime()
, Qt.formatDate() oder Qt.formatTime() mit den nachstehenden Werten format übergeben werden, um die folgenden Ergebnisse zu erzielen:
Format | Ergebnis |
---|---|
"tt.MM.jjjj" | 21.05.2001 |
"ddd MMMM d yy" | Di 21. Mai 01 |
"hh:mm:ss.zzz" | 14:13:09.042 |
"h:m:s ap" | 14:13:9 pm |
Siehe auch Locale.
Gibt eine String-Repräsentation von time zurück, optional formatiert mit format und, falls angegeben, localeFormatOption.
Der Parameter time kann ein JavaScript Date
Objekt, ein QTime oder QDateTime Wert sein. Bei den Parametern format und localeFormatOption kann es sich um jeden der möglichen Formatwerte handeln, die für Qt.formatDateTime() beschrieben sind.
Wenn format nicht angegeben wird, wird time unter Verwendung von Locale.ShortFormat mit dem Standardgebietsschema formatiert.
Siehe auch Locale.
void gc() |
Führt den Garbage Collector aus.
Dies ist gleichbedeutend mit dem Aufruf von QJSEngine::collectGarbage().
Siehe auch Garbage Collection.
Gibt eine Farbe mit den angegebenen Komponenten hue, saturation, lightness und alpha zurück. Alle Komponenten sollten im Bereich 0-1 (einschließlich) liegen.
Gibt eine Farbe mit den angegebenen Komponenten hue, saturation, value und alpha zurück. Alle Komponenten sollten im Bereich 0-1 (einschließlich) liegen.
bool isQtObject(object) |
Gibt true
zurück, wenn object ein gültiger Verweis auf ein Qt- oder QML-Objekt ist, andernfalls false
.
Gibt eine Farbe zurück, die um den angegebenen factor heller ist als baseColor.
Wenn der Faktor größer als 1.0 ist, gibt diese Funktion eine hellere Farbe zurück. Setzt man den Faktor auf 1.5, wird eine Farbe zurückgegeben, die 50% heller ist. Wenn der Faktor kleiner als 1.0 ist, wird eine dunklere Farbe zurückgegeben, aber wir empfehlen die Verwendung der Funktion Qt.darker() für diesen Zweck. Wenn der Faktor 0 oder negativ ist, ist der Rückgabewert nicht spezifiziert.
Die Funktion konvertiert die aktuelle RGB-Farbe in HSV, multipliziert die Wertkomponente (V) mit dem Faktor und konvertiert die Farbe zurück nach RGB.
Wenn factor nicht angegeben wird, wird eine Farbe zurückgegeben, die 50 % heller ist als baseColor (Faktor 1,5).
locale(name) |
Gibt ein JS-Objekt zurück, das das Gebietsschema mit dem angegebenen name repräsentiert, das das Format "language[_territory][.codeset][@modifier]" oder "C" hat, wobei:
language
ein kleingeschriebener, zweistelliger ISO 639-Sprachcode ist,territory
ein zweibuchstabiger ISO-3166-Ländercode in Großbuchstaben ist undcodeset
undmodifier
werden ignoriert.
Wenn die Zeichenkette gegen das Gebietsschema verstößt oder die Sprache kein gültiger ISO 369-Code ist, wird stattdessen das Gebietsschema "C" verwendet. Wenn country nicht vorhanden oder kein gültiger ISO-3166-Code ist, wird das am besten geeignete Land für die angegebene Sprache gewählt.
Siehe auch Locale.
string md5(data) |
Gibt einen Hex-String des md5-Hashes von data zurück.
matrix4x4 matrix4x4() |
Gibt eine Identitätsmatrix4x4 zurück.
Gibt eine Matrix4x4 mit der angegebenen values zurück. values wird als JavaScript-Array mit 16 Einträgen erwartet.
Die Array-Indizes entsprechen den Positionen in der Matrix wie folgt:
0 | 1 | 2 | 3 |
4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 |
Gibt eine Matrix4x4 mit den angegebenen Werten zurück.
Die Argumente entsprechen ihren Positionen in der Matrix:
m11 | m12 | m13 | m14 |
m21 | m22 | m23 | m24 |
m31 | m32 | m33 | m34 |
m41 | m42 | m43 | m44 |
Versucht, die angegebene target url in einer externen Anwendung zu öffnen, basierend auf den Desktop-Einstellungen des Benutzers. Gibt im Erfolgsfall true
zurück, andernfalls false
.
Warnung: Ein Rückgabewert von true
bedeutet, dass die Anwendung das Betriebssystem erfolgreich aufgefordert hat, die URL in einer externen Anwendung zu öffnen. Es ist möglich, dass die externe Anwendung trotzdem nicht startet oder den angeforderten URL nicht öffnen kann. Dieses Ergebnis wird nicht an die Anwendung zurückgemeldet.
Gibt eine übersetzte Version von sourceText zurück, optional basierend auf einer disambiguation Zeichenfolge und dem Wert von n für Zeichenfolgen, die Pluralformen enthalten; andernfalls wird sourceText selbst zurückgegeben, wenn keine geeignete übersetzte Zeichenfolge verfügbar ist.
Beispiele mit sourceText und n:
Text { text: qsTr("hello") }
// Translates the source text into the correct // plural form and replaces %n with the value of total. Text { text: qsTr("%n message(s) saved", "", total) }
Wenn dieselbe sourceText in verschiedenen Rollen innerhalb desselben Übersetzungskontexts verwendet wird, kann eine zusätzliche Identifizierungszeichenfolge für disambiguation übergeben werden. Weitere Informationen und Beispiele finden Sie unter Disambiguate Identical Text.
Siehe auch qsTranslate(), Internationalisierung mit Qt, und Quellcode für die Übersetzung schreiben.
Gibt eine übersetzte Zeichenkette zurück, die durch id identifiziert wird. Wenn keine passende Zeichenkette gefunden wird, wird die id selbst zurückgegeben. Dies sollte unter normalen Bedingungen nicht passieren.
Wenn n >= 0 ist, werden alle Vorkommen von %n
in der resultierenden Zeichenkette durch eine dezimale Darstellung von n ersetzt. Darüber hinaus kann der Übersetzungstext je nach dem Wert von n variieren.
Beispiel:
Text { text: qsTrId("hello_id") }
Es ist möglich, eine Quelltextvorlage wie folgt zu liefern:
//% <string>
Text { //% "hello" text: qsTrId("hello_id") }
oder
/*
% <string> */
Text { /*% "hello" */ text: qsTrId("hello_id") }
Um binäre Übersetzungsdateien (QM) zu erstellen, die für diese Funktion geeignet sind, muss die Option -idbased
an das Tool lrelease
übergeben werden.
Siehe auch QT_TRID_NOOP() und Internationalisierung mit Qt.
Gibt eine übersetzte Version von sourceText innerhalb der angegebenen context zurück, optional basierend auf einer disambiguation Zeichenkette und dem Wert von n für Zeichenketten, die Plurale enthalten; andernfalls wird sourceText selbst zurückgegeben, wenn keine passende übersetzte Zeichenkette verfügbar ist.
Wenn dieselbe sourceText in verschiedenen Rollen innerhalb derselben Übersetzung context verwendet wird, kann eine zusätzliche Identifizierungszeichenfolge für disambiguation übergeben werden.
Beispiel:
Text { text: qsTranslate("CustomContext", "hello") }
Verwenden Sie, wenn Sie eine Übersetzung context haben, die sich von der Datei context unterscheidet.
Siehe auch Internationalisierung mit Qt und qsTr().
quaternion quaternion(real scalar, real x, real y, real z) |
Gibt ein Quaternion mit den angegebenen Werten scalar, x, y und z zurück.
quit() |
Diese Funktion bewirkt, dass das Signal QQmlEngine::quit() ausgegeben wird. Innerhalb des qml-Werkzeugs führt dies zum Beenden der Launcher-Anwendung; um eine C++-Anwendung zu beenden, wenn diese Methode aufgerufen wird, verbinden Sie das Signal QQmlEngine::quit() mit dem Steckplatz QCoreApplication::quit().
Siehe auch exit().
Liefert ein Rect mit der linken oberen Ecke bei x, y und den angegebenen width und height.
Gibt url relativ zur URL des Aufrufers aufgelöst zurück.
Wenn es keinen Aufrufer gibt oder der Aufrufer nicht mit einem QML-Kontext verbunden ist, wird url relativ zur Basis-URL der QML-Engine aufgelöst zurückgegeben. Wenn die QML-Engine keine Basis-URL hat, wird einfach url zurückgegeben.
Siehe auch url().
Gibt url aufgelöst relativ zur URL des QML-Kontexts von context zurück. Wenn context nicht mit einem QML-Kontext verbunden ist, wird url aufgelöst relativ zur Basis-URL der QML-Engine zurückgegeben. Wenn die QML-Engine keine Basis-URL hat, wird nur url zurückgegeben.
Siehe auch url().
Gibt eine Farbe mit den angegebenen Komponenten red, green, blue und alpha zurück. Alle Komponenten sollten im Bereich 0-1 (einschließlich) liegen.
Mit dieser Funktion kann eine Farbe (baseColor) mit einer anderen (tintColor) eingefärbt werden.
Die Tönungsfarbe sollte in der Regel weitgehend transparent sein, sonst kann man die darunter liegende Farbe nicht sehen. Im folgenden Beispiel wird ein leichter Rotstich erzeugt, indem die Tönungsfarbe ein reines Rot ist, das nur zu 1/16 deckend ist.
Item { Rectangle { x: 0; width: 80; height: 80 color: "lightsteelblue" } Rectangle { x: 100; width: 80; height: 80 color: Qt.tint("lightsteelblue", "#10FF0000") } }
Die Tönung ist vor allem dann nützlich, wenn eine subtile Veränderung aufgrund eines Ereignisses vermittelt werden soll; dann können Sie die sichtbare Farbe mit Hilfe der Tönung besser abstimmen.
Gibt url wortwörtlich zurück. Dies kann verwendet werden, um eine Typ-Zwangsumwandlung zu url
zu erzwingen. Im Gegensatz zu Qt.resolvedUrl() bleiben hier alle relativen URLs erhalten. Da Strings implizit in URLs umgewandelt werden, kann die Funktion mit einem String als Argument aufgerufen werden und gibt dann eine URL zurück.
Siehe auch resolvedUrl().
Gibt einen vector3d mit den angegebenen Werten x, y und z zurück.
Gibt einen vector4d mit den angegebenen Werten x, y, z und w zurück.
© 2025 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.