您好,欢迎光临本网站![请登录][注册会员]  
文件名称: MFC教程(完整版chm)
  所属分类: C++
  开发工具:
  文件大小: 1mb
  下载次数: 0
  上传时间: 2008-03-27
  提 供 者: mymou*****
 详细说明: 第1章 MFC概述........................................................................... 1

1.1 MFC是一个编程框架......................................................... 1

1.1.1 封装........................................................................ 1

1.1.2 继承........................................................................ 2

1.1.3 虚拟函数和动态约束................................................ 2

1.1.4 MFC的宏观框架体系.............................. .................. 2

1.2 MDI应用程序的构成.......................................................... 3

1.2.1 构成应用程序的对象................................................ 3

1.2.2 构成应用程序的对象之间的关系.............................. 5

1.2.3 构成应用程序的文件................................................ 5

第2章 MFC和Win32..................................................................... 9

2.1 MFC Object和Windows Object的关系................................ 9

2.2 Windows Object................................................................ 12

2.2.1 Windows的注册...................................................... 12

2.2.2 MFC窗口类CWnd.................................................. 15

2.2.3 在MFC下创建一个窗口对象.................................. 17

2.2.4 MFC窗口的使用..................................................... 18

2.2.5 在MFC下窗口的销毁............................................ 19

2.3 设备描述表...................................................................... 20

2.3.1 设备描述表概述..................................................... 20

2.3.2 设备描述表在MFC中的实现.................................. 22

2.3.3 MFC设备描述表类的使用....................................... 24

2.4 GDI对象.......................................................................... 25

第3章 CObject类......................................................................... 28

3.1 CObject的结构................................................................. 28

3.2 CObject类的特性.............................................................. 30

3.3 实现CObject特性的机制.................................................. 32

3.3.1 DECLARE_DYNAMIC等宏的定义........................... 32

3.3.2 CruntimeClass类的结构与功能................................. 35

3.3.3 动态类信息、动态创建的原理................................ 38

3.3.4 序列化的机制......................................................... 39

第4章 消息映射的实现................................................................ 42

4.1 Windows消息概述............................................................ 42

4.1.1 消息的分类............................................................ 42

4.1.2 消息结构和消息处理.............................................. 42

4.2 消息映射的定义和实现.................................................... 44

4.2.1 MFC处理的三类消息.............................................. 44

4.2.2 MFC消息映射的实现方法....................................... 45

4.2.3 在声明与实现的内部.............................................. 46

4.2.3.1 消息映射声明的解释.................................... 47

4.2.3.2 消息映射实现的解释.................................... 49

4.2.4 消息映射宏的种类.................................................. 51

4.3 CcmdTarget类.................................................................. 54

4.4 MFC窗口过程.................................................................. 55

4.4.1 MFC窗口过程的指定.............................................. 56

4.4.2 对Windows消息的接收和处理............................... 58

4.4.2.1 从窗口过程到消息映射................................. 59

4.4.2.2 Windows消息的查找和匹配.......................... 60

4.4.2.3 Windows消息处理函数的调用....................... 62

4.4.2.4 消息映射机制完成虚拟函数功能的原理........ 63

4.4.3 对命令消息的接收和处理....................................... 64

4.4.3.1 MFC标准命令消息的发送............................. 64

4.4.3.2 命令消息的派发和消息的多次处理............... 67

4.4.3.3 一些消息处理类的OnCmdMsg的实现........... 69

4.4.3.4 一些消息处理类的OnCommand的实现......... 71

4.4.4 对控制通知消息的接收和处理................................ 72

4.4.4.1 WM_COMMAND控制通知消息的处理.......... 72

4.4.4.2 WM_NOTIFY消息及其处理:......................... 73

4.4.4.3 消息反射...................................................... 74

4.4.5 对更新命令的接收和处理....................................... 77

4.4.5.1 实现方法...................................................... 77

4.4.5.2 状态更新命令消息........................................ 78

4.4.5.3 类CCmdUI................................................... 79

4.4.5.4 自动更新用户接口对象状态的机制............... 80

4.5 消息的预处理.................................................................. 82

4.6 MFC消息映射的回顾........................................................ 83

第5章 MFC对象的创建............................................................... 85

5.1 MFC对象的关系............................................................... 85

5.1.1 创建关系................................................................ 85

5.1.2 交互作用关系......................................................... 86

5.2 MFC提供的接口............................................................... 87

5.2.1 虚拟函数接口......................................................... 87

5.2.2 消息映射方法和标准命令消息................................ 91

5.3 MFC对象的创建过程........................................................ 94

5.3.1 应用程序中典型对象的结构.................................... 94

