MouseArea
をQML要素に置くと、MouseArea
はすべてのマウスイベントを盗みます。 したがって、TextEdit
は編集不可能で、選択不可能です。MouseAreaがQML要素のマウスイベントを盗んだ
TextEdit {
// some properties
MouseArea {
// some properties
OnClicked: { /* do something */ }
}
}
解決方法はありますか?
ところで、大きなMouseArea
を別のMouseArea
に置くと、より大きなMouseArea
がすべてのマウスイベントを盗みます。私はそれをどのように解決するのですか?手動でマウスイベントを渡すと解決できると思いますが、どうやったらいいですか?
私はこれを見つけたときに何かの解決策を探していましたが、ちょうど 'マウスを設定するシグナルハンドラがいくつかあることを指摘したいと思っていました。accepted = false'は何の効果もありません( 'MouseArea' docsはそれらをすべて検索する効果がありません)。 – Mitch
mouseXとmouseYで継続的な更新が必要な場合、この解決法は機能しません。上記のサンプルコードのTextEditをマウスのX、Yの位置を示すように変更すると、マウスボタンが押されたときに更新が停止することがわかります。 onPressedで "mouse.accepted = false"を設定すると、ボタンが離されるまでMouseAreaプロパティが更新されません。これがバグかどうか分かりませんか? –