如果我在QML元素上放置了MouseArea
,則MouseArea
將盜取所有鼠標事件。 因此,TextEdit
將是不可編輯和不可選的。MouseArea偷走了QML元素的鼠標事件
TextEdit {
// some properties
MouseArea {
// some properties
OnClicked: { /* do something */ }
}
}
有沒有辦法解決它?
順便說一句,如果我在另一個MouseArea
上放大MouseArea
,大MouseArea
會盜取所有鼠標事件。我如何解決它?我認爲手動傳遞鼠標事件可以解決這個問題,但是怎麼做呢?
當我遇到這個問題時,我正在尋找其他方法的解決方案,只是想我會指出有一些信號處理程序需要設置鼠標。accepted = false'沒有任何作用(搜索'MouseArea'文檔中的'沒有效果'來查找它們全部)。 – Mitch 2015-06-04 14:20:52
如果我想要在mouseX和mouseY上進行連續更新,此解決方案不起作用。在上面的示例代碼中更改TextEdit以顯示鼠標的X,Y位置,只要按住鼠標按鈕,您就會看到它停止更新。在onPressed中設置「mouse.accepted = false」將導致MouseArea屬性不會被更新,直到釋放按鈕。不知道這是否是一個錯誤? – 2017-01-26 20:34:25