chapter 1 windows 程序内部运行机制
1.1. 窗口创建过程
1.2. 消息循环
chapter 2 掌握c++
略
chapter 3 MFC框架程序剖析
3.1. MFC框架程序剖析
3.1.1 所涉及的类层次
3.1.2 MFC框架程序流程
3.2. 窗口类,窗口对象与窗口区别(添加一个按钮的过程)
3.2.1 区分Frame 和 View
Frame Window对应MFC自动生成的CMainFram类
View对应MFC自动生成的CxxxView (xxx是自己起的名字)
详见:MSDN:
Frame Windows
3.2.2 添加按钮
窗口类:CButton
窗口对象:CButton m_btn, 声明为CMainFrame 或者 CxxxView的成员变量
注:不能在CMainFram或者CxxxView的OnCreate函数中声明,否则OnCreate函数结束后,窗口对象就消失了,窗口也随之不见
窗口:声明了窗口对象,不代表就生成了窗口,要用窗口对象来生成窗口
在 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 函数中添加,或者使用CxxxView的类向导拦截WM_CREATE消息,添加int CtestMFCView::OnCreate(LPCREATESTRUCT lpCreateStruct)函数,再在里面添加 代码:
m_btn.Create(_T("My button"), WS_CHILD|WS_VISIBLE|BS_DEFPUSHBUTTON, CRect(10,70,100,100), this, 3);
如果去掉WS_VISIBLE,则需要再添加代码:
m_btn.ShowWindow ( SW_SHOWNORMAL );
才能显示按钮。