1. MFC借助C++的优势为Windows开发开辟了一片新天地,同时也借助 ApplicationWizzard使开发者摆脱离了那些每次都必写基本代码2. 借助ClassWizard和消息映射使开发者摆脱了定义消息处理时那种混乱和冗长的代码段。3. 更令人兴奋的是利用C++的封装功能使开发者摆脱W...
分类:
编程语言 时间:
2014-09-17 01:03:31
阅读次数:
270
MFC消息映射机制的具体实现方法是:在每个能接收和处理消息的类中,定义一个消息和消息函数对照表,即消息映射表。在消息映射表中,消息与对应的消息处理函数指针是成对出现的。某个类能处理的所有消息及其对应的消息处理函数的地址都列在这个类对应的静态表中。当有消息需要处理时,程序只要搜索该消息静态表,查看表中...
分类:
其他好文 时间:
2014-08-29 12:59:27
阅读次数:
172
这算是一个演示程序吧,想不到上下文菜单也是採用ON_COMMAND宏来进行消息映射,在这里,我发现一个问题:从CWnd派生的类ON_UPDATE_COMMAND_UI_RANGE似乎没有效果,不知道应该再加点什么,可是从CFrameWnd派生出来问题就不会发生,真是奇怪……看看从CWnd派生出来的效...
分类:
其他好文 时间:
2014-08-27 17:58:48
阅读次数:
234
1 消息循环所在的函数
CWinApp::Run
2 消息类别
Windows Messages
WM_XX前缀开头,但是除了WM_COMMAND消息外。
Control Notifications
包含来自控件或者子窗口发给父窗口的 WM_COMMAND的通知消息。
Command Messages
菜单,工具栏按钮,快捷键
3 消息的发送和接受
CWinApp...
分类:
其他好文 时间:
2014-08-20 16:27:02
阅读次数:
182
MFC的AppWizard可以生成三种类型的应用程序:基于对话框的应用、单文档应用(SDI)和多文档应用(MDI)。一般情况下,采用文档/视结构的应用程序至少应由以下对象组成: 1、应用程序是一个CwinApp派生对象,它充当全部应用程序的容器。应用程序沿消息映射网络分配消息给它的所有子程序。 .....
分类:
其他好文 时间:
2014-08-12 00:10:33
阅读次数:
286
机制3:MFC消息映射机制:
类内声明,类外定义宏,绑定消息处理函数
派生自CCmdTarget
类内声明宏:DECLARE_MESSAGE_MAP()
类外添加实现宏:
BEGIN_MESSAGE_MAP(类名,父类名)
END_MESSAGE_MAP()
//数据结构
struct AFX_MSGMAP_ENTRY
{
UINT nMessage; // 消息ID
U...
分类:
编程语言 时间:
2014-07-29 17:55:42
阅读次数:
309
一 MFC的消息映射机制(3) 1 消息映射机制的使用 1.1 自己的类必须派生自 CCmdTarget 1.2 自己的类内 必须添加声明宏 DECLARE_MESSAGE_MAP 1.3 自己的类外 必须添加实现宏 BEGIN_MESSAGE_MAP( th...
分类:
其他好文 时间:
2014-07-24 00:52:47
阅读次数:
375
以前一直不知道AFX_MSG是什么意思,只是觉得它应该是个消息映射函数,但是具体代表什么意思,会返回一个什么样的值是一点都不清楚,今天查了下资料,把查到的东西放这,以免以后忘了还得再查。在头文件(DrawView.h)中声明消息响应函数原型。//{{AFX_MSG(CDrawView) //注释宏a...
分类:
其他好文 时间:
2014-07-16 19:10:49
阅读次数:
208
DECLARE_MESSAGE_MAP(
)
说明:
你的程序中的每一个CCmdTarget的派生类都可以提供一个消息映射以处理消息。在你的类声明的末尾使用DECLARE_MESSAGE_MAP宏。然后,在实现了类成员函数的.CPP文件中加入BEGIN_MESSAGE_MAP宏,再加入每个消息处理函数的宏入口,最后使用END_MESSAGE_MAP宏。
注意:
如果你在DE...
分类:
其他好文 时间:
2014-07-08 16:03:43
阅读次数:
146
即便是基于MFC的应用程序,建立窗口类也是会遵循如下的过程:
设计窗口类->注册窗口类->生成窗口->显示窗口->更新窗口->消息循环->消息路由到窗口过程函数处理。下面就剖析一下在MFC中是如何完成上述过程的。
(1)每个应用程序都有且仅有一个应用类的全局变量theApp,全局变量先于WinMain函数进行处理。
(2)WinMain函数体在APPMODUL.CPP文件中,定义如下:
...
分类:
其他好文 时间:
2014-07-08 16:01:46
阅读次数:
286