欢迎来到天天文库
浏览记录
ID:24963955
大小:107.50 KB
页数:19页
时间:2018-11-16
《4.mfc程序的初始化过程》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、MFC程序的初始化过程2021/7/21成都信息工程学院计算机学院Frame2的类层次及其成员2021/7/22成都信息工程学院计算机学院CWinApp::InitApplication()InitApplication是CWinApp的虚函数,负责“每个程序只做一次”(只有第一个实例才会进入)的操作放在其中,如:注册窗口(RegisterClass)窗口类只需注册一次,即可供同一程序的后续每一个实例(instance)使用2021/7/23成都信息工程学院计算机学院CWinApp::InitInstance()InitInstance是CWinApp的
2、虚函数,负责“每一个例程都得做一次”(任何实例都会进入)的操作即放在其中,如:产生窗口(CreateWindow)产生窗口是每一个实例(instance)都得进行的操作2021/7/24成都信息工程学院计算机学院窗口类通常,系统会为我们注册一些标准的窗口类(以及一些标准的窗口函数)我们(程序设计者)应该在我们的CMyWinApp中改写InitInstance,并在其中把窗口产生出来在标准的窗口类中指定自己的窗口标题和菜单2021/7/25成都信息工程学院计算机学院Frame2//MY.CPPCMyWinApptheApp;voidmain(){CWinA
3、pp*pApp=AfxGetApp();pApp->InitApplication();pApp->InitInstance();pApp->Run();}2021/7/26成都信息工程学院计算机学院Frame2//MY.CPPCMyWinApptheApp;voidmain(){CWinApp*pApp=AfxGetApp();pApp->InitApplication();pApp->InitInstance();pApp->Run();}调用的是CWinApp::InitApplication2021/7/27成都信息工程学院计算机学院Frame2
4、//MY.CPPCMyWinApptheApp;voidmain(){CWinApp*pApp=AfxGetApp();pApp->InitApplication();pApp->InitInstance();pApp->Run();}调用的是CMyWinApp::InitInstance2021/7/28成都信息工程学院计算机学院Frame2//MY.CPPCMyWinApptheApp;voidmain(){CWinApp*pApp=AfxGetApp();pApp->InitApplication();pApp->InitInstance();pA
5、pp->Run();}调用的是CWinApp::Run2021/7/29成都信息工程学院计算机学院CMyWinApp::InitInstanceBOOLCMyWinApp::InitInstance(){cout<<"CMyWinApp::InitInstance";m_pMainWnd=newCMyFrameWnd;returnTRUE;}2021/7/210成都信息工程学院计算机学院CMyWinApp::InitInstanceBOOLCMyWinApp::InitInstance(){cout<<"CMyWinApp::InitInstance
6、";m_pMainWnd=newCMyFrameWnd;returnTRUE;}引发CMyFrameWnd::CMyFrameWnd构造函数2021/7/211成都信息工程学院计算机学院CMyWinApp::InitInstanceBOOLCMyWinApp::InitInstance(){cout<<"CMyWinApp::InitInstance";m_pMainWnd=newCMyFrameWnd;returnTRUE;}CMyFrameWnd::CMyFrameWnd(){Create();}2021/7/212成都信息工程学院计算机学院
7、CMyWinApp::InitInstanceBOOLCMyWinApp::InitInstance(){cout<<"CMyWinApp::InitInstance";m_pMainWnd=newCMyFrameWnd;returnTRUE;}CMyFrameWnd::CMyFrameWnd(){Create();}Create是虚函数,但CMyFrameWnd未改写它,所以引发父类的CFrameWnd::Create2021/7/213成都信息工程学院计算机学院CMyWinApp::InitInstanceCMyFrameWnd::CMyFram
8、eWnd(){Create();}BOOLCFrameWnd::Create()
此文档下载收益归作者所有