系统消息代码里,如何判断鼠标滚轮是向上还是向下?[已解决]
本帖最后由 fenhanxue 于 2017-6-22 12:07 编辑想知道如何判断鼠标滚动是向上滚动还是向下滚动?
代码如下:#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
;$WM_MOUSEWHEEL=0x020A
$Form1 = GUICreate("Form1", 348, 166, 320, 125)
GUIRegisterMsg ($WM_MOUSEWHEEL, "WM_MOUSEWHEEL" )
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func WM_MOUSEWHEEL($hWndGUI, $MsgID, $WParam, $LParam)
If $hWndGUI=$Form1 Then MsgBox(0,"您转动了鼠标.","但是我不知道你是向上滚动还是向下滚动,我怎样才能知道?")
EndFunc
答案见4楼 WINDOWS消息里有向上或向下的函数,你现在注册的是当滚轮有变化时运行函数,应该注册向上或者向下怎么样,或者在你的FUNC加上IF判断 论坛 搜索一大堆 回复 1# fenhanxue
加上這個就可以了
If BitShift($wParam, 16) > 0 Then ;Wheel up
Else ;-----------------------------Wheel down
EndIf 本帖最后由 kk_lee69 于 2017-6-22 12:03 编辑
回复 2# 524443834
我是沒找到我找了半天也沒找到滾輪變化 向上或者 向下的消息....
滾輪 的向上向下應該跟按下的 UP 跟 DOWN不一樣 回复 2# 524443834
是啊,翻阅了帮助文档:Windows Message Codes(系统消息代码)
这一页的提示,可能眼拙,只找到WM_MOUSEWHEEL,没找到向上和向下,对系统消息这一块也不是很懂,所以来论坛求助 回复 4# kk_lee69
非常感谢KK, 留個腳印MacGyver 有用,留个印记!
页:
[1]