我在 QML 中声明了 Rectangle,如下所示:
Rectangle {
objectName: "myquickitemobject"
signal doSomething
MouseArea {
anchors.fill: parent
onClicked: {
doSomething()
}
}
}
我可以将 QQuickItem 对象myquickitemobject
放入 C++ 中,如下所示
// main.cpp
QQuickItem *my_quickitem = m_qml_item_root->findChild<QQuickItem*>("myquickitemobject");
问题:
如何将signal doSomething
QML 中的 decalred 连接到 C++ 中的函数或 lambda?
试图做类似下面的事情是行不通的..
QObject::connect(my_quickitem, doSomething, []{
std::cout << "Signal doSomething called" << std::endl;
});