我是 Qml 的新手,在将 javascript 处理程序连接到属性的信号时遇到了一些麻烦。我有一个带有属性和信号的 C++ 对象。
class CppObject : public QObject
{
Q_OBJECT
Q_PROPERTY(QVariant value READ getValue WRITE setValue NOTIFY valueChanged)
signals:
void valueChanged(const QVariant &);
};
这些对象是通过 C++ 工厂方法创建的,我能够将值和更改绑定到 Qml 属性。这一切都有效。
property CppObject obj: cppProxy.PropertyFactory("foo");
Text
{
x: 100;
y: 100;
text: parent.obj.value;
}
对于某些属性,我想将 valueChanged 信号连接到 javascript 函数。我一直在阅读 Qml 文档并尝试了很多东西,但没有任何运气。我认为这样的事情应该有效,但没有
function objEventHandler()
{
console.log('objEventHandler() ran')
}
Component.onCompleted:
{
obj.value.valueChanged.connect(objEventHandler);
}
做这个的最好方式是什么?