MFC应用程序运行流程

afx开头的函数都是windows应用程序框架函数 application frame xxxxx


CMainFrame //框架窗口


CtestView //子窗口


CTestDoc //数据文档




vc++下的MFC应用程序运行流程


首先是 初始化全局变量CtestApp theApp;//首先构造基类 再构造子类


然后 CtestApp::CtestApp(){}//构造函数


然后进入到 _tWinMain(HINSTANCE hInstance , HINSTANCE hPrevInstance, LPSTR lpCmdLine , int  nCmdShow){}




再到 int AFXAPI AfxWinMain(...)里面的 获取子类的指针


if(!AfxWinMain(...))goto InitFailure;


if(pApp!=NULL&&!pApp->InitApplication())goto InitFailure;


使用指针if(!pThread->InitInstance())初始化


BOOL CTestApp::InitInstance(){}




BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)


BOOL AFXAPI AfxEndDeferRegisterClass(LONG fToRegister){}//注册窗口


BOOL CFrameWnd::Create(...)


BOOL CWnd::CreateEx(...)




消息循环


pThread-> run();


BOOL CWinThread::PumpMessage(){...}




MFC消息映射机制
和消息响应本质没有太大的区别
消息产生-与具体产生窗口相关-句柄-C++指针指向的对象-基类中调用WindowProc中的OnWndMsg-判断消息种类查找消息映射(通过头文件中的消息响应函数原型,源文件中的消息映射)
-找到消息响应函数-进行响应



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值