Spec-Zone.ru › Qt 5.6

Тип QML list

список объектов QML.

Тип list относится к списку объектов QML.

Значение списка можно получить, подобно массиву JavaScript:

  • Значения присваиваются с использованием синтаксиса квадратных скобок [] с разделителями запятых.
  • Свойство length предоставляет количество элементов в списке.
  • Элементы списка извлекаются с использованием синтаксиса [index].

Список list может содержать только объекты QML и не может содержать значения базовых типов. (Для хранения базовых типов в списке используйте тип var).

При интеграции с C++, обратите внимание, что любое значение QQmlListProperty, переданное в QML из C++, автоматически преобразуется в значение типа list, и наоборот.

Использование типа list

Например, тип Item имеет свойство типа список states, которое можно назначать и использовать следующим образом:

import QtQuick 2.0

Item {
    width: 100; height: 100

    states: [
        State { name: "activated" },
        State { name: "deactivated" }
    ]

    Component.onCompleted: {
        console.log("Name of first state:", states[0].name)
        for (var i = 0; i < states.length; i++)
            console.log("state", i, states[i].name)
    }
}

Определенные объекты State будут добавлены в список states в порядке их определения.

Если список содержит только один объект, квадратные скобки можно опустить:

import QtQuick 2.0

Item {
    width: 100; height: 100
    states: State { name: "activated" }
}

Обратите внимание, что объекты нельзя добавлять или удалять из списка по отдельности после его создания; чтобы изменить содержимое списка, его нужно переприсвоить новому списку.

Примечание: Тип list не рекомендуется использовать в качестве типа для пользовательских свойств. Следует использовать тип var, так как списки, хранящиеся с помощью типа var, могут быть изменены с большей гибкостью в QML.

Этот базовый тип предоставляется языком QML.

См. также Базовые типы QML.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qml-list.html

Spec-Zone.ru

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