MFC 程序 手写创建顺序

时间:2022-09-17 00:08:21

MFC 程序 手写创建顺序

1.继承CWinApp类

覆盖

class CMyApp : public CWinApp
{
virtual BOOL InitInstance();
}
BOOL CMyApp::InitInstance()
{
CMyFrameWnd *pWnd = new CMyFrameWnd();
pWnd->ShowWindow(SW_SHOW);
m_pMaindWnd = pWnd;
return TRUE;
}

2.继承 CFrameWnd类

class CMyFrameWnd : public CFrameWnd
{
void Create();
};
void CMyFrameWnd::Create()
{
::Create(NULL,"WindowsName");
}

3.然后在主程序中声明CMyApp对象

注:

创建对象后,就不用写WinMain()或者AfxWinMain()

这是因为,m_pMainWnd指针 指向了该CMyApp对象,所以就不需要写入口函数。

4.消息映射(MFC中最重要的)

DECLARE_MESSAGE_MAP()
BEGIN_MESSAGE_MAP(CMyFrameWnd,CFrameWnd) //#define BEGIN_MESSAGE_MAP(theClass,baseClass) 将消息操作(执行)函数写到中间 (Windows下定义好了的消息) END_MESSAGE_MAP()

5. 创建CMyApp 对象

    CMyApp theApp; // 这句话很重要,关系到程序是否启起来。