如何在QML信号中传递MouseEvent参数

时间:2016-09-25 18:21:40

标签: qt qml

我正在尝试将MouseArea信号传播到父对象,但使用MouseEvent作为参数类型会导致导入错误。

import QtQuick 2.0
import org.kde.plasma.core 2.0

Rectangle {
    id: linkRect

    signal clicked(MouseEvent mouse)

    ToolTipArea {
        id: tooltip
        anchors.fill: parent

        MouseArea {
            id: mouseArea
            anchors.fill: parent

            onClicked: linkRect.clicked(mouse)
        }
    }
}

2 个答案:

答案 0 :(得分:6)

使用var这样的类型:

signal clicked(var mouse)

答案 1 :(得分:0)

使用QtObject代替MouseEvent
这也适用于KeyEvent事件中的KeyPressed参数。

signal clicked(QtObject mouse)

注意QtObject是这些类的基础。