Тип QML ContactDetails
Тип ContactDetails хранит контактные данные для объекта Place. Подробнее...
| Заявление импорта: | import QtLocation 5.12 |
| С момента: | QtLocation 5.5 |
Методы
- variant keys()
Подробное описание
Тип ContactDetails представляет собой карту объектов ContactDetail. Для доступа к контактным данным в карте используйте метод keys() для получения списка ключей, хранящихся в карте, а затем используйте оператор [] для доступа к элементам ContactDetail.
В API определены следующие ключи. Реализации плагинов Plugin могут определять дополнительные ключи.
- phone
- fax
- website
ContactDetails используются только в контексте объектов Place. Невозможно напрямую создать объект 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);
}
}
} Возвращаемый список контактных данных является списком объектов (object list) и поэтому может быть использован непосредственно как модель данных. Например, следующее демонстрирует, как отобразить список контактных телефонных номеров в списке:
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/qt-5.12/qml-qtlocation-contactdetails.html