第1章 MFC的概念性总括 1
面向对象编程的一些背景 1
面向对象编程术语 1
通常的对象 2
对象与C++ 3
为什么使用OOP 4
应用程序框架与MFC 5
MFC要点之旅 8
结语 20
第2章 基本的Windows支持 21
MFC与C/SDK 21
基本的MFC应用程序组件 28
现在,找到WinMain() 34
一些其他隐藏的信息 40
MFC对GDI的支持 43
结语 46
CCmdTarget和消息映射表 47
第3章 MFC中的消息处理 47
窗口消息 48
MFC消息映射内幕 50
MFC如何使用消息映射表 54
进入消息循环:PreTranslateMessage() 66
结语 67
第4章 MFC实用类 68
简单值类型 68
MFC的集合类 79
CFile家族:MFC对文件的访问 95
CException:提供更好的错误处理 106
结语 110
第5章 CObject 111
使用CObject的代价 111
CObject的特性 111
宏的介绍 113
运行时类的信息 113
MFC中的持续性 119
CObject对诊断的支持 129
CObject的诊断支持内幕 133
组合在一起 146
投入使用 146
是否值得 146
结语 148
第6章 MFC对话框和控件类 149
CDialog:模态MFC对话框和非模态MFC对话框 149
MFC公用对话框 168
OLE对话框 176
属性页(也称带标签的对话框) 179
MFC控件类 186
结语 192
第7章 MFC的文档/视图结构 193
为什么要用文档/视图 193
其他原因 193
体系结构 194
旧的方法 194
文档/视图结构内幕 199
文档/视图内幕再览 216
结语 219
第8章 高级文档/视图结构内幕 220
CMirrorFile 220
CView打印 223
CView对打印预览支持的内幕 229
CView的派生类:CScrollView 236
CView的另一个派生类:CCtrlView 244
结语 247
第9章 MFC的增强型用户界面类 248
CSplitterWnd:MFC分割窗口 248
MFC的CControlBar体系结构 274
CMiniFrameWnd 296
MFC的MRU文件链表实现 297
结语 299
理解状态 300
第10章 MFC的DLL与线程 300
MFC的DLL 306
MFC线程 314
结语 324
下一章 325
第11章 用MFC实现COM 326
MFC和OLE 326
COM 327
何为COM类 328
COM接口 329
GUID 330
剖析IUnknown接口 331
COM对象服务器 334
拥有多个接口的COM类 342
MFC COM类 350
使用MFC创建CoMath 352
MFC COM和接口映射宏 358
使用MFC的CoMath类 362
完成服务器的设计 366
MFC对类厂的支持 368
结语 377
第12章 统一数据传输和MFC 378
历史回顾 378
重要的结构 380
IDataObject接口 383
OLE剪贴板 384
MFC的IDataObject类 385
延迟供应 388
深入了解MFC的IDataObject类 390
OLE拖放 397
结语 407
第13章 使用MFC实现OLE文档 408
OLE文档101 408
MFC对OLE文档的支持 416
使用MFC实现OLE文档服务器 422
容器/服务器的协调工作 425
使条目无效 435
保存容器的文档 437
装载OLE文档 438
结语 439
第14章 MFC与自动化 440
自动化的历史 440
自动化的功能 440
使用MFC实现自动化应用程序 442
自动化的工作机制 442
COM接口与自动化 442
实现自动化的另外一种方法:使用类型信息 455
MFC与自动化 455
结语:使用“MFC方式”的结果 468
第15章 OLE控件 469
VBX及其缺陷 469
写一个OLE控件 470
OLE控件 470
在工程里使用OLE控件 471
它是如何工作的 472
MFC和OLE控件的容器 475
OLE控件的生存周期 476
OLE连接 480
OLE控件的事件 484
MFC如何处理事件 486
技巧:在一个视图中加入一个事件接收器 487
OLE控件的属性页 489
结语 495
附录A MFC源代码导读 496
MFC编码技术 496
探索MFC的工具 501
MFC源代码指南 501
愉快的旅途 522
附录B 本书的示例代码 523
术语表 524