MFC之BEGIN_MESSAGE_MAP和END_MESSAGE_MAP
2015-09-20 11:09
330 查看
今天在使用MFC启动画面时,需要添加一个Splash类。在详看头文件和源文件有很多疑惑的地方。
作为初学者,大部分做的工作为资料的整理和汇总咯
BEGIN_MESSAGE_MAP和END_MESSAGE_MAP
这两个宏表示这个类的消息映射开始和结束,中间的宏定义定义了此类的所有的消息映射。
前面的afx_msg void OnPaint();只是声明OnPaint()函数是一个消息
处理函数,然后是OnPaint()函数的定义,但是函数定义在那儿是不会自己去执行的,ON_WM_PAINT()宏是一个系统消息映射,告诉系统当有WM_PAINT消息的时候,调用OnPaint()函数进行处理,如果没有这句话,消息队列收到WM_PAINT消息的时候不会调用你的OnPaint()函数的,即使你申明和定义了OnPaint(),现在明白它的作用了么,你可以把ON_WM_PAINT()去掉再执行看有没有执行OnPaint()函数。
作为初学者,大部分做的工作为资料的整理和汇总咯
1.BEGIN_MESSAGE_MAP(CWzdSplash, CWnd) 2. ON_WM_PAINT() 3. ON_WM_TIMER() 4.END_MESSAGE_MAP()
BEGIN_MESSAGE_MAP和END_MESSAGE_MAP
这两个宏表示这个类的消息映射开始和结束,中间的宏定义定义了此类的所有的消息映射。
前面的afx_msg void OnPaint();只是声明OnPaint()函数是一个消息
处理函数,然后是OnPaint()函数的定义,但是函数定义在那儿是不会自己去执行的,ON_WM_PAINT()宏是一个系统消息映射,告诉系统当有WM_PAINT消息的时候,调用OnPaint()函数进行处理,如果没有这句话,消息队列收到WM_PAINT消息的时候不会调用你的OnPaint()函数的,即使你申明和定义了OnPaint(),现在明白它的作用了么,你可以把ON_WM_PAINT()去掉再执行看有没有执行OnPaint()函数。
相关文章推荐
- hdoj 2674 N!Again
- iOS性能优化大全
- 11987 - Almost Union-Find(并查集删除操作)
- 暗时间
- poj 2031--Building a Space Station(prim)
- 基于X86平台的PC机通过网络发送一个int(32位)整数的字节顺序
- Python 标准库——functools
- 第三周项目1 顺序表的基本运算(2)
- objective-c category
- 空,舍弃。
- Unity3D:内存优化
- Ogre动画系统连载-Ogre中的数据格式
- Java多种排序算法
- 图像识别引擎-引擎收集知识地图~
- Windows跨域远程连接防火墙设置
- JNDI
- Linux下普通包和devel包
- PyQt5资料
- VirtualBox中安装CentOS-7问题说明
- 凸多边形最优三角剖分-动态规划