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; // 这句话很重要,关系到程序是否启起来。