Spec-Zone.ru › Qt 5.9

Тип QML ContactDetails

Тип ContactDetails содержит данные контакта для Местоположения. Подробнее...

Заявление об импорте: import QtLocation 5.3
С: Qt Location 5.5
  • Список всех членов, включая унаследованные

Методы

  • variant keys()

Подробное описание

Тип ContactDetails представляет собой карту объектов ContactDetail. Для доступа к данным контакта в карте используйте метод keys(), чтобы получить список ключей, хранящихся в карте, а затем используйте оператор [] для доступа к элементам ContactDetail.

В API определены следующие ключи. Реализации плагина могут определять дополнительные ключи.

  • phone
  • fax
  • email
  • website

ContactDetails используются только в контексте Местоположений. Невозможно напрямую создать экземпляр ContactDetails или повторно назначить экземпляры ContactDetails в Местоположения. Изменение 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.9/qml-qtlocation-contactdetails.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API