onPressed イベントを QML ツリー内の後続のオブジェクトにディスパッチしたい (mouse.accepted = false を指定し、propagateComposedEvents: true を指定した) が、onreleased イベントを最上位の要素で動作させたい..ここにコード:
Item {
width: 200
height: 200
Rectangle {
z: 1
anchors.fill: parent
MouseArea{
anchors.fill: parent
propagateComposedEvents: true
onPressed: {
console.log("R1 pressed")
mouse.accepted = false
}
onReleased: {
console.log("R1 released")
mouse.accepted = false
}
}
}
Rectangle {
z: 0
anchors.fill: parent
MouseArea{
anchors.fill: parent
propagateComposedEvents: true
onPressed: {
console.log("R2 pressed")
}
onReleased: {
console.log("R2 released")
}
}
}
}
私が期待するもの:
qml: R1 が押された qml: R2 が押された qml: R1 がリリースされた qml: R2 がリリースされた
私が得るもの:
qml: R1 が押された qml: R2 が押された qml: R2 が解放された
どうすれば解決できますか?
よろしくお願いいたします。