1. 每个MFC程序包含一个可执行程序类取名 theApp,继承CWInApp 例如:class CMFCButtonTestApp : public CWinApp。
2. 对话框通常继承CDialog,包含数个控件,可通过拖拽增添控件,可通过属性设置控件外观,同时通过属性窗口绑定控件的事件。
3. 弹出框:MessageBox(L"OnBnDoubleclickedButton1");
4. 窗口可增加消息,更多的事件
5. 选中类可为这个类添加事件和消息
6. MFC类中函数的来源主要有三个,响应消息,响应事件,覆盖父类方法
7. MFC 单文档和多文档中View 和 Doc类相关,View 通过GetDocument获得对应的Doc实例,Doc使用Serialize函数进行读取和存储例如:
void CSDTest2Doc::Serialize(CArchive& ar)
{
if (ar.IsStoring())
{
CString str;
for(int i=0;i<m_strArray.GetSize();i++)
str += m_strArray.GetAt(i) +L"\r\n";
ar.WriteString(str);
}
else
{
m_strArray.RemoveAll();
CString str;
while(ar.ReadString(str))
m_strArray.Add(str);
}
}
8. OnDraw函数在界面重绘时被调用,可通过调用Invalidate()函数激发重绘事件,也可以类似函数重绘某个区域
9. 通过PreCreateWindow调整窗口参数,与运算调整窗口样式
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if( !CFrameWnd::PreCreateWindow(cs) )
return FALSE;
cs.cx = 500;
cs.cy = 500;//边缘
cs.style = WS_OVERLAPPED | WS_CAPTION | FWS_ADDTOTITLE | WS_MINIMIZEBOX | WS_SYSMENU;
return TRUE;
}
10. PDC绘图 http://www.doc88.com/p-984621853922.html
11. 每个CDC只能产生一个兼容的CDC
12. 资源中的图片会编译到exe内