Win32 与MFC

Win32:

         Win32函数式编程,窗口体系,消息统一传入反应函数处理

 

 

MFC:

        基于WIN32 API封装的框架类库集合, Afx是代号,

        CWinThead  有活动窗口和 主窗口,CWnd * m_pMainWnd

                                                               CWnd * m_pActiveWnd

        每个CWnd的子类 CFrameWnd又有ActiveView 窗口中(上)可以有多个Cwnd(View 窗口(CView Ctoolbar)

mfc类图:

MFC窗口及线程系统:

      线程本线程中Afx有效,

      窗口采有父子类容器关系

     一线程 ->多窗口树- >窗口管理消息,窗口树有一定顺序进行消息传递单一处理原则(一个消息只有一个处理函数响应。

 

 

通过分析MFC的源代码,我们可以得到WM_COMMAND的消息响应顺序如下:

多文档框架中,有打开的文档时:视图 > 文档 > 子框架窗口 > 应用程序 >主框架窗口

多文档框架在没有打开文档时,应用程序和主框架窗口的顺序相反:主框架窗口 > 应用程序

 

在单文档框架应用程序中,因为没有子框架窗口,所以顺序应该是:视图 > 文档 >主框架窗口> 应用程序。无论有没有打开文档,主框架窗口都比应用程序类更优先。

 总结:

        MFC是win32 api的类化封装,带自己的MFC窗口消息机制和父子窗口机制。

你可能感兴趣的:(Win32,mfc)