Spec-Zone.ru › Qt 6.1

Тип QML Connections

Описание обобщенных подключений к сигналам. Подробнее...

Заявление импорта: import QtQml 2.1
  • Список всех членов, включая унаследованные

Свойства

  • enabled : bool
  • ignoreUnknownSignals : bool
  • target : Object

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

Объект Connections создает подключение к QML сигналу.

При подключении к сигналам в QML обычно используется обработчик "on<Signal>", который реагирует при получении сигнала, например так:

MouseArea {
    onClicked: (mouse)=> { foo(mouse) }
}

Однако, в некоторых случаях подключение к сигналу таким образом невозможно, например, когда:

  • Требуется несколько подключений к одному и тому же сигналу
  • Создание подключений за пределами области действия отправителя сигнала
  • Подключение к целевым объектам, не определённым в QML

В таких случаях вместо этого можно использовать тип Connections.

Например, приведенный выше код можно изменить, используя объект Connections, например так:

MouseArea {
    Connections {
        function onClicked(mouse) { foo(mouse) }
    }
}

Более общо, объект Connections может быть дочерним элементом любого объекта, отличного от отправителя сигнала:

MouseArea {
    id: area
}
// ...
Connections {
    target: area
    function onClicked(mouse) { foo(mouse) }
}

См. также Qt QML.

Документация по свойствам

[since 5.7] enabled : bool

Это свойство указывает, принимает ли элемент события изменения.

По умолчанию это свойство true.

Это свойство было добавлено в Qt 5.7.

ignoreUnknownSignals : bool

Обычно подключение к несуществующему сигналу приводит к ошибкам во время выполнения.

Если это свойство установлено в true, такие ошибки игнорируются. Это полезно, если вы намерены подключаться к различным типам объектов, обрабатывая различные наборы сигналов для каждого объекта.

target : Object

Это свойство хранит объект, отправляющий сигнал.

Если это свойство не установлено, то target по умолчанию устанавливается в родителя Connection.

Если установлено в null, подключение не создается, и все обработчики сигналов игнорируются до тех пор, пока target не будет не null.

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

Spec-Zone.ru

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