5.3.1.1 应用程序类的成员变量................................. 95

5.3.1.2 CDocument的成员变量................................. 97

5.3.1.3 文档模板的属性........................................... 97

5.3.2 WinMain入口函数................................................... 99

5.3.2.1 WinMain流程................................................ 99

5.3.2.2 MFC空闲处理............................................. 101

5.3.3 SDI应用程序的对象创建....................................... 102

5.3.3.1 文档模板的创建.......................................... 102

5.3.3.2 文件的创建或者打开................................... 103

5.3.3.3 SDI边框窗口的创建.................................... 112

5.3.3.4 视的创建.................................................... 115

5.3.3.5 窗口初始化................................................. 116

5.3.3.6 视的初始化................................................. 120

5.3.3.7 激活边框窗口(处理WM_ACTIVE)............... 121

5.3.3.8 SDI流程的回顾........................................... 122

5.3.4 MDI程序的对象创建............................................. 123

5.3.4.1 有别于SDI的主窗口加载过程.................... 124

5.3.4.2 MDI子窗口、视、文档的创建..................... 125

5.3.4.3 MDI子窗口的初始化和窗口的激活.............. 127

第6章 应用程序的退出.............................................................. 131

6.1 边框窗口对WM_CLOSE的处理..................................... 131

6.2 窗口的销毁过程............................................................. 135

6.2.1 DestroyWindow..................................................... 135

6.2.2 处理WM_DESTROY消息..................................... 136

6.2.3 处理WM_NCDESTROY消息................................ 136

6.3 SDI窗口、MDI主、子窗口的关闭.................................. 137

第7章 MFC的DLL.................................................................... 139

7.1 DLL的背景知识.............................................................. 139

7.2 调用约定........................................................................ 141

7.2.1 MFC的DLL应用程序的类型................................. 142

7.3 DLL的几点说明.............................................................. 143

7.4 输出函数的方法............................................................. 145

第8章 MFC的进程和线程.......................................................... 148

8.1 Win32的进程和线程概念................................................ 148

8.2 Win32的进程处理简介.................................................... 148

8.2.1 进程的创建.......................................................... 148

8.2.2 进程的终止.......................................................... 149

8.3 Win32的线程.................................................................. 150

8.3.1 线程的创建.......................................................... 150

8.3.2 线程的终止.......................................................... 150

8.3.3 线程局部存储....................................................... 151

8.4 线程同步........................................................................ 152

8.4.1 同步对象.............................................................. 152

8.4.2 等待函数.............................................................. 153

8.5 MFC的线程处理............................................................. 154

8.5.1 创建用户界面线程................................................ 155

8.5.2 创建工作者线程................................................... 155

8.5.3 AfxBeginThread...................................................... 155

8.5.4 CreateThread和_AfxThreadEntry............................. 157

8.5.5 线程的结束.......................................................... 160

8.5.6 实现线程的消息循环............................................ 161

第9章 MFC的状态.................................................................... 163

9.1 模块状态........................................................................ 163

9.2 模块、进程和线程状态的数据结构................................. 164

9.2.1 层次关系.............................................................. 164

9.2.2 CNoTrackObject类................................................ 166

9.2.3 AFX_MODULE_STATE类..................................... 166

9.2.4 _AFX_BASE_MODULE_STATE.............................. 169

9.2.5 _AFX_THREAD_STATE........................................ 169

9.2.6 AFX_MODULE_THREAD_STATE.......................... 171

9.3 线程局部存储机制和状态的实现..................................... 172

9.3.1 CThreadSlotData和_afxThreadData......................... 173

9.3.1.1 CThreadSlotData的定义............................... 173

9.3.1.2 CThreadSlotData的一些数据成员................. 174

9.3.1.3 _afxThreadData............................................ 175

9.3.2 线程状态_afxThreadState....................................... 176

9.3.3 进程模块状态afxBaseModuleState.......................... 178

9.3.4 状态对象的创建................................................... 180

9.3.4.1 状态对象的创建过程................................... 180

9.3.4.2 创建过程所涉及的几个重要函数的算法....... 183

9.4 管理状态........................................................................ 184

9.4.1 模块状态切换....................................................... 184

9.4.2 扩展DLL的模块状态........................................... 186

9.4.2.1 _AFX_EXTENSION_MODULE..................... 187

9.4.2.2 扩展DLL的初始化函数.............................. 188

9.4.3 核心MFC DLL..................................................... 190

9.4.4 动态链接的规则DLL的模块状态的实现............... 190

9.5 状态信息的作用............................................................. 192

9.5.1.1 模块信息的保存和管理............................... 192

