winform 锁定窗体

来源:互联网 发布:mac毛笔字体下载 编辑:程序博客网 时间:2024/05/21 14:49

我现在在做一个锁定窗体的程序,就是点击锁定后,窗体不能够拖动,控件也不能够在拖动。在网上找了个例子,可以锁定,但是锁定后整个程序就都锁了,不是我想要的效果。大家看看有没有改进的地方。让锁定后只锁定制定窗体,不锁定整个程序。

   首先窗体要继承IMessageFilter.在写一个方法:

  public bool PreFilterMessage(ref System.Windows.Forms.Message SystemMessage)
        {
            if (SystemMessage.Msg >= 513 && SystemMessage.Msg <= 515)
            {//不响应鼠标左键消息                              
                return true;
            }
            return false;
        }

最后调用:锁定: Application.AddMessageFilter(this);,解锁:
           Application.RemoveMessageFilter(this);