毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
基于ON/OFF算法的网络时间隐蔽信道的设计与实现(5)
3 让开发商惊喜
从Visual Studio的第一个版本开始,微软就将提高开发人员的工作效率和灵活性作为自己的目标。Visual Studio 2010将继续关注并且显著地改进开发者最核心的开发体验。
4 下一代平台浪潮的弄潮儿
微软将继续投资于市场领先的操作系统,工具软件和服务器平台,为客户创造更高的价值。使用Visual Studio 2010,将可以在新一代的应用平台上,为你的客户创造令人惊奇的解决方案。
5 跨部门的应用
客户将在不同规模的组织内创建应用,跨度从单个部门到整个企业。Visual Studio 2010将确保在这么宽泛的范围内的应用开发都得到支持。
6 高效的开发环境
Microsoft Visual Studio 2010 采用拖曳式便能完成软件的开发。简简单单的操作便可以实现一个界面的生成。但拖曳的界面,也应当有相应的代码来实现功能。Microsoft Visual Studio 2010支持C#、C++ 、VB。 可以快速实现相应的功能。
2.4 MFC的消息响应机制
1 简述
VC++的MFC类库实际上是Windows下C++编程的一套最为流行的类库。MFC的框架结构大大方便了程序员的编程工作,但是为了更加有效、灵活的使用MFC编程,了解MFC的体系结构往往可以使编程工作事半功倍。它合理的封装了WIN32 API函数,并设计了一套方便的消息映射机制。但这套机制本身比较庞大和复杂,对它的分析和了解无疑有助于我们写出更为合理的高效的程序。这里我们简单的分析MFC的消息响应机制,以了解MFC是如何对Windows的消息加以封装,方便用户的开发。
2 MFC的消息实现机制
在MFC的框架结构下,可以进行消息处理的类的头文件里面都会含有DECLARE_MESSAGE_MAP()宏,这里主要进行消息映射和消息处理函数的声明。可以进行消息处理的类的实现文件里一般都含有如下的结构。
BEGIN_MESSAGE_MAP(CInheritClass, CBaseClass)
//{{AFX_MSG_MAP(CInheritClass)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
这里主要进行消息映射的实现和消息处理函数的实现。
所有能够进行消息处理的类都是基于CCmdTarget类的,也就是CCmdTarget类是所有可以进行消息处理类的父类。CCmdTarget类是MFC处理命令消息的基础和核心。
同时MFC定义了下面的两个主要结构:
AFX_MSGMAP_ENTRY
struct AFX_MSGMAP_ENTRY
{
UINT nMessage; // windows message
UINT nCode; // control code or WM_NOTIFY code
UINT nID;
// control ID (or 0 for windows messages)
UINT nLastID;
// used for entries specifying a range of control id's
UINT nSig;
// signature type (action) or pointer to message #
AFX_PMSG pfn; // routine to call (or special value)
};
和AFX_MSGMAP
struct AFX_MSGMAP
{
#ifdef _AFXDLL
const AFX_MSGMAP* (PASCAL* pfnGetBaseMap)();
#else
const AFX_MSGMAP* pBaseMap;
#endif
const AFX_MSGMAP_ENTRY* lpEntries;
};
其中AFX_MSGMAP_ENTRY结构包含了一个消息的所有相关信息,其中
nMessage为Windows消息的ID号
nCode为控制消息的通知码
nID为Windows控制消息的ID
nLastID表示如果是一个指定范围的消息被映射的话,
nLastID用来表示它的范围。
nSig表示消息的动作标识
AFX_PMSG pfn它实际上是一个指向和该消息相应的执行函数的指针。
而AFX_MSGMAP主要作用是两个,一:用来得到基类的消息映射入口地址。二:得到本身的消息映射入口地址。 实际上,MFC把所有的消息一条条填入到AFX_MSGMAP_ENTRY结构中去,形成一个数组,该数组存放了所有的消息和与它们相关的参数。同时通过AFX_MSGMAP能得到该数组的首地址,同时得到基类的消息映射入口地址,这是为了当本身对该消息不响应的时候,就调用其基类的消息响应。
共7页:
上一页
1
2
3
4
5
6
7
下一页
上一篇:
基于Android的码表程序的实现
下一篇:
移动WIMAX快速切换认证协议的仿真
基于Apriori算法的电影推荐
基于PageRank算法的网络数据分析
基于神经网络的验证码识别算法
基于网络的通用试题库系...
python基于决策树算法的球赛预测
基于消费者个性特征的化...
加密与解密算法的研究【1931字】
AT89C52单片机的超声波测距...
医院财务风险因素分析及管理措施【2367字】
10万元能开儿童乐园吗,我...
神经外科重症监护病房患...
公寓空调设计任务书
中国学术生态细节考察《...
志愿者活动的调查问卷表
国内外图像分割技术研究现状
承德市事业单位档案管理...
C#学校科研管理系统的设计