C++ MFC中的afx_msg and on_command
来源:互联网 发布:c语言代码基础 编辑:程序博客网 时间:2024/05/20 07:19
1.afx_msg
afx_msg 是一个宏 标识是消息映射函数,增加可读性。
在 MSDN里是这样定义的:
AFX_MSG
remarks
ClassWizard and AppWizard insert specially formatted comment delimiters in your
source code files to mark the places in your files that ClassWizard can write to.
AFX_MSG is used to mark the beginning and end of ClassWizard entries in your
header file (.H) related to message maps:
//{{AFX_MSG(classname)
...
//}}AFX_MSG
afx_msg是给MFC classwiard作的标记,表示这个.cpp文件中classwiard应该插入代码的地方。 如果把{{//afx_msg ......等类似的符号删了,classwizard 就会报错。
也就是说,如果你把那些东西删了,你就用不了classwizard,而只能手工输入代码了
afx_msg 什么都没定义,是为以后扩充保留的。
它的定义如下:(具体在哪个文件里,我忘记了)
#define afx_msg
可以看出来它实际上是一个空定义!
这些消息处理函数的说明一般都有“afx_msg”的前缀,用于把处理函数与其他的窗口成员函数区分开来,这些函数都是通过消息映射实现的。比如,消息 WM_CHAR 的处理函数在 CWnd 中声明成:
afx_msg 是一个宏 标识是消息映射函数,增加可读性。
在 MSDN里是这样定义的:
AFX_MSG
remarks
ClassWizard and AppWizard insert specially formatted comment delimiters in your
source code files to mark the places in your files that ClassWizard can write to.
AFX_MSG is used to mark the beginning and end of ClassWizard entries in your
header file (.H) related to message maps:
//{{AFX_MSG(classname)
...
//}}AFX_MSG
afx_msg是给MFC classwiard作的标记,表示这个.cpp文件中classwiard应该插入代码的地方。 如果把{{//afx_msg ......等类似的符号删了,classwizard 就会报错。
也就是说,如果你把那些东西删了,你就用不了classwizard,而只能手工输入代码了
afx_msg 什么都没定义,是为以后扩充保留的。
它的定义如下:(具体在哪个文件里,我忘记了)
#define afx_msg
可以看出来它实际上是一个空定义!
这些消息处理函数的说明一般都有“afx_msg”的前缀,用于把处理函数与其他的窗口成员函数区分开来,这些函数都是通过消息映射实现的。比如,消息 WM_CHAR 的处理函数在 CWnd 中声明成:
afx_msg void OnChar();
2.ON_COMMAND
ON_COMMAND是MFC提供的宏,实现命令消息(如菜单、工具栏的选项消息)的消息响应函数的注册。
使用方法为ON_COMMAND(消息ID, 响应函数名)
注册了响应函数之后,一旦主窗口接收到该命令消息,程序就会调用我们提供的消息响应函数进行处理
3.报错:没有与参数列表匹配的构造函数 "CFileDialog::CFileDialog" 实例
如果是在解决方案管理器窗口内,右击你的项目“项目”,然后选“属性”(最后一项),再点“配置属性”,是个“+”号,把它展开,然后选“常规”选项卡,倒数第三项“字符集”,选择“使用多字节字符集”。再编译应该就可以了。
0 0
- C++ MFC中的afx_msg and on_command
- MFC中的afx_msg和BEGIN_MESSAGE_MAP
- MFC中的afx_msg和BEGIN_MESSAGE_MAP
- MFC中的#ifndef afx_msg #define afx_msg // intentional placeholder #endif
- mfc 中的ON_COMMAND有什么作用
- MFC中afx_msg
- MFC中afx_msg
- MFC中afx_msg
- AFX_msg
- afx_msg
- AFX_msg
- afx_msg
- AFX_msg
- AFX_msg
- AFX_msg
- VC++中的ON_COMMAND_RANGE和ON_COMMAND
- MFC中ON_COMMAND,ON_MESSAGE,ON_NOTIFY的区别
- MFC中ON_UPDATE_COMMAND_UI和ON_COMMAND消息区别
- js 输入限制
- 黑马程序员——Java学习笔记 继承、抽象类和接口
- Java String StringBuilder StringBuffer
- javascript 继承
- c# string 基于内存的使用策略
- C++ MFC中的afx_msg and on_command
- WIN7 64位系统安装JDK并配置环境变量
- 中央处理器-第十节多媒体CPU
- Appium源码分析(6)-responses模块
- ios8/xcode6的一些坑(网友总结)
- 在MFC下如何定义全局变量和全局函数VC++
- 线性回归
- 一个例子学会mysql存储过程
- 游承超:手机钢化玻璃膜生产商分布及发展前景分析(19P)