MFC开发1

MFC相关函数

单文档视图架构程序

CWinApp-应用程序类,负责管理应用程序的流程
CFrameWnd-框架窗口类,负责管理框架窗口
CView-视图窗口类,负责显示数据
CDocument-文档类,负责管理数据

多文档视图架构程序

CWinApp-应用程序类
CMDIFrameWnd-多文档主框架窗口类
CMDIChildWnd-多文档子框架窗口类
CView-视图窗口类,显示数据
CDocument-文档类,管理数据

对话框应用程序

CWinApp-应用程序类
CDialog-对话框窗口类

CObject类

MFC类库中绝大部分类的父类,提供了MFC类库中一些基本的机制。
对运行时类信息的支持对动态创建的支持
对序列化的支持:
CWinApp类 应用程序类,封装了应用程序、线程等信息。
CDocument类,文档类,管理数据
Frame Windows,框架窗口类,封装了窗口程序组成的各种 框架窗口
CSplitterWnd-用来完成拆分窗口的类
Control Bars-控件条类

Dialog Boxes-对话框类,封装了各种对话框,通用的对话框
Views-视图类,封装了各种显示窗口
Controls-控件类,封装了各种常用的控件
Exceptions-异常处理类,封装了MFC中常用的各种异常File-文件类,各种文件的I/O操作等绘图类,包括CDC类和CGdiObject类。
数据集合类,CArray/Clist/CMap,封装了相应的数据结构的管理
非CObject类的子类
CPoint, CTime, CString行提供了各种数据结构相关的管理,

创建程序

先创建一个工程

定义自己的框架类CMyFrameWnd,派生自CFrameWnd类.

1
2
3
class CMyFrameWnd : public CFrameWnd{

};

定义自己应用程序类CMyWinApp,派生自CWinApp类,并定义构造以及重写Initnstance虚函数,在函数中创建并显示窗口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class CMyWinApp : public CWinApp{
public:
CMyWinApp(){
}
virtual BOOL InitInstance(){
CMyFrameWnd* pFrame = new CMyFrameWnd;
pFrame->Create(NULL,"MFCBase");
m_pMainWnd = pFrame;
pFrame-> ShowWindow(SW_SHOW);
pFrame->UpdateWindow();
return TRUE;
}
}
};

定义CMyWinApp类的对象(程序的爆破点)

1
CMyWinApp theApp;	//全局变量