第1章 MFC基础 1
1.1 MFC简介 1
1.2 使用C++和MFC的好处 1
1.3 MFC类的分层结构 2
1.4 通用类设计规则 2
1.5 综合实例——第一个MFC应用程序 3
第2章 基类 5
2.1 根类CObject 5
2.2 消息映射类CCmdTarget 8
2.3 窗口类CWnd 9
2.4 综合实例——窗口和消息 41
第3章 应用程序结构类 50
3.1 应用程序线程类CWinThread 50
3.2 应用程序对象类CWinApp 56
3.4 文档模板类CDocTemplate 63
3.3 OLE控制模板类COleControlModule 63
3.5 单文档样板类CSingleDocTemplate 66
3.6 多文档样板类CMultieDocTemplate 68
3.7 OLE类工厂COleObjectFactory 69
3.8 OLE服务器类COleTemplateServer 71
3.9 OLE数据类COleDropSource 72
3.10 OLE通信类COleDropTarget 74
3.11 OLE并行类COleMessageFilter 76
3.12 通信接口类CConnectionPoint 78
3.13 综合实例 80
实例1——基本应用程序 80
实例2——线程 83
实例3——OLE拖放 85
第4章 文档相关类 91
4.1 基本文档类CDocument 91
4.2 OLE文档类COleDocument 96
4.3 OLE包装程序文档类COleLinkingDoc 99
4.4 带格式编辑控件文档CRichEditDoc 101
4.5 文档项类CDocItem 102
4.6 OLE包装程序接口类COleClientItem 103
4.7 活动文栏类COleDoCObjectItem 111
4.8 CRichEditCntrItem 112
4.9 OLE服务器程序接类COleServerItem 113
4.10 文档对象服务项类CDocObjectServerItemItem 118
4.11 文档对象服务类CDocObjectServer 119
4.12 综合实例 121
实例1——OLE服务器 121
实例2——OLE容器 123
第5章 框架相关类 126
5.1 框架窗口类CFrameWnd 126
5.2 多文档界面窗口类CMDIChildWnd 131
5.3 多文档界面框架类CMDIFrameWnd 133
5.4 最小框架窗口类CMiniFrameWnd 136
5.5 编辑窗口类COleIPFrameWnd 137
5.6 分隔器窗口类CSplitterWnd 139
5.7 综合实例 142
实例1——多文档界面 142
实例2——窗口风格 146
第6章 控制条相关类 152
6.1 控制条相关类 CControlBar 152
6.2 对话框条相关类 CDialogBar 155
6.3 ReBar控制相关类 CReBar 157
6.4 状态条相关类CStatusBar 159
6.5 工具条相关类 CToolBar 164
6.6 综合实例——可以自己订制的工具条 167
第7章 属性单相关类 175
7.1 属性单类CPropertySheet 175
7.2 属性单扩展类CPropertySheetEx 182
7.3 综合实例——使子窗口带有属性单 186
8.1 对话框类CDialog 189
第8章 对话框类 189
8.2 通用对话框类CCommonDialog 196
8.3 颜色对话框类CColorDialog 197
8.4 文件对话框类CFileDialog 200
8.5 查找替换对话框CFindReplaceDialog 205
8.6 字体对话框类CFontDialog 209
8.7 对话框类CPropertyPage 214
8.8 属性页扩展类CPropertyPageEx 219
8.9 综合实例——一个动画对话框 221
第9章 视图相关类 230
9.1 视图类CView 230
9.2 控制视图类CCtrlView 235
9.3 编辑视图类CEditView 236
9.4 视图菜单类CListView 239
9.5 带格式编辑控件视图类CRichEditView 240
9.6 树视图类CTreeView 244
9.7 滚动条类CScrollView 245
9.8 表单类CFormView 248
9.9 数据库记录类CDaoRecordView 249
9.10 网页视图类CHtmlView 251
9.11 Ole数据库记录视图类COleDbRecordView 258
9.12 记录视图类CRecordView 260
9.13 综合实例 262
实例1——滚动视图 262
实例2——窗体视图 264
实例3——列表视图 267
实例4——动态分割一个视图 269
第10章 控件类 272
10.1 动画控件类CAnimateCtrl 272
10.2 按钮类CButton 275
10.3 位图按钮类CBitrmapButton 278
10.4 组合框类CComboBox 280
10.5 扩展组合框类CComboBoxEx 290
10.6 时间日期类CDateTimeCtrl 291
10.7 编辑框类CEdit 295
10.8 眉控件类CHeaderCtrl 300
10.9 热键控件类CHotKeyCtrl 304
10.10 IP地址类CIPAddRESSCtrl 306
10.11 列表框类CListBox 308
10.12 复选列表框类CCheckListBox 319
10.13 拖放列表类CDragListBox 322
10.14 列表视图控件类CListaCtrl 325
10.15 月历控件类CMonthCalCtrl 331
10.16 OLE控制类COleControl 334
10.17 进度条控件类CProgressCtrl 342
10.18 Rebar控制类CRebarCtrl 343
10.19 RichEdit控件类CRichEditCtrl 346
10.20 滚动条类CScrollBar 351
10.21 滑动杆类CSliderCtrl 353
10.22 微调按钮控件类CSpinButtonCtrl 356
10.23 静态文本控制类CStatic 358
10.24 状态条控制类CStatusBarCtrl 359
10.25 切换控制类CTabCtrl 361
10.26 工具条控制类CToolBarCtrl 364
10.27 工具提示类CToolTipCtrl 379
10.28 树型控件类CTreeCtrl 386
10.29 综合实例——WindowsXP风格的按钮 397
第11章 异常类 407
11.1 异常类CException 407
11.2 串行化异常类CArchiveException 409
11.3 DAO数据库异常类CDaoException 410
11.4 数据库异常类CDBException 413
11.5 文件异常类CFileException 415
11.6 网络异常类CIntemetException 417
11.7 内存异常类CMemoryException 418
11.8 不支持异常类CNotSupportedExceptiln 419
11.10 OLE界面异常类COleDispatchException 420
11.9 OLE异常类COleException 420
11.11 资源异常类CResourceException 421
11.12 用户端异常类CUserException 422
11.13 综合实例——调试和异常处理 423
第12章 文件类以及文件管理类 426
12.1 文件类CFile 426
12.2 驻留文件类CMemFile 432
12.3 共享文件类CSharedFile 434
12.4 数据流操作类COleStreamFile 436
12.5 数据流类CMonikerFile 438
12.6 异步标志类CAsynCMonikerFile类 439
12.7 异步特性类CDataPathProperty 442
12.8 控件属性类CCachedDataPathProperty 444
12.9 CSocketFile类 445
12.10 流式文件类CStdioFile 446
12.11 网络文件类CInternetFile 448
12.12 Gopher文件类CGopherFile 451
12.13 http文件类CHttpFile 452
12.14 当前文件列表类CRecentFileList 456
12.15 综合实例 458
实例1——访问二进制文件 458
实例2——访问标准I/O文件 459
实例3——访问内存文件 460
第13章 绘制图像相关类 462
13.1 设备上下文类CDC 462
13.2 客户区设备上下文类CClientDC 475
13.3 元文件设备上下文类CMetaFileDC 476
13.4 绘制设备上下文类CPaintDC 479
13.5 窗口设备上下文类CWindowDC 480
13.6 停靠状态类CDockState 481
13.7 图像表类CImageList 483
10.8 图形对象类CGdiObject 491
13.9 位图类CBitmap 495
13.10 画刷类CBrush 499
13.11 字体类CFont 503
13.12 调色板类CPalette 509
13.13 画笔类CPen 513
13.14 区域类CRgn 516
13.15 菜单类CMenu 524
13.16 命令行信息类CCommandLineInfo 533
13.17 综合实例 536
14.1 数据库连接类CDaoDatabase 544
第14章 数据库类 544
14.2 查询定义的类CDaoQueryDef 547
14.3 类CDaoRecordset 550
14.4 数据库的工作管理类CDaoWorkspace 576
14.5 连接数据源的对象CDatabase 579
14.6 数据库中的记录类CRecordSet 585
14.7 应用示例 611
15.1 字体的封装类CFontHolder 628
第15章 OLE相关类 628
15.2 CURRENCY结构的封装类COliCurrency 630
15.3 VARIANT结构的封装类COleVarient 633
15.4 客户端OLE自动化的执行类COleDispatchDriver 638
15.5 应用示例 638
第16章 简单数据类 649
16.1 创建文档视图的类CCreateContext 649
16.2 内存泄漏检测类CMemoryState 649
16.3 OLE的变量独立数组类COleSafeArray 651
16.4 绘图用的坐标点类CPoint 656
16.5 打印作业的信息类CPrintInfo 657
16.6 绘图用的矩形类CRect 660
16.7 绘图用的尺寸类CSize 665
16.8 字符串类CString 666
16.9 绝对时间类CTime 682
16.10 相对时间类CTimeSpan 685
16.11 应用示例 687
17.1 数组类CArray 696
第17章 基本数据结构类 696
17.2 动态字节数组类CByteArray 697
17.3 双字数组类CDWordArray 698
17.4 指针数组类CObArray 698
17.5 指针数组类CPtrArray 702
17.6 数据对象数组类CStringArray 702
17.7 无符号整数数组类CUIntAray 703
17.9 列表类CList 704
17.8 字数组类CWordArray 704
17.10 指针列表类CPtrList 705
17.11 指针列表类CObList 706
17.12 数据对象列表类CStringList 709
17.13 映射类CMap 710
17.14 字节映射指针类CMapWordToPtr 712
17.15 指针映射字节类CMapPtrToWord 713
17.17 数据对象映射指针类CMapStringToPtr 714
17.16 指针映射指针类CMapPtrToptr 714
17.18 字典收集类CMapStringToOb 715
17.19 指针映射指针类CMapStringToString 715
17.20 综合实例 716
实例1——数组函数 716
实例2——列表函数 718
实例3——映射函数 719
第18章 套接字和网络相关类 721
18.1 网络通信类CAsyncSocKet 721
18.2 文件查找类CFileFIND 726
18.3 网络服务器的连接管理类CFtptConnection 730
18.4 FTP文件查找类CFtpFileFind 734
18.5 Gopher服务器的连接管理类CGopherConnection 735
18.6 Gohper文件查找类CGopherFileFind 737
18.7 Gopher服务器的定位类CGopherLocator 739
18.8 WWW服务器的连接管理类CHttpConnectionon 740
18.9 网络服务器的连接管理类CInternetConnection 742
18.10 网络连接描述类CIntemetSession 743
18.11 封装Windows Socket的类CSocket 748
18.12 应用示例 750
第19章 同步化类 790
19.1 基于临界区的同步对象类CCriticalSection 790
19.2 一种基于事件的同步对象类CEvent 791
19.3 基于同步对象的类CMutex 793
19.4 一种基于信号的同步对象CSemaphore 794
19.5 基于同步对象的新基类CSyncObject 795
19.6 应用示例 797
第20章 网络服务API类 809
20.1 HTML记忆文件的管理类CHtmlStream 809
20.2 超链接对象的管理类CHttpFilter 813
20.3 CHttpFilter对象的工具类CHttpFilterContext 817
20.4 HTTP服务器的功能扩展类CHttppServer 819
20.5 HTTP服务器的数据处理类CHttpServerContext 824
20.6 应用示例 828
第21章 支持类 834
21.1 菜单显示管理类CCmdUI 834
21.2 基于DAO的记录域交换类CDaoFieldExchange 836
21.3 数据交换类CDataExchange 837
21.4 ODBC的变量类CDBVariant 839
21.5 基于OLE的菜单管理类COleCmdUI 841
21.6 OLE的数据对象类COleDataObject 842
21.7 支持对象的显示、移动和大小改变的类CRectTracker 845
21.8 在线等待的光标类CWaitCursor 848
第22章 其他类 856
22.1 多个对象的资源访问控制类CMutiLock 856
22.2 单个对象的资源访问控制类CSingleLock 858
22.3 用户定义的数组模板类CTypedPtrArray 859
22.4 用户定义的链表模板类CTypedPtrList 861
22.5 用户定义的位图模板类CTypedPtrMap 863
22.6 应用示例 865