从QML连接到C ++信号

时间:2015-04-19 07:40:01

标签: c++ qt qml

我想从QML连接到C ++信号,如下所示:

action.onMouseUp = function() {
    console.log("mouse up>>");
}

并在我的C ++对象中声明这个信号:

signals:
  void mouseUp(const QPointF point);

但我收到QML错误:TypeError:无法分配给只读属性" mouseUp"。问题可能是什么?

2 个答案:

答案 0 :(得分:2)

您需要call connect method action.onMouseUp对象。

action.onMouseUp.connect( function() {
    console.log("mouse up>>");
});

答案 1 :(得分:0)

我找到了另一个解决方案:

Q_PROPERTY(QJSValue onMouseUp READ onMouseUp WRITE setOnMouseUp)

即使没有connect()

也能正常工作