1、子控件不响应父的鼠标事件
可以将子控件放到MouseArea内
2、鼠标事件透传但互不影响
如果是entered hovered exited的话 多个mousearea的关系是parent-child关系就可以透传;是pressed clicked released的话就需要用到propagateComposedEvents属性置为true,且mouse.accept置为false
Rectangle {
color: "yellow"
width: 100; height: 100
MouseArea {
anchors.fill: parent
onClicked: console.log("clicked yellow")
}
Rectangle {
color: "blue"
width: 50; height: 50
MouseArea {
anchors.fill: parent
propagateComposedEvents: true
onClicked: {
console.log("clicked blue")
mouse.accepted = false
}
}
}
}
网友评论