winform屏蔽鼠标事件

Posted 云中陈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform屏蔽鼠标事件相关的知识,希望对你有一定的参考价值。

方法一:禁用鼠标事件

public partial class Form1 : Form,IMessageFilter  
  {  
      public Form1()  
      {  
          InitializeComponent();  
      }  

      #region IMessageFilter 成员  
  
      public bool PreFilterMessage(ref Message m)  
      {  
          if (m.Msg == 522)  
          {  
              return true;  
          }  
          else  
          {  
              return false;  
          }  
      }  

      #endregion  
  
      private void Form1_Load(object sender, EventArgs e)  
      {  
          Application.AddMessageFilter(this );  
      }  
  }  

鼠标移动:512

鼠标左键:

down:513

up:     514

double click:515 

鼠标右键: 

down:516

up:517

鼠标滚轮:522 

方法二:针对单个控件,当前方法只屏蔽滚动事件

  private void Form1_Load(object sender, EventArgs e)
        {
            numericUpDown1.MouseWheel += new MouseEventHandler(numericUpDown1_MouseWheel);
        }

        //取消滚轮事件
        void numericUpDown1_MouseWheel(object sender, MouseEventArgs e)
        {
            HandledMouseEventArgs h = e as HandledMouseEventArgs;
            if (h != null)
            {
                h.Handled = true;
            }
        }

 

以上是关于winform屏蔽鼠标事件的主要内容,如果未能解决你的问题,请参考以下文章

c#WinForm鼠标和键盘触发事件问题

如何在Android应用里屏蔽鼠标点击事件

winform屏蔽鼠标右键

C# winform如何设置右击时触发事件

C#winform中鼠标左键点击控件弹出右键菜单 右键点击控件无效

C# 实现WinForm窗口最小化到系统托盘代码,并且判断左右鼠标的事件