菜单
  

    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能得到该数组的首地址,同时得到基类的消息映射入口地址,这是为了当本身对该消息不响应的时候,就调用其基类的消息响应。
  1. 上一篇:基于Android的码表程序的实现
  2. 下一篇:移动WIMAX快速切换认证协议的仿真
  1. 基于MATLAB的图像增强算法设计

  2. 基于Kinect的手势跟踪与识别算法设计

  3. JAVA基于安卓平台的医疗护工管理系统设计

  4. 基于核独立元分析的非线...

  5. 基于Hadoop的制造过程大数据存储平台构建

  6. 基于安卓系统的测量软件...

  7. 基于VC++的GIS矢量图形系统开发

  8. 当代大学生慈善意识研究+文献综述

  9. java+mysql车辆管理系统的设计+源代码

  10. 十二层带中心支撑钢结构...

  11. 杂拟谷盗体内共生菌沃尔...

  12. 乳业同业并购式全产业链...

  13. 大众媒体对公共政策制定的影响

  14. 中考体育项目与体育教学合理结合的研究

  15. 电站锅炉暖风器设计任务书

  16. 酸性水汽提装置总汽提塔设计+CAD图纸

  17. 河岸冲刷和泥沙淤积的监测国内外研究现状

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回