本页内容

WheelEvent QML Type (Uncreatable)

提供有关鼠标滚轮事件的信息。更多内容...

Import Statement: import QtQuick

注意:这是一个不可创建的类型。无法在 QML 中对其进行实例化。

属性

详细说明

可以通过x 和y 属性获取鼠标的位置。

另请参阅 WheelHandler 和MouseArea 。

属性文档

accepted : bool

将 `accepted ` 设置为 `true ` 可防止滚轮事件传播到接收项或处理程序下方的项。

通常,如果某个项对滚轮事件进行了处理,则应接受该事件,以防止堆叠顺序中位于其下方的项也对同一事件做出响应。

另请参阅 QWheelEvent::accepted 。

angleDelta : point [read-only]

该属性存储了方向盘旋转的相对角度,单位为八分之一度。该属性的x 和y 坐标分别存储了水平和垂直方向上的偏移量。

正值表示滚轮向上/向右旋转;负值表示滚轮向下/向左旋转。

大多数鼠标类型以15 度为步长工作,在这种情况下,增量值是120 的倍数;即120 units * 1/8 = 15 degrees 。

另请参阅 QWheelEvent::angleDelta()。

buttons : int [read-only]

该属性保存了在生成滚轮事件时按下的鼠标按钮。

它包含以下选项的按位组合:

另请参阅 ` QWheelEvent::buttons()`。

inverted : bool [read-only]

返回事件随附的增量值是否被反转。

通常,当垂直方向的滚轮顶部朝远离操作手的一侧旋转时,会生成一个具有正增量值的WheelEvent 。同样,当水平方向的滚轮顶部向左移动时,会生成一个具有正增量值的QWheelEvent 。

然而,在某些平台上,此行为是可配置的,因此上述相同的操作将产生负的增量值(但绝对值相同)。 例如,在 QML 组件(如转盘或滑块)中,无论系统设置如何,都应将项目的移动或旋转与滚轮的方向同步;此时,滚轮事件处理程序可以使用 inverted 属性来决定是否将angleDelta 或pixelDelta 的值取反。

注意:许多 平台不提供此类信息。在这些平台上,inverted 始终返回false 。

另请参阅 QWheelEvent::inverted()。

modifiers : int [read-only]

该属性保存了事件发生前瞬间存在的键盘修饰符标志。

它包含以下选项的按位组合:

例如,要响应滚轮事件期间按下的 Control 键:

WheelHandler {
    onWheel: (wheel)=> {
        if (wheel.modifiers & Qt.ControlModifier) {
            adjustZoom(wheel.angleDelta.y / 120);
        }
    }
}

另请参阅 QWheelEvent::modifiers()。

pixelDelta : point [read-only]

该属性以屏幕像素为单位存储偏移量,并在支持高分辨率trackpads 的平台上可用,例如macOS。该属性的x 和y 坐标分别表示水平和垂直方向的偏移量。这些值可直接用于滚动屏幕上的内容。

对于不支持high-resolution trackpad 的平台,pixelDelta的值始终为(0,0) ,此时应改用angleDelta 。

另请参阅 QWheelEvent::pixelDelta()。

x : real [read-only]

y : real [read-only]

这些属性存储了方向盘事件提供的坐标。

另请参阅 QWheelEvent::position()。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.