当鼠标中间滚轮运动时,Windows会发送WM_MOUSEWHEEL消息,不过VB没有提供对应的事件。在http://www.vbthunder.com/default.asp?srcget=27你可以下载一个VB的例子,这个例子告诉你如何扑捉WM_MOUSEWHEEL消息。如果你想在自己的工程中使用这个功能,只需要将modWheel.bas和MWheel.ctl文件加入你的工程,这样你的工具箱中会增加一个MWheel控件。然后在窗体上放置一个MWheel控件,在MWheel控件的WheelScroll中添加代码就可以了代码就可以了。该事件定义如下: Private Sub MWheel1_WheelScroll(Shift As Integer, _ zDelta As Integer, X As Single, Y As Single)
其中Shift表示按键的状态,定义和MouseMove等事件相同。zDelta传递滚轮滚动的快慢,该值小于零表示滚轮向后滚动(朝用户方向),大于零表示滚轮向前滚动(朝显示器方向)。X、Y表示坐标,定义和MouseMove等事件相同。 另外,可以参考微软的Knowledge Base的文章:“Q231465 BUG: No WM_MOUSEWHEEL Message is Received after Adding a UserControl to a Form”。
Private Sub MWheel1_WheelScroll(Shift As Integer, _
zDelta As Integer, X As Single, Y As Single)
其中Shift表示按键的状态,定义和MouseMove等事件相同。zDelta传递滚轮滚动的快慢,该值小于零表示滚轮向后滚动(朝用户方向),大于零表示滚轮向前滚动(朝显示器方向)。X、Y表示坐标,定义和MouseMove等事件相同。
另外,可以参考微软的Knowledge Base的文章:“Q231465 BUG: No WM_MOUSEWHEEL Message is Received after Adding a UserControl to a Form”。
http://www.jker.cn/data/2006/0115/article_23.html
另外我这有个程序可以检测鼠标左中右事件,可以传给你
发送者 hohairen
密 码 1593