《C++程序设计教程》教学资源(PPT课件讲稿)第2讲 MFC简介

C++程序设计教程 MFC简介2
C++程序设计教程 MFC简介2

1. Runt imec|ass执行期类型识别 1) CRuntimeClass struct CRuntimeClass LPCSTR m pszclassName i CRuntimeClass* m pBaseClass; static CRuntimeClass* fIrstclass; CRuntimeClass* m pNextclass CObject CCmdTarget CWnd NULL m pBaseclass m pBase Class m pBaseclass m pNextclass m pNextclass m pNextclass
1.RuntimeClass 执行期类型识别 1) CRuntimeClass struct CRuntimeClass { LPCSTR m_lpszClassName; CRuntimeClass* m_pBaseClass; static CRuntimeClass* pFirstClass; CRuntimeClass* m_pNextClass; }; CObject m_pBaseClass m_pNextClass CCmdTarget m_pBaseClass m_pNextClass CWnd m_pBaseClass m_pNextClass NULL

2. Serialize串行化 M CArchive void CMy Doc: Serialize(CArchive& ar) if(ar.工 sToring() ar> (word&)m sizeDoc
2.Serialize 串行化 CArchive void CMyDoc::Serialize(CArchive& ar) { if ( ar.IsStoring() ) ar > (WORD&)m_sizeDoc; }

3 Message Mapp ing消息映射 1) DECLARE MESSAGE MAP O 2) BEGIN MESSAGE MAP ON COMMAND(… END MESSAGE MAPO 3) CWinApp 工nit工 ns tance() Run o ExitInstance o
3.Message Mapping 消息映射 1) DECLARE_MESSAGE_MAP() 2) BEGIN_MESSAGE_MAP() ON_COMMAND(……) END_MESSAGE_MAP() 3) CWinApp InitInstance() Run() ExitInstance()

4.MC类的层次结构 class cobject class CCmdTarget public cobject class cWinThread public CCmdTarget class cwinApp public CWinThread class CMyWinApp public CWinApp class CWnd: public CCmdTarget class Cview public CWnd class CMyView public CView class CFrameWnd: public CWnd class CMainFrame public CFrameWnd class CDocument public CCmdTarget class CMy Doc public CDocument
4. MFC类的层次结构 class CObject class CCmdTarget : public CObject class CWinThread : public CCmdTarget class CWinApp : public CWinThread class CMyWinApp : public CWinApp class CWnd : public CCmdTarget class CView : public CWnd class CMyView : public CView class CFrameWnd : public CWnd class CMainFrame : public CFrameWnd class CDocument : public CCmdTarget class CMyDoc : public CDocument

1. COb ject 1)一般诊断 Assertvalid 2)运行期识别 Runtimeclass 3)串行化 Seria1ize )动态创建 DECLARE DYNAMIC/ IMPLEMENT DYNAMIC 2. CCmdTarget public COb ject 1)消息发送 BEGIN MESSAGE MAP(CMy View, Cview oN COMMAND (ID FILE OPEN, OnFileOpen) END MESSAGE MAP O 2)等待光标 3)支持自动化 Idispatch COM
1. CObject 1) 一般诊断 AssertValid 2) 运行期识别 RuntimeClass 3) 串行化 Serialize 4) 动态创建 DECLARE_DYNAMIC/IMPLEMENT_DYNAMIC 2. CCmdTarget : public CObject 1) 消息发送 BEGIN_MESSAGE_MAP(CMyView,Cview) ON_COMMAND(ID_FILE_OPEN,OnFileOpen) END_MESSAGE_MAP() 2) 等待光标 3) 支持自动化 Idispatch COM

3. CWinApp: public CWin Thread 1)获取应用程序的信息。 2)支持注册表 Registrykey 3)支持文档 Document Template 4. CWnd: public CCmdTarget 1)注册新窗口类。 2)创建和使用窗口 Create, CreateR; 5. CFrameWnd: public CWnd 标题栏、系统菜单、边框、最小/最大化
3. CWinApp : public CWinThread 1) 获取应用程序的信息。 2) 支持注册表 RegistryKey 3) 支持文档 Document Template 4. CWnd : public CCmdTarget 1) 注册新窗口类。 2) 创建和使用窗口 Create, CreateEx; 5. CFrameWnd : public CWnd 标题栏、系统菜单、边框、最小/最大化