9.5.2 MFC资源、运行类信息的查找.............................. 193

9.5.3 模块信息的显示................................................... 194

9.5.4 模块-线程状态的作用........................................... 196

9.5.4.1 只能访问本线程MFC对象的原因............... 196

9.5.4.2 实现MFC对象和Windows对象之间的映射 196

9.5.4.3 临时对象的处理.......................................... 199

9.6 状态对象的删除和销毁................................................... 199

第10章 内存分配方式和调试机制............................................... 202

10.1 M内存分配................................................................... 202

10.1.1 内存分配函数..................................................... 202

10.1.2 C++的new 和 delete操作符................................ 204

10.2 调试手段...................................................................... 204

10.2.1 C运行库提供和支持的调试功能.......................... 204

10.2.2 MFC提供的调试手段.......................................... 205

10.2.3 内存诊断............................................................ 208

第11章 MFC下的文件类............................................................ 210

11.1 文件操作的方法........................................................... 210

11.2 MFC的文件类............................................................... 210

11.2.1 CFile的结构........................................................ 211

11.2.1.1 CFile定义的枚举类型................................. 211

11.2.1.2 CFile的其他一些成员变量.......................... 212

11.2.1.3 CFile的成员函数........................................ 212

11.2.2 CFile的部分实现................................................. 213

11.2.3 CFile的派生类..................................................... 215

第12章 对话框和对话框类CDialog............................................. 217

12.1 模式和无模式对话框.................................................... 217

12.1.1 模式对话框......................................................... 217

12.1.2 无模式对话框..................................................... 218

12.2 对话框的MFC实现...................................................... 219

12.2.1 CDialog的设计和实现.......................................... 219

12.2.1.1 CDialog的成员变量.................................... 219

12.2.1.2 CDialog的成员函数:................................ 219

12.2.2 MFC模式对话框的实现....................................... 220

12.2.2.1 MFC对话框过程........................................ 220

12.2.2.2 模式对话框窗口过程................................. 221

12.2.2.3 使用原对话框窗口过程作消息的缺省处理. 225

12.2.2.4 Dialog命令消息和控制通知消息的处理...... 226

12.2.2.5 消息预处理和Dialog消息.......................... 228

12.2.2.6 模式对话框的消息循环............................. 229

12.2.3 对话框的数据交换.............................................. 233

12.2.3.1 数据交换的方法........................................ 233

12.2.3.2 CDataExchange........................................... 234

12.2.3.3 数据交换和验证函数................................. 236

12.2.3.4 UpdateData函数......................................... 239

12.3 无模式对话框............................................................... 240

12.3.1 CScrollView......................................................... 240

12.3.2 CFormView.......................................................... 242

12.3.2.1 CFormView的创建..................................... 243

12.3.2.2 CFormView的消息预处理.......................... 245

12.3.2.3 CFormView的输入焦点.............................. 247

第13章 MFC工具条和状态栏..................................................... 248

13.1 Windows控制窗口........................................................ 248

13.2 MFC的工具条和状态栏类............................................. 249

13.2.1 控制窗口的创建.................................................. 251

13.2.1.1 PreCreateWindow....................................... 251

13.2.1.2 控制条的窗口创建.................................... 253

13.2.2 控制条的销毁..................................................... 259

13.2.3 处理控制条的位置.............................................. 259

13.2.3.1 计算控制条位置的过程和算法................... 259

13.2.3.2 CFrameWnd的虚拟函数RecalcLayout......... 260

13.2.3.3 CWnd的成员函数RepositionBars................ 262

13.2.4 工具条、状态栏和边框窗口的接口...................... 265

13.2.4.1 应用程序在状态栏中显示信息................... 265

13.2.4.2 状态栏显示菜单项的提示信息................... 268

13.2.4.3 控制条的消息分发处理............................. 270

13.2.4.4 Tooltip....................................................... 275

13.2.4.5 禁止和允许............................................... 279

13.2.4.6 显示或者隐藏工具栏和状态栏................... 285

13.2.5 泊位和漂浮......................................................... 286

第14章 SOCKET类的设计和实现............................................... 288

14.1 WinSock基本知识......................................................... 288

14.1.1 WinSock API....................................................... 288

14.1.2 Socket的使用...................................................... 290

14.2 MFC对WinSockt API的封装......................................... 291

14.2.1 CAsyncSocket...................................................... 291

14.2.2 socket对象的创建和捆绑..................................... 292

14.2.3 异步网络事件的处理........................................... 296

14.3 CSocket......................................................................... 297

14.4 CSocketFile.................................................................... 299


...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: CHM MFC VC
 输入关键字,在本站1000多万海量源码库中尽情搜索: