以前一直不知道AFX_MSG是什么意思,只是觉得它应该是个消息映射函数,但是具体代表什么意思,会返回一个什么样的值是一点都不清楚,今天查了下资料,把查到的东西放这,以免以后忘了还得再查。

在头文件(DrawView.h)中声明消息响应函数原型。

//{{AFX_MSG(CDrawView) //注释宏

afx_msg void OnLButtonDown(UINT nFlags, CPoint point);

//}}AFX_MSG //注释宏

说明:

在注释宏之间的声明在VC中灰色显示。afx_msg宏表示声明的是一个消息响应函数

afx_msg消息函数 

应用程序框架产生的消息映射函数

例如:afx_msg void OnBnClickedButton1(); 其中 afx_msg为消息标志,它向系统声明:有消息映射到函数实现体;而在map宏定义中,就有具体消息和此函数的映射定义(可以是自定义,也可以是系统自动完成的)

afx是 application framework

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

在CSDN 中也有人这样解释:

afx_msg是给MFC   classwiard作的标记,表示这个.cpp文件中classwiard应该插入代码的地方。     如果把{{//afx_msg   ......等类似的符号删了,classwizard   就会报错。 
也就是说,如果你把那些东西删了,你就用不了classwizard,而只能手工输入代码了

afx_msg   什么都没定义,是为以后扩充保留的。 
它的定义如下:(具体在哪个文件里,我忘记了) 
#define   afx_msg 
可以看出来它实际上是一个空定义!

这些消息处理函数的说明一般都有“afx_msg”的前缀,用于把处理函数与其他的窗口成员函数区分开来,这些函数都是通过消息映射实现的。比如,消息 WM_CHAR 的处理函数在 CWnd 中声明成:

afx_msg void OnChar();

AFX_MSG是什么意思相关推荐

  1. afx_msg函数意思

    应用程序框架产生的消息映射函数 例如:afx_msg void OnBnClickedButton1(); 其中 afx_msg为消息标志,它向系统声明:有消息映射到函数实现体: 而在map宏定义中, ...

  2. 【转载】特殊宏://{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT

    原文:http://yyguangzheng.blog.163.com/blog/static/603488402014102215153610/ 说明:这篇日志我不知道怎么命名好,虽然内容很少,但是 ...

  3. MFC工作笔记0004---MFC中afx_msg是什么,afx_msg void function()是什么意思

    技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 应用程序框架产生的消息映射函数 例如:afx_msg void OnBnClickedButton ...

  4. MFC中afx_msg

    http://zhishi.sohu.com/question/131806275.html 应用程序框架产生的消息映射函数 例如:afx_msg void OnBnClickedButton1(); ...

  5. //{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT用途

    说明:这篇日志我不知道怎么命名好,虽然内容很少,但是讲的关键字很多,如果你有幸打开这篇日志,不妨往下看看 背景:我们使用 VC++6.0 开发MFC应用程序,初学者一定会为那么多行的注释代码感到头痛, ...

  6. MFC框架 afx_msg CComboBox OnDropdown

    MFC afx_msg afx是 application framework 应用程序框架产生的消息映射函数 例如:afx_msg void OnBnClickedButton1(); 其中 afx_ ...

  7. MFC中afx_msg是什么

    应用程序框架产生的消息映射函数 例如:afx_msg void OnBnClickedButton1(); 其中 afx_msg为消息标志,它向系统声明:有消息映射到函数实现体:而在map宏定义中,就 ...

  8. MFC添加afx_msg点击事件

    1.在头文件中最下方protected中先定义消息事件: 我这里定义了一个左键双击事件 2.在对应的cpp文件最上方也添加对应的消息事件: 最后编写该事件的函数,我这里编写了一个点击MFC中树控件节点 ...

  9. MFC最小化到系统托盘

    在VC++中,想实现将MFC最小化到系统托盘,需要调用NOTIFYICONDATA类,并注册相应的消息,以下详细讲解如何实现: 第一步,声明一个NOTIFYICONDATA类,也就是NOTIFYICO ...

最新文章

  1. git服务器查看用户信息,git 查看当前git用户_新Git用户使用方法
  2. 清华唐杰:GPT-3表示能力已经接近人类了,但它有一个阿喀琉斯之踵 | MEET 2021...
  3. CSS3的background-size:设置背景图片大小
  4. wince bib文件合成
  5. 楚留香ai人脸识别_戴口罩居然也能人脸识别?这些AI黑科技真的藏不住了.........
  6. 阿里巴巴开源技术汇总:115个软件(五)
  7. 《设计模式详解》手写简单的 Spring 框架
  8. 【分享】伙伴们!关注公众号要慎重!这半年我取关了很多,这几个留下了!真心推荐给你!...
  9. 简单的树遍历枚举器v0.2-挑战一个程序员到底能多懒- 添加广度优先遍历
  10. 《色彩解答》系列之二 色彩比例
  11. java关键字 final static
  12. Obsidian模板指北
  13. 使用PHP自带的ZipArchive的一些问题
  14. html a4纸的像素,打印常识:A4纸张在显示器上应该要多少像素?
  15. t480 拆触摸板_ThinkPad T480 如何关闭触摸板?
  16. UI设计师未来职业规划
  17. 执念斩长河专栏数据结构--目录
  18. 计算机自带输入法在哪里设置方法,Windows7设置默认输入法_Win7默认输入法怎么设置?-192路由网...
  19. 解决IE6、IE7、IE8、Firefox兼容的几种方案
  20. 云技术背景下ssl证书可以提供怎样的安全服务呢?

热门文章

  1. 武侠乂 兵器招式和高级心法介绍
  2. 字母顺序排序(C语言)
  3. 关闭PyCharm的Run with Python Console模式
  4. SQL Server 常用查询练习
  5. 《统计学习方法》学习笔记(4)--k近邻法及常用的距离(or 相似度)度量
  6. 4行代码实现微信送祝福,这个新年有点不一样
  7. 在kaggle的论坛上上传图片
  8. Centos 7安装tig报错:include/tig/tig.h:83:31: fatal error: ncursesw/curses.h: No such file or directory
  9. qt5把qt_zh_CN.qm加载了,但QTextEdit的右键菜单仍然是英文,而QLineEdit的倒是中文。怎样设置使得QTextEdit的右键菜单是中文
  10. 一个程序员购买保险之路-1(适用于所有人)