类的AddMessageFilter方法,RemoveMessageFilter方法和Message结构的Msg属性来禁用鼠标左键。Message结构包装Windows发送的消息,可使用该结构包装消息,并将其分配给窗口过程以进行调度,还可以使用该结构获取系统向应用程序或控件发送的关于某个消息的信息。
返回值:如果筛选消息并禁止消息被调度,则为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)
}
}