检测水平鼠标滚轮运动

时间:2011-07-07 14:36:35

标签: .net events mouse mousewheel

我在DotNet应用程序中使用鼠标滚轮,我通过以下方式完成: MSDN MouseWheel example

但是在我的应用程序中,也可以使用现有的硬件水平鼠标滚轮。但是如何检测.Net中何时使用它?

我正在使用Logitech RX1500m-RAG97enter image description here

此致

-

*解决方案*

覆盖WinProc以捕获鼠标滚轮事件。

MustInherit Class Win32Messages
    Public Const WM_MOUSEHWHEEL As Integer = &H20e
    'discovered via Spy++
End Class



Protected Overrides Sub WndProc(ByRef m As Message)
    MyBase.WndProc(m)
    If m.HWnd <> Me.Handle Then
        Return
    End If
    Select Case m.Msg
        Case Win32Messages.WM_MOUSEHWHEEL
            FireMouseHWheel(m.WParam, m.LParam)
            m.Result = DirectCast(1, IntPtr)
            Exit Select
        Case Else
            Exit Select

    End Select
End Sub

1 个答案:

答案 0 :(得分:3)

blog post显示了如何向WinForms应用程序添加支持。