MFC

mfc其实就是把windows编程封装成了类来处理

所有MFC中用到的类都在#include<afxwin.h>头文件中

程序执行流程:

首先程序开始前,先要实例化应用程序对象有且只有一个

//类似于C语言的main函数一样

然后执行实例化应用程序对应中的入口函数InitInstance()函数

 1 //头文件
 2 class MyApp :public CWinApp //CWinApp应用程序类
 3 {
 4 public:
 5     //程序入口
 6     virtual BOOL InitInstance();
 7 
 8 };
 9 
10 //cpp文件
11 BOOL MyApp::InitInstance()
12 {
13     
14        //在这里面进行初始化
15     return TRUE; //返回正常初始化
16 }
View Code

 

接着给框架类MyFrame对象分配动态空间,在构造函数内部,通过CWnd::Create函数创建窗口

 1 class MyFrame :public CFrameWnd //窗口框架类
 2 {
 3 public:
 4     MyFrame();
 5 };
 6 
 7 
 8 
 9 MyFrame::MyFrame()
10 {
11     Create(NULL, TEXT("mfc"));
12 }
13 
14 
15 BOOL MyApp::InitInstance()
16 {
17     //创建窗口
18     MyFrame* frame = new MyFrame;
19     return TRUE; //返回正常初始化
20 }
View Code

 

CWnd::ShowWindow框架类显示窗口

CWind::UpdateWindow 框架类更新窗口

CWinThread::m_pMainWnd 保存框架类对象指针

1 BOOL MyApp::InitInstance()
2 {
3 
4     //显示和更新
5     frame->ShowWindow(SW_SHOWNORMAL);
6     frame->UpdateWindow();
7     m_pMainWnd = frame; //保存指向应用程序的主窗口的指针
8     return TRUE; //返回正常初始化
9 }
View Code