Auf dieser Seite

string QML Value Type

Eine frei formatierte Textzeichenfolge. Mehr...

Since: Qt 6.12

Ausführliche Beschreibung

Der Typ „ string “ bezieht sich auf eine frei formatierte Textzeichenfolge in Anführungszeichen, zum Beispiel „Hello world!“. Die Sprache QML stellt diesen Werttyp standardmäßig zur Verfügung.

Beispiel:

Text { text: "Hello world!" }

Eigenschaften vom Typ „ string “ sind standardmäßig leer.

Zeichenketten verfügen über ein Attribut „ length “, das die Anzahl der Zeichen in der Zeichenkette angibt.

Der Werttyp „string“ basiert auf dem C++-Typ „ QString “. Er erweitert den primitiven JavaScript-Typ „String“, indem er weitgehend dieselbe API sowie einige zusätzliche Methoden bereitstellt. Beispielsweise unterstützt die Methode „ arg() “ des QML-Werttyps „string“ die Wertersetzung:

var message = "There are %1 items"
var count = 20
console.log(message.arg(count))  // "There are 20 items"

Die Methode „ arg() “ unterstützt zudem mehrere Argumente, sodass Sie mehrere Platzhalter in einem einzigen Aufruf ersetzen können:

var message = "%1 of %2 files copied. Errors: %3"
console.log(message.arg(5, 7, 0))  // "5 of 7 files copied. Errors: 0"

Die Verwendung mehrerer Argumente ist effizienter als die Verkettung von „ arg() “-Aufrufen und schützt vor Problemen, wenn die Argumente selbst Platzhalter enthalten:

var result = "%1 %2".arg("%1f", "Hello")  // "%1f Hello" (correct)
// Compare with chained calls:
var result = "%1 %2".arg("%1f").arg("Hello")  // "Hellof %2" (incorrect)

Der QML-Werttyp „string“ unterstützt die meisten ECMAScript-String-Funktionen, wie z. B. Template-Literale (String-Literale), String-Interpolation, mehrzeilige Strings und Schleifen über Strings.

Im Allgemeinen unterstützt die QML-Zeichenkette die meisten JavaScript-String-Methoden, darunter die Überprüfung auf das Vorhandensein von Elementen mit ` string.includes()`, ` string.startsWith()` und ` string.endsWith()`; die Wiederholung einer Zeichenkette mit ` string.repeats()` sowie das Auslesen und Aufteilen mit ` string.slice() ` und ` string.split()`.

Weitere Informationen dazu, welche ECMAScript-Version QML unterstützt, finden Sie unter „JavaScript-Hostumgebung“

Weitere Informationen zu JavaScript-String-Methoden finden Sie unter mdn JavaScript String

Bei der Integration mit C++ ist zu beachten, dass jeder von C++ an QML übergebene Wert vom Typ „ QString “ automatisch in einen Wert vom Typ „ string “ konvertiert wird und umgekehrt.

Siehe auch „QML-Werttypen “ und „ECMAScript-Sprachspezifikation“.

© 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.