Сценарий:
У меня есть приложение Qt , которое работает на Qt 5.9.4 коммерческая версия.Это приложение на базе QtQuick
и QML
, которое работает на iOS и Android .
У меня есть элемент QML
в пользовательском интерфейсе, подобный этому:
SomeItem {
text: qsTr("Some Item")
objectName: "someitem"
visible: false
onClicked: {
console.log("Some item was clicked")
}
}
У меня есть функция C ++, которая может легко управлять свойствами SomeItem
.
void MyCppClass::Func() {
QQuickItem *someItem = qml_engine->rootObjects()[0]->findChild<QQuickItem*>("someitem");
someItem->setVisible(true); // this works
// How to listen to someItem's onClick event here
}
Вопрос:
Я хочу прослушать событие onClick someItem
в методе C ++ или лямбду, не меняя ничего в QML.В основном подключите к сигналу onClick someItem
со стороны самого C ++.Как я могу это сделать?