我现在在做一个锁定窗体的程序,就是点击锁定后,窗体不能够拖动,控件也不能够在拖动。在网上找了个例子,可以锁定,但是锁定后整个程序就都锁了,不是我想要的效果。大家看看有没有改进的地方。让锁定后只锁定制定窗体,不锁定整个程序。
首先窗体要继承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);
本文介绍了一种通过继承IMessageFilter并实现PreFilterMessage方法来锁定指定窗体的技术,该技术可阻止用户拖动窗体或其控件。通过添加和移除消息过滤器实现了窗体的锁定与解锁。
1213

被折叠的 条评论
为什么被折叠?



