当前位置: 首页 > 图文教程 > .Net技术 > C# > C#:禁用鼠标左键

C#
C#:小编详谈ASP.NET和JSP技术
C#:小编详谈StringBuilder
C#:使用CSS的8种技巧
C#:C#开发技巧之将图片存入数据库
C#:C#技术点之利用Image制作小动画
C#:C#开发技巧之如何根据年份判断十二生肖
C#:如何制作自动播放的MP3播放器
c#:C#技术利用鼠标绘图
C#:禁用鼠标左键
C#:如何使用匿名方法
C#:小编教你如何实现特殊形状的窗体
C#:在C#应用程序控制输入法
C#:小编教大家实现堆栈
C#:C#中数组知识点的精华
C#:小编谈C#中TextBox控件的应用技巧
C#:小编教大家设置货币值中使用的小数位数
C#:C#中实现倒计时功能
C#:小编教大家创建一个数字时钟
C#:小编教大家如何向ListView控件添加搜索功能
C#:小编浅谈如何在DataGridView控件中验证数据输入

C#:禁用鼠标左键


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 322 ::
收藏到网摘: n/a

今天小编要和大家分享的是在c#中怎样禁用鼠标左键的使用,其实我们可以通过ImessageFilter接口下的PreFilterMessage方法、Application类的AddMessageFilter方法,RemoveMessageFilter方法和Message结构的Msg属性来禁用鼠标左键。Message结构包装Windows发送的消息,可使用该结构包装消息,并将其分配给窗口过程以进行调度,还可以使用该结构获取系统向应用程序或控件发送的关于某个消息的信息。

使用PreFilterMessage方法在调度消息之前将其筛选出来。语法格式如下:

Bool PreFilterMessagerefMessage m

参数说明:

m:要调度的消息,无法修改此消息。

返回值:如果筛选消息并禁止消息被调度,则为True;如果允许消息继续到达下一个筛选器或控件,则为False。使用AddMessageFilter方法添加消息筛选器以便在向目标传送Windows消息时监视这些消息。使RemoveMessageFilter 从应用程序的消息泵移除一个消息筛选器。

下面给出大家一下主要代码:

Public partial class Form1:Form,ImessageFilter

{

    Public Form1()

    {

        InitializeComponent();

    }

  Public bool PreFilterMessage(ref System.Windows.Forms.Message MyMessage)

{

     //不响应鼠标左键消息

    If(MyMessage.Msg>=513 && MyMessage.Msg<=515)

       {

         Return true;

       }

   Return false;

}

Private voi button1_Click(object sender,EventArgs e)

{

   Application.AddMessageFilter(this);

   MessageBox.show(“鼠标左键已经被禁止,请用Tab键执行操作信息提示

MessageBoxButtons.OK,MessageBoxIcn.Information);

}

Private void button2_Click(object sender,EventArgs e)

{

   Application.RemoveMessageFilter(this);

   MessageBox.Show(“鼠标左键已经被解禁,可以执行操作!”,”信息提示

MessageBoxButtons.OK,messageBoxIcon.Information)

}

}