WM_MOUSEWHEEL

【勇芳软件工作室】汉化HomePreviousNext

[New - Windows NT]

当旋转鼠标滚轮时,WM_MOUSEWHEEL消息被发送到对焦窗口。DefWindowProc函数将消息传播到窗口的父级。应该没有内部转发消息,因为DefWindowProc将其传播到父链,直到找到处理它的窗口。

WM_MOUSEWHEEL

fwKeys = LOWORD(wParam); //键标志

zDelta = (short) HIWORD(wParam); //轮转

xPos = (short) LOWORD(lParam); //水平位置的指针

yPos = (short) HIWORD(lParam); //指针的垂直位置

参数

【fwKeys】

【wParam中】的低位字的值。指示各种虚拟键是否关闭。此参数可以是以下值的任意组合:

描述
MK_CONTROL如果CTRL键关闭,请设置。
MK_LBUTTON设置鼠标左键是否关闭。
MK_MBUTTON设置中间的鼠标按钮是否关闭。
MK_RBUTTON设置鼠标右键是否关闭。
MK_SHIFT设置SHIFT键是否关闭。

【zDelta】

【wParam中】的高位字的值。表示车轮旋转的距离,以WHEEL_DELTA的倍数或分数表示,即120。正值表示车轮向前旋转,远离用户;负值表示车轮向后旋转,朝向用户。

【XPOS】

【lParam的】的低位字的值。指定相对于屏幕左上角的指针的x坐标。

【yPos】

【lParam的】的高位字的值。指定相对于屏幕左上角的指针的y坐标。

备注

zDelta参数将是WHEEL_DELTA的倍数,设置为120。这是采取行动的门槛,并且每个增量都应该出现一个这样的动作(例如,滚动一个增量)。

三角洲设定为120,以允许Microsoft或其他供应商在未来建立更精细的轮子,包括可能是一个自由旋转的轮子,没有凹口。期望这样的设备将每轮发送更多消息,但在每个消息中具有较小的值。为了支持这种可能性,您应该添加传入的增量值,直到达到WHEEL_DELTA(因此,给定的delta旋转得到相同的响应),或者滚动部分行以响应更频繁的消息。您也可以选择滚动细粒度并累积三角形,直到达到。

也可以看看

GetSystemMetrics, mouse_event, SystemParametersInfo