编写第一个MFC应用程序

一、MFC简介

微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量,其中包含的类包含大量Windows句柄封装类和很多WIndows的内置控件和组件的封装类。

MFC给Windows操作系统提供了面向对象的接口,支持可重用性、自包含性以及其他OPP原则,MFC通过编写类来封装窗口、对话框以及其他对象,引入某些关键的虚函数(覆盖这些函数可以改变派生类的功能)来完成。

二、代码的编写

新建一个Win32的空项目,建立名为mfc.h的头文件和名为mfc.cpp的源文件

//mfc.h
#include<afxwin.h> //mfc头文件

class MyApp:public CWinApp //CWinApp应用程序类
{
public:
    //程序入口
    virtual BOOL InitInstance();
};

class MyFrame:public CFrameWnd //窗口框架类
{
public:
    MyFrame();

};
//mfc.cpp
#include"mfc.h" MyApp app;//全局应用程序对象,有且仅有一个 BOOL MyApp::InitInstance() { //创建窗口 MyFrame * frame = new MyFrame; //显示和更新 frame->ShowWindow(SW_SHOWNORMAL); frame->UpdateWindow(); m_pMainWnd = frame;//保存指向应用程序的主窗口的指针 return TRUE;//返回正常的初始化 } MyFrame::MyFrame() { Create(NULL, TEXT("mfc")); }

程序执行的流程:

  1. 程序开始前先实例化应用程序对象(有且仅有一个)
  2. 执行程序的入口函数 InitInstance()
  3. 给框架类MyFrame对象动态分配内存(自动调用它的构造函数),在其构造函数内部,通过CWnd::Create创建窗口
  4. 框架类对象显示窗口 Wnd::ShowWindow
  5. 框架类对象更新窗口 Wnd::UpdateWindow
  6. 保存框架类对象指针 CWinThread::m_pMainWnd

 注意:对项目要进行配置 在共享DLL中使用MFC

猜你喜欢

转载自www.cnblogs.com/yanchaoyi/p/12584326.html