我有一个带有按钮的 QML 组件,... 在里面。我放置了一个覆盖整个组件的 MouseArea,因为无论我在何处单击该组件,我都需要执行一个操作。但是,我还想执行 MouseArea 后面的操作。
例如,如果我单击组件中的按钮,我想执行 MouseArea 动作,然后执行按钮动作。
Item {
Button{
anchors: ...
onClicked: console.info("Button clicked")
}
MouseArea{
anchors.fill: parent
propagateComposedEvents: true
onClicked: console.info("MouseArea clicked")
}
}
如果propagateComposedEvents: true,则不执行MouseArea onClicked,但执行Button onClicked。如果为 false,则执行 MouseArea 但不执行 Button onClicked。
我希望同时执行 MouseArea(第一个)和 Button(第二个)信号 onClicked。