ExtendedAttributes QML Type

Der Typ ExtendedAttributes enthält zusätzliche Daten über eine Place. Mehr...

Import Statement: import QtLocation 6.8
Since: QtLocation 5.5
In C++: QQmlPropertyMap

Signale

Methoden

Detaillierte Beschreibung

Der Typ ExtendedAttributes ist eine Karte von placeAttributes. Um auf die Attribute in der Karte zuzugreifen, verwenden Sie die Methode keys(), um die Liste der in der Karte gespeicherten Schlüssel zu erhalten, und verwenden Sie den Operator [], um auf die placeAttribute Elemente zuzugreifen.

Im Folgenden sind die Standardschlüssel aufgeführt, die von der API definiert werden. Plugin Implementierungen steht es frei, zusätzliche Schlüssel zu definieren. Benutzerdefinierte Schlüssel sollten durch ein eindeutiges Präfix qualifiziert werden, um Überschneidungen zu vermeiden.

SchlüsselBeschreibung
openingHoursDie Geschäftszeiten des Ortes
ZahlungDie Zahlungsarten, die der Ort akzeptiert, zum Beispiel Visa, Mastercard.
x_providerDer Name des Anbieters, von dem ein Ort bezogen wird
x_id_<Anbieter> (zum Beispiel x_id_hier)Ein alternativer Bezeichner, der den Ort aus der Sicht des angegebenen Anbieters identifiziert.

Einige Plugins unterstützen vielleicht gar keine Attribute, andere unterstützen vielleicht nur einen bestimmten Satz, wieder andere unterstützen vielleicht einen sich im Laufe der Zeit dynamisch ändernden Satz von Attributen oder erlauben sogar, dass Attribute willkürlich von der Client-Anwendung definiert werden. Die Attribute können auch von Ort zu Ort unterschiedlich sein, z. B. kann ein Ort Öffnungszeiten haben, ein anderer nicht. Einzelheiten finden Sie in den Plugin-Referenzen.

Einige Attribute sind möglicherweise nicht für den Endbenutzer lesbar, das Feld label solcher Attribute ist leer, um diese Tatsache anzuzeigen.

Hinweis: ExtendedAttributes-Instanzen werden immer nur im Kontext von Placeverwendet. Es ist nicht möglich, eine ExtendedAttributes-Instanz direkt zu erstellen oder die ExtendedAttributes-Eigenschaft einer Place neu zuzuweisen. Änderungen an ExtendedAttributes können nur über Javascript vorgenommen werden.

Das folgende Beispiel zeigt, wie man auf alle placeAttributes zugreifen und sie auf der Konsole ausgeben kann:

import QtPositioning
import QtLocation

function printExtendedAttributes(extendedAttributes) {
    var keys = extendedAttributes.keys();
    for (var i = 0; i < keys.length; ++i) {
        var key = keys[i];
        if (extendedAttributes[key].label !== "")
            console.log(extendedAttributes[key].label + ": " + extendedAttributes[key].text);
    }
}

Das folgende Beispiel zeigt, wie man ein Attribut zuweisen und ändern kann:

    //assign a new attribute to a place
    var smokingAttrib = Qt.createQmlObject('import QtLocation; PlaceAttribute {}', place);
    smokingAttrib.label = "Smoking Allowed"
    smokingAttrib.text = "No"
    place.extendedAttributes.smoking = smokingAttrib;

    //modify an existing attribute
    place.extendedAttributes.smoking.text = "Yes"

Siehe auch placeAttribute und QQmlPropertyMap.

Signal-Dokumentation

void valueChanged(string key, variant value)

Dieses Signal wird ausgegeben, wenn sich die Menge der Attribute ändert. key ist der Schlüssel, der dem value entspricht, der geändert wurde.

Der entsprechende Handler ist onValueChanged.

Hinweis: Der entsprechende Handler ist onValueChanged.


Dokumentation der Methode

variant keys()

Gibt ein Array der Schlüssel der Ortsattribute zurück, die derzeit in der Map gespeichert sind.


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