mfc | 初识mfc

之前一直没学mfc,今天有点无聊,就看了一点。

MFC

本质就是对win32的封装。

通常的配置是静态编译mfc,会方便一些。

mfc的层次结构图

在msdn里搜Hierarchy Chart。

CWinApp类

基于CWinApp的应用程序对象,程序本体,有且只能有一个。

必须要覆盖CWinApp的虚函数InitInstance在里面创建chuangko9u并把窗口对象保存在它里面的成员变量m.pMainWnd。

CFrameWnd类

类似于窗口过程函数-消息处理函数。

创建窗口是通过派生这个类。

CFrameWnd::Create

BOOL Create(xxxxxxxxxx);

其中如果类名为NULL,则以MFC内奸的窗口类产生一个标准的外框窗口。

手动编写mfc程序的几个注意事项

  1. 使用win32 application去创建工程
  2. 包含MFC运行库,设置静态编译就可以了
  3. 、使用头文件afxwin.h
基本代码实现

hello.cpp:

#include <afxwin.h>
#include "hello.h"

CMyApp theApp;

BOOL CMyApp::InitInstance()
{
	m_pMainWnd = new CMainWindow;
	m_pMainWnd->ShowWindow(m_nCmdShow);
	m_pMainWnd->UpdateWindow();
	return TRUE;
}

CMainWindow::CMainWindow()
{
	Create(NULL,"helloMFC");
}

hello.h:

#ifndef __HELLO_H__
#define __HELLO_H__

class CMyApp:public CWinApp
{
public:
	virtual BOOL InitInstance();
};

class CMainWindow:public CFrameWnd
{
public:
	CMainWindow();
};


#endif
posted @ 2021-02-09 13:00  Mz1  阅读(399)  评论(0编辑  收藏  举报