MouseEvent过时成员

以下QML类型MouseEvent的成员已被弃用。它们被提供以保持旧源代码的正常运行。我们强烈建议在新代码中不要使用它们。

属性

  • source : int (已在6.2中弃用)

属性文档

source : int [只读,已在6.2中弃用]

此属性自QtQuick 6.2起已被弃用。我们强烈建议在新代码中不要使用它。

请使用输入处理程序并设置接受的设备

此属性包含鼠标事件的源。

鼠标事件源可以用来区分真实和伪鼠标事件。当使用其他指点设备如触摸屏和绘图板时,如果应用程序未使用实际触摸或绘图板事件,操作系统或Qt本身可能会合成鼠标事件。

其值可以是以下之一

例如,只响应来自实际鼠标的事件

MouseArea {
    onPressed: (mouse)=> {
        if (mouse.source !== Qt.MouseEventNotSynthesized)
            mouse.accepted = false
    }

    onClicked: doSomething()
}

如果按下事件的处理程序拒绝该事件,它将被进一步传播,然后下方的另一个Item可以处理由触摸屏合成的虚构事件。例如,如果下方使用了Flickable(且MouseArea不是Flickable的子项),则对于MouseArea来说,处理真实鼠标事件以一种方式是有用的,同时允许触摸事件传递到下方的Flickable,从而保留在触摸屏上滑动的功能。在这种情况下,通过鼠标拖动Flickable的能力会丢失,但这不会阻止Flickable接收鼠标滚轮事件。


© 2024 Qt公司有限公司。本文件中的文档贡献归各自所有者所有。本文件中提供的文献根据自由软件基金会发布的GNU自由文档许可协议第1.3版进行许可。