Тип 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