C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■92908 / 1階層)  マウスクリックとホイールを無効化する方法
□投稿者/ KOZ (28回)-(2019/11/07(Thu) 10:44:14)
2019/11/07(Thu) 10:45:05 編集(投稿者)
2019/11/07(Thu) 10:44:39 編集(投稿者)

■No92887 (yapoo さん) に返信
> 一つ一つコントロール毎に、
> マウスクリックイベントとホイールイベントを書いていくのは
> 非常に面倒なので
> 一括で書きたいのですが
> どのようにすれば良いでしょうか?

メッセージフィルタを登録してマウスに関するメッセージを無視することができます。


Private Class MouseMessageFilter
    Implements IMessageFilter

    Const WM_MOUSEFIRST As Integer = &H200
    Const WM_MOUSELAST As Integer = &H20E

    Public Function PreFilterMessage(ByRef m As System.Windows.Forms.Message) As Boolean _
            Implements IMessageFilter.PreFilterMessage
        Select Case m.Msg
            Case WM_MOUSEFIRST To WM_MOUSELAST
                Return True
            Case Else
                Return False
        End Select
    End Function
End Class

Dim mouseFilter As New MouseMessageFilter()

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Application.AddMessageFilter(mouseFilter)
    Me.Cursor = Cursors.WaitCursor
End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Application.RemoveMessageFilter(mouseFilter)
    Me.Cursor = Cursors.Default
End Sub

編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←マウスクリックとホイールを無効化する方法 /yapoo →Re[2]: マウスクリックとホイールを無効化する方法 /yapoo
 
上記関連ツリー

マウスクリックとホイールを無効化する方法 / yapoo (19/11/05(Tue) 17:04) #92887
Re[1]: マウスクリックとホイールを無効化する方法 / 魔界の仮面弁士 (19/11/05(Tue) 17:14) #92888
│└ Re[2]: マウスクリックとホイールを無効化する方法 / yapoo (19/11/05(Tue) 17:22) #92889
│  ├ Re[3]: マウスクリックとホイールを無効化する方法 / 774RR (19/11/06(Wed) 08:28) #92895
│  └ Re[3]: マウスクリックとホイールを無効化する方法 / 魔界の仮面弁士 (19/11/06(Wed) 10:22) #92898
│    └ Re[4]: マウスクリックとホイールを無効化する方法 / yapoo (19/11/06(Wed) 09:58) #92896
Re[1]: マウスクリックとホイールを無効化する方法 / にゃるら (19/11/06(Wed) 15:16) #92901
マウスクリックとホイールを無効化する方法 / KOZ (19/11/07(Thu) 10:44) #92908 ←Now
  └ Re[2]: マウスクリックとホイールを無効化する方法 / yapoo (19/11/07(Thu) 14:22) #92912 解決済み

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信