永发信息网

刚学MFC这是什么意思,不太明白?

答案:5  悬赏:70  手机版
解决时间 2021-03-25 10:18
刚学MFC这是什么意思,不太明白?
最佳答案
BEGIN_MESSAGE_MAP和END_MESSAGE_MAP之间的就是传说中的消息映射。
ON_WM_CREATE()表示映射关系,参数有消息和处理该消息的响应函数。

这么说吧,你以后会自定义很多消息,这些消息的处理就是通过这个部分来实现的,使用的大致流程如下(我不用windows半年了,具体函数的拼写可能有误,但思路没问题,你见谅阿)

1.在类里声明消息响应函数,以afx_msg 开头,
比如afx_msg void OnMyMessage();
2.定义消息,#define WM_MY_MESSAGE WM_USER+100 //这时你的消息是WM_MY_MESSAGE
3.在BEGIN--END之间添加映射:
ON_MESSAGE(WM_MY_MESSAGE,OnMyMessage)//第一个参数都是消息,第二个都是响应函数,要注意OnMyMessage没括号

以上3步完成后映射关系就有了,以后只要发生消息发送,OnMyMessage函数就被触发了。

WM_USER是盖茨提供的用户消息,就是为了方便用户定义自己的消息用的,一般来讲不会用+100以下的消息,因为很多都是被标准化了的,就好比1024以下的端口一样。

看这段代码的时候BEGIN和END这两行不用管,要关心的是这之间的东西,消息映射必须写在这之间才有用。

BEGIN--END这个东西很方便,你以后就知道了!想多了解可以联系我,137767002
全部回答
第一,五行:这是把WINDOWS发给窗口的消息,传递到你的窗口类来处理(CMainFrame),有的消息你并没有提供接受并处理的函数,因此会传到父类(CFramWnd)中处理,你要处理的有哪些消息,就在这里作出说明了.
第三行:具体说明哪个消息用哪个函数来来处理,(此处没有说明函数名,是默认为OnCreate
第二,四行是注释
消息映射,ON_WM_CREATE() 对应的成员函数是
afx_msg int OnCreate(LPCREATESTRUCT);
当windows窗口被创建后执行的函数。
BEGIN_MESSAGE_MAP(CMainFrame,CFramWnd) //开始消息映射
//{{AFX_MSG_MAP(CMainFrame)
ON_WM_CREATE() //映射的处理消息
//}}AFX_MSG_MAP
END_MESSAGE_MAP //结束消息映射
刚学mfc的话,不建议去研究这个,浪费时间,在学段时间再回来看这个吧。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
冲马(庚午)煞南什么意思
放盐太多的泡菜益生菌会减少吗
广州肠粉哪里的更好吃
丽丽带了一种两元和五元的人民币她想去买一个
70级猎人FB输出循环是怎样能打出更高的DPS
我爸爸个子185cm我可以长他那么高吗?
北新泾加油站·地址好找么,我有些事要过
设集合A的元素是实数,且满足:1.1∈A;2.若a
雨燕1.5和大polo低配选那个
我国古代收字最多的字典是?
高州农村结婚习俗男方该买什么给女方
好多人都被骗子利用网商贷骗了没人管吗
请问CBT125化油器混合比是多少呢,资料上显业
这是什么虫子,最近家里好多
人民洗浴休闲会馆怎么去啊,有知道地址的么
推荐资讯
麻烦朋友们,以这张照片,写一首诗歌谢谢
我感觉我快要跟一朋友擦出火花了,我又开心又
我有一张5O元的水印是6O元的那里有收够的
在农村150平地下室能做什么
森尼陶瓷是十大陶瓷品牌吗?
淄博嘉亿国际的沙霸怎么处理的
有和直男做过的么
飞的组词有哪些的
1毫米铜条粘在大理石上用什么胶水要防水的
空气能哪个牌子的最好?
求大侠教我PS3软破下载游戏的步骤
我的OPPO手机为什么上不了QQ?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?