6. CView: public CWnd 1)显示/打印的处理 Ondraw() 2)与用户进行交互操作(鼠标/键盘) OnLButtonDown/OnLButtonUp OnKeyDown 3)系统重画 Invalidate(); UpdateWindow( 7. CDocument: public CCmdTarget 1)文档的输入/输出。 OpenDocument/SaveDocument 2)数据的保存和更新 3)ⅵiew的维护
6. CView : public CWnd 1) 显示/打印的处理 OnDraw() 2) 与用户进行交互操作(鼠标/键盘) OnLButtonDown/OnLButtonUp OnKeyDown … … 3) 系统重画 Invalidate(); UpdateWindow() 7. CDocument : public CCmdTarget 1) 文档的输入/输出。 OpenDocument/SaveDocument 2) 数据的保存和更新; 3) View的维护

GD基础知识 癱GD|(图形设备接口) GD是一个可执行程序 GD|是一个抽象的绘图程序接口,程序通过它 访问图形设备驱动 蜂DC( device context)(设备上下文)是绘图 图形函数的集合 CDC类包含了绘图所需要的所有成员函数
GDI基础知识 GDI(图形设备接口) GDI是一个可执行程序 GDI是一个抽象的绘图程序接口,程序通过它 访问图形设备驱动 DC(device context )(设备上下文)是绘图 图形函数的集合。 CDC类包含了绘图所需要的所有成员函数

CDC类的派生类 派生类名称 说明 形 CClientDC提供对窗口客户区域的图形访问 CMetaFileDC创建独立于设备的图元文件 CPaintDC在 MAin Frame中的 OnPaint0内使 用的DC CWindowDc在整个窗口画图的DC
CDC类的派生类 派生类名称 说明 CClientDC 提供对窗口客户区域的图形访问 CMetaFileDC 创建独立于设备的图元文件 CPaintDC 在CMainFrame中的OnPaint()内使 用的DC CWindowDC 在整个窗口画图的DC
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 《C++程序设计教程》教学资源(PPT课件讲稿)复习.ppt
- 《C++程序设计教程》教学资源(讲义)FORTRAN.doc
- 《C++程序设计教程》教学资源(PPT课件讲稿)第1讲 绪论.ppt
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)附录ABC.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)教材介绍.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)课程介绍.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)附录B:术语汇编.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第24章 JavaScript使用.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第23章 可扩展超文本标记语言(XHTML).doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第22章 可扩展标记语言(XML).doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第21章 超文本标记语言(HTML).doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第20章 多媒体通信系统技术.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第19章 网际多目标广播简介.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第18章 因特网与TCP/IP.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第17章 多媒体网络应用及交换技术.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第16章 错误检测和校正.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第15章 光盘存储器的格式.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第14章 只读光盘存储器.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第13章 MPEG电视.doc
- 清华大学:《多媒体技术》课程教学资源(教材教案讲义)第12章 MPEG声音.doc
- 《C++程序设计教程》教学资源(PPT课件讲稿)MFC简介.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第12讲 虚函数(2/2).ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第11讲 虚函数(1/2).ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第10讲 运算符重载.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第9讲 运算符重载.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第8讲 继承与派生(2/2).ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第7讲 继承与派生(1/2).ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第7讲 MFC简介.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第6讲 数组、指针与字符串.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第5讲 C++程序的结构.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第4讲 类与对象.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第3讲 更好的C.ppt
- 《C++程序设计教程》教学资源(PPT课件讲稿)第2讲 C++简单程序设计.ppt
- 《C++程序设计教程》教学资源(讲义)PASCAL.doc
- 《计算机文化基础》创造计算机的神话——比尔·盖茨.ppt
- 《计算机文化基础》课程教学资源(讲解内容).doc
- 《计算机图形学》课程教学资源:第1章 绪论.ppt
- 《计算机图形学》课程教学资源:第2章 图形系统.ppt
- 《计算机图形学》课程教学资源:第3章 基本图形生成算法.ppt
- 《计算机图形学》课程教学资源:第4章 图形变换.ppt