Тип QML ContactDetails
Тип ContactDetails хранит контактные данные для Place. Подробнее...
| Оператор импорта: | import QtLocation 5.11 |
| С тех пор: | QtLocation 5.5 |
Методы
- variant keys()
Подробное описание
Тип ContactDetails представляет собой карту объектов ContactDetail. Для доступа к контактным данным в карте используйте метод keys() для получения списка ключей, хранящихся в карте, а затем оператор [] для доступа к элементам ContactDetail.
В API определены следующие ключи. Реализации плагинов могут определять дополнительные ключи.
- phone
- fax
- website
ContactDetails используются только в контексте Place. Невозможно создать экземпляр ContactDetails напрямую или переназначить экземпляры ContactDetails для Place. Изменение ContactDetails возможно только через JavaScript.
Примеры
Следующий пример показывает, как получить все ContactDetails и вывести их в консоль:
import QtPositioning 5.5
import QtLocation 5.6
function printContactDetails(contactDetails) {
var keys = contactDetails.keys();
for (var i = 0; i < keys.length; ++i) {
var contactList = contactDetails[keys[i]];
for (var j = 0; j < contactList.length; ++j) {
console.log(contactList[j].label + ": " + contactList[j].value);
}
}
} Возвращаемый список контактных данных является списком объектов, и его можно использовать непосредственно в качестве модели данных. Например, следующий пример демонстрирует, как отобразить список телефонных номеров контактов в списке:
import QtQuick 2.0
import QtPositioning 5.5
import QtLocation 5.6
ListView {
model: place.contactDetails.phone;
delegate: Text { text: modelData.label + ": " + modelData.value }
} Следующий пример демонстрирует, как назначить один телефонный номер месту в JavaScript:
function writeSingle() {
var phoneNumber = Qt.createQmlObject('import QtLocation 5.3; ContactDetail {}', place);
phoneNumber.label = "Phone";
phoneNumber.value = "555-5555"
place.contactDetails.phone = phoneNumber;
} Следующий пример демонстрирует, как назначить несколько телефонных номеров месту в JavaScript:
function writeMultiple() {
var bob = Qt.createQmlObject('import QtLocation 5.3; ContactDetail {}', place);
bob.label = "Bob";
bob.value = "555-5555"
var alice = Qt.createQmlObject('import QtLocation 5.3; ContactDetail {}', place);
alice.label = "Alice";
alice.value = "555-8745"
var numbers = new Array();
numbers.push(bob);
numbers.push(alice);
place.contactDetails.phone = numbers;
} Документация по методам
variant keys()
Возвращает массив ключей контактных данных, текущих хранящихся в карте.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qml-qtlocation-contactdetails.html