Auf dieser Seite

Schnittstellen zwischen C++ und QML-Code in Qt Positioning

Übersicht

Qt Positioning nutzt zwei Methoden, um den Austausch von Positionsdaten zwischen C++- und QML-Code zu vereinfachen.

Direkte Zuordnung

Qt Positioning ermöglicht es Ihnen, die folgenden Werttypen von QML an C++ zu übergeben und umgekehrt:

QVariant-basierte Integration

Dieser Abschnitt enthält Informationen zur Integration von „ QGeoAddress “ und „ QGeoLocation “.

Adresse – QGeoAddress

Die Eigenschaft „ Address.address “ dient als Schnittstelle zwischen C++- und QML-Code. Zunächst muss in C++ ein Zeiger auf ein „ Address “-Objekt abgerufen werden. Anschließend müssen die Funktionen „ property()“ und „ setProperty()“ verwendet werden, um die Eigenschaft „ address “ abzurufen bzw. festzulegen.

Der folgende Codeabschnitt ruft das „ QGeoAddress “-Objekt aus C++ ab:

 QGeoAddress geoAddress = qmlObject->property("address").value<QGeoAddress>();

Der folgende Codeabschnitt setzt die Eigenschaft „address“ des QML-Objekts basierend auf einem „ QGeoAddress “-Objekt aus C++:

qmlObject->setProperty("address", QVariant::fromValue(geoAddress));

Standort – QGeoLocation

Die Eigenschaft „ Location.location “ dient als Schnittstelle zwischen C++- und QML-Code. Zunächst muss aus C++ ein Zeiger auf ein „ Location “-Objekt abgerufen werden. Anschließend müssen die Funktionen „ property()“ und „ setProperty()“ verwendet werden, um die Eigenschaft „ location “ abzurufen bzw. festzulegen.

Der folgende Codeabschnitt ruft das ` QGeoLocation `-Objekt aus C++ ab:

QGeoLocation geoLocation = qmlObject->property("location").value<QGeoLocation>();

Der folgende Codeabschnitt setzt die „location“-Eigenschaft des QML-Objekts basierend auf einem „ QGeoLocation “-Objekt aus C++:

qmlObject->setProperty("location", QVariant::fromValue(geoLocation));

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