WinForm通过句柄进行权限的控制
2017-06-10 14:52
190 查看
1.首先需要定义一个类实现IMessageFilter接口,结合固定的操作变量来判断具体对那哪个控件进行了什么操作,结合自定义的控件拓展的权限的字段可进行权限的标识
class GlobalEventsHandler : IMessageFilter { //鼠标左键点击 public const int WM_LBUTTONDOWN = 0x0201; //键盘敲击事件 public const int WM_KEYDOWN = 0x100; public bool PreFilterMessage(ref Message m) { //此处可获取全局的控件操作 Control c = Control.FromHandle(m.HWnd); if(m.Msg == WM_LBUTTONDOWN){ //鼠标左键点击按钮 if(c is Button) { if(CheckPower(C)) { //表示事件到此未被处理,继续执行用户后序功能代码 return false; }else { //表示事件到此已被处理,不再执行后续代码 return true; } } } }
2.在应用程序的启动入口添加对程序的监听
static void Main() { Application.EnableVisualStyles(); GlobalEventsHandler g = new GlobalEventsHandler(); //添加全局事件的监听 Application.AddMessageFilter(g); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1()); }
相关文章推荐
- html 通过ajax进行权限控制
- struts下通过过滤器进行权限控制
- struts下通过过滤器进行权限控制
- Apcahe Shiro学习笔记(二):通过JDBC进行权限控制
- 通过二进制对权限进行控制
- 在Tomcat中通过LDAP实现用域用户进行权限控制
- html 通过ajax进行权限控制
- 权限系统--通过shiro进行按钮及页面访问url的权限控制
- 通过api获取句柄控制其他窗体
- 通过 lua 进行 nginx redis 访问控制
- 配置H3C交换机实例(设置安全策略版,通过源IP地址对WEB登录用户进行控制)[连载之电子商务系统架构]
- 使用Struts 拦截namespace进行权限控制
- 通过代理实现权限控制
- 自制智能插线板,内嵌BLE低功耗蓝牙,通过手机进行控制(二)
- 利用ORACLE对数据权限进行控制
- 姚博文 集成ACEGI 进行权限控制
- winform窗体 小程序【权限控制】
- struts2如何使用拦截器进行用户权限控制
- stm32的usb与上位机通过中断传输进行通信控制led--LibUsbDotNet
- 使用拦截器进行权限控制