首页  >   经验  >   MFC消息路由机制详细介绍

MFC消息路由机制详细介绍

查看 codexia 的博客 2015-06-07 19:30:45 2451
MFC   消息   路由  
手机阅读 | 转发赚积分
手机收藏 | 分享给好友
简介本文讲述了MFC中消息的机制,分析了类向导自动生成的消息代码过程,编译时的检测原理,和路由机制的处理过程,从最熟悉的最常用的工具来分析问题,让初学者更容易理解现在看到的东西。

MFC消息路由机制的生成检测和执行过程如下。

1.类向导生成

    消息处理分为三个部分,第一个是消息映射,第二个是处理函数声明,第三个是处理函数定义。类向导在生成消息映射处理时做的就是这三个工作。

    当双击一个窗口模板(编辑窗口时的窗口叫做窗口模板,运行时看到的才叫做窗口),类向导检测消息映射窗口有没有对应消息映射声明,如果没有则提示为窗口添加处理类。此类就默认自动创建好后就添加好了,消息映射声明和消息映射框架,以及相关的额数据交换声明和数据控件验证声明。因为每个窗口都需要窗口函数进行消息处理,所以消息映射声明就已经将窗口的内部消息处理机制进行了声明和包装。留下消息映射对作为消息处理的接口。因此,我们只需要在这个接口中就可以实现消息处理。当然,类和窗口模板是分开的,要将窗口和类进行关联,就好比API中通过窗口函数回调函数的函数指针进行关联。MFC中通过enum { IDD = 窗口ID };语句将类与窗口进行关联,内部完成的操作就是回调函数的指定。而每个消息的封装,都是封装到了消息处理函数中,也就是在消息映射对里面提供的接口。还可能提供构造函数和析构函数的声明和空定义。空白窗口模板启动类向导就做这些事情。

    当非空白的窗口模板双击了控件,则类向导根据控件的ID和内部定义的操作类型确定窗口的事件消息和消息类型,然后提示输入处理函数名,然后创建一个消息映射,此间的工作就是消息处理的三步。

2.编译检测

    编译时,检测实现文

1.微信扫码
2.点击按钮,粘贴命令
自动刷新 手动刷新
命令:rd 13H/) 复制
提示:如果您发送了命令,自动刷新会展开全文。自动刷新最多60秒,超过60秒请点击手动刷新。
创作不易,汗水不止!为防止劳动果实被爬虫窃取,开启了反爬机制,需要您发送命令继续阅读。取关会再次出现此提示。一段时间后出现此提示,请再次发送即可。如有问题,请加客服微信Freeme007处理。感谢您的理解。
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
文章标题:MFC消息路由机制详细介绍
文章地址:http://www.cjjjs.com/article/672015453019820
转载到个人博客,请在文末带上右侧内容(含超链接):本文转载自:MFC消息路由机制详细介绍
收藏 0 点赞 0
公众号
微信赞赏
支付宝赞赏
领支付宝大红包
QQ群

相关阅读

  1. Linux中C++程序内清除消息队列并重建消息队列 查找全网同类文章
  2. Linux使用Shell命令行查看消息队列 查找全网同类文章
  3. Linux增加消息队列的长度 查找全网同类文章
  4. 用mfc1.0写的程序,想用调色板来填充背景,可背景依然是白色的 查找全网同类文章
  5. MFC学习实践之简易音乐播放器(四)添加进度、音量跳转及列表文件情况备份还原 查找全网同类文章
  6. MFC对话框打印问题 查找全网同类文章
  7. MFC学习实践之简易音乐播放器(二)完整主界面控件说明及编写最简音乐播放器 查找全网同类文章
  8. MFC学习实践之简易音乐播放器(一)主界面演示及基本原理说明 查找全网同类文章
  9. c++ 轻量级的持久化消息队列 查找全网同类文章
  10. [MFC] 小疑问,MFC窗口设计问题,界面尺寸无法手动对称 查找全网同类文章
分享到:
分享文章[MFC消息路由机制详细介绍]到QQ空间

相关阅读

猜您感兴趣