マウスのダブルクリックで左右のボタンを判断

解決


さんちょ  2003-12-21 07:10:02  No: 81058

環境:VB.NET2003 & Win2000 SP3
マウスのダブルクリックって左右どちらのボタンでもイベントが発生してしまう
けど、イベントの引数なんかから、左右のボタンどちらのイベントかって判断する事ってできますか?もしくはMouseDownからクリック回数で判断するしかないのかな?
どなたか教えてください。


mady  2003-12-21 23:26:44  No: 81059

単純に1つのイベントでは実現できないかも…
それっぽい事をするサンプルです。
スマートではないですけど。

Dim flg
Private Sub Form_DblClick()
    MsgBox flg
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
    flg = Button
End Sub


さんちょ  2003-12-22 18:53:32  No: 81060

madyさん。ありがとうございました。
無事解決です。

Private Sub NotyfiIcon1_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NotifyIcon1.DoubleClick

  If sender.GetType Is NotifyIcon1.GetType Then
     If mButton = MouseButtons.Right Then
        ' 右ボタンなら処理無し
        Exit Sub
     End If
  End If

End Sub

Private Sub NotifyIcon1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles NotifyIcon1.MouseUp

  ' ダブルクリックに備えてMouseを操作したボタン名を保持
  mButton = e.Button

End Sub


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加