通过截取系统消息判断鼠标的单机键
2023-09-14 09:00:20 时间
实现效果:
知识运用:
通过在From中重写Control类的虚方法 WndProc 来获取信息
protected virtual void WndProc(ref Message m) Message结构的属性
通过实现IMessageFilter接口来创建消息筛选器 从而截取Windows消息
实现代码:
private void Form1_Load(object sender, EventArgs e) //窗体加载消息筛选器 { Application.AddMessageFilter(mf); //添加消息筛选器 向目标传递Windows消息时监视这些消息 } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { Application.RemoveMessageFilter(mf); //从应用程序的消息泵中移除一个消息筛选器 } //方法一:重写WndProc虚方法 与二不可共存 //protected override void WndProc(ref Message m) //{ // switch (m.Msg) // { // case 513: // MessageBox.Show("单机了鼠标左键", "系统信息"); // m.Result = (IntPtr)0; //为了响应消息处理而向Windows返回的值 // break; // case 516: // MessageBox.Show("单机了鼠标右键", "系统信息"); // m.Result = (IntPtr)0; // break; // default: // base.WndProc(ref m); // break; // } //} } //方法二: 实现IMessageFilter接口 从而获取Windows消息 public class MessageFilter : IMessageFilter { public bool PreFilterMessage(ref Message message) { switch (message.Msg) { case 513: MessageBox.Show("单机了鼠标左键", "系统信息"); return true; case 516: MessageBox.Show("单机了鼠标右键", "系统信息"); return true; default: return false; } } }
相关文章
- Java项目毕业设计:基于springboot+vue的电影视频网站系统「建议收藏」
- 消息代理对比DB
- Nodejs+Redis实现简易消息队列
- golang对接企业微信群机器人-在线客服系统新消息提醒方式之一【唯一客服】
- 客服系统即时通讯IM开发(五)网站实时向在线访客推送消息
- 云原生消息流系统 Apache Pulsar 在腾讯云的大规模生产实践
- vue.js客服系统实时聊天项目开发(十六)连接websocket实时处理消息,断线重连,处理服务端关闭指令
- 简述消息队列在电商系统使用场景以及工作模式
- 开源在线客服系统-客服系统历史消息记录功能-点击加载历史聊天记录-分页展示历史消息功能实现
- 在线客服系统历史会话搜索,访客消息筛选功能,根据访客时间、标签、活跃日期范围、消息记录搜索
- redis中队列消息实现应用解耦的方法
- 微信企业号开发:消息类型与区别详解手机开发
- JavaScript中的消息提示框详解编程语言
- 如何给指定用户发送SAP系统消息-TH_POPUP详解编程语言
- 消息称特斯拉 Semi 电动半挂卡车可能使用 WAVE 无线充电系统
- 搭建企业级消息队列系统:实践Oracle MQ技术(oraclemq)
- PC AI性能将增强,英特尔透露10纳米Tiger Lake处理器 AI引擎消息
- 使用Redis实现延迟发送消息的优势(延迟发送消息redis)
- 通过Redis实现高效的消息队列系统(用redis实现消息队列)
- 未读消息借助Redis传递(未读消息 redis)
- 新鲜消息Redis存储之旅(新消息存放redis)
- 利用Redis实现简单高效的消息队列系统(利用redis做队列)
- 利用Redis构建高效的消息队列系统(redis队列和消息队列)
- 构建基于Redis的远程消息队列系统(redis连接远程队列)
- Redis实现订阅与发布消息的实践(redis 订阅消息)
- Redis订阅一种创新的消息模式(redis订阅什么类型)
- 利用Redis实现高效消息通知设计(redis消息通知设计)