url QML Value Type
ein Ressourcenlokalisierer. Mehr...
Ausführliche Beschreibung
Der Typ „ url “ bezieht sich auf einen Ressourcenlokator (wie beispielsweise einen Dateinamen). Dieser kann entweder absolut sein, z. B. „http://qt-project.org“, oder relativ, z. B. „pics/logo.png“. Eine relative URL wird relativ zur URL der enthaltenen Komponente aufgelöst.
Beispielsweise wird im folgenden Code der Eigenschaft „ Image::source “ vom Typ „ url “ eine gültige URL zugewiesen:
Image { source: "pics/logo.png" }Beachten Sie bei der Integration mit C++, dass jeder aus C++ an QML übergebene „ QUrl “-Wert automatisch in einen „ url “-Wert umgewandelt wird und umgekehrt.
Alternativ können Sie Ihre ` url ` in ein `URL `-Objekt konvertieren, um auf dessen Komponenten zuzugreifen und diese zu ändern:
var urlObject = new URL(url);Hinweis: In Qt 5 wurden URLs bei der Zuweisung an eine beliebige ` url `-Eigenschaft automatisch basierend auf dem aktuellen Kontext aufgelöst. Dies machte die Arbeit mit relativen URLs unmöglich und führte zu inkonsistentem Verhalten beim Zurücklesen einer zuvor in eine Eigenschaft geschriebenen URL. Daher wurde das Verhalten in Qt 6 geändert: URLs werden bei der Zuweisung nicht mehr automatisch aufgelöst. Die einzelnen Elemente, die URLs verwenden, müssen diese selbst auflösen.
Hinweis: Wenn Sie innerhalb von Qml auf Dateien verweisen, die mit dem Qt-Ressourcensystem gespeichert sind, sollten Sie „qrc:///“ anstelle von „:/“ verwenden, da Qml URL-Pfade erfordert. Relative URLs, die innerhalb dieser Datei aufgelöst werden, verwenden dasselbe Protokoll.
Zudem können URLs Zeichen enthalten, die nach dem in RFC 3986 festgelegten „Prozent-Kodierungsschema“ kodiert sind. Diese Zeichen bleiben in Eigenschaften vom Typ „ url “ erhalten, damit QML-Code präzise URL-Werte erstellen kann.
Beispielsweise kann auf eine lokale Datei, die ein „#“-Zeichen enthält – das normalerweise als Beginn des URL-„Fragment“-Elements interpretiert würde –, durch Kodierung der Zeichen des Dateinamens zugegriffen werden:
Image { source: encodeURIComponent("/tmp/test#1.png") }Dieser Werttyp wird von der Sprache QML bereitgestellt.
Siehe auch QML-Werttypen.
© 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.