1 C++语言基础 1
1.1 类——数据和代码的完美结合 1
1.1.1 认识C++ 2
1.1.2 类的定义 4
1.1.3 四大基础函数 7
1.1.4 动态分配对象 10
1.2 函数和运算符的重载 10
1.2.1 函数重载 11
1.2.2 引用符号“ ”的使用 12
1.2.3 运算符重载 14
1.2.4 几个特殊操作符的重载 15
1.3.1 友元friend 17
1.3 类及成员的修饰 17
1.3.2 常量const 18
1.3.3 静态成员static 20
1.4 类的派生 21
1.4.1 受保护成员 22
1.4.2 虚函数 22
1.4.3 虚基类 25
1.4.4 构造和析构函数的继承 26
1.5 IO流类 27
1.5.1 使用文件IO类 27
1.5.2 格式转换设置 29
1.5.3 创建自己的插入符和提取符 30
1.5.4 创建操作符 31
1.5.5 基于内存缓冲区的输入与输出类 32
1.6.1 字符串类CString 33
1.6 MFC通用类 33
1.6.2 文件类 37
1.6.3 时间类 47
1.6.4 异常处理类 50
1.6.5 MFC的集合类 53
2 VC++6.0开发环境 59
2.1 AppWizard简述 60
2.1.1 应用AppWizard创建起始文件 61
2.1.2 应用工程结构 66
2.2 资源编辑器概述 67
2.3 加速键编辑器 71
2.4 二进制编辑器 74
2.5 对话框编辑器 75
2.5.1 在对话框中增加控件 76
2.5.2 改变控件的大小 77
2.5.3 格式化对话框的布局 78
2.5.4 边界和向导 79
2.5.5 改变Tab顺序 80
2.5.6 定义记忆键 81
2.5.7 测试对话框 82
2.6 图形编辑器 82
2.6.1 图形编辑窗口 83
2.6.2 颜色与调色板 84
2.6.3 编辑图形资源 86
2.7 菜单编辑器 90
2.8 字符串编辑器 92
2.9 工具条编辑器 94
2.10 版本信息编辑器 95
2.11 ClassWizard简介 96
2.12.1 把已有的类与资源相联系 100
2.12 ClassWizard在编程中的使用 100
2.12.2 将类引入到ClassWizard中 102
2.12.3 引用类库中的元素 102
2.12.4 增加成员函数和成员变量 103
2.13 更新ClassWizard 104
2.14 使用对话框数据 105
2.15 ClassWizard的数据库支持 108
2.15.1 MFC支持的数据库 108
2.15.2 创建一个记录集类 109
2.15.3 把记录集域映射到表的列中 110
2.15.4 创建数据库格式化视图 112
2.15.6 ClassWizard与外来对象 113
2.15.5 实现格式化视图控件到记录集域的映射 113
3 MFC应用程序框架类 115
3.1 几个基类 116
3.2 窗口基类CWnd 119
3.3 CWinApp类 134
3.4 CFrameWnd类 139
3.4.1 CFrameWnd类的方法 140
3.4.2 CMDIFrameWnd类 141
3.4.3 CChildFrame子框架类 144
3.5 CDocument类 146
3.6 CView类 151
3.6.1 CView类的方法 153
3.6.2 CScrollView类 155
3.6.4 CRichEditView类 157
3.6.3 CFomaView类 157
3.7 文档模板 160
3.8 MFC的消息处理模式 162
3.8.1 使用ClassWizard进行消息处理 171
3.8.2 MFC实现消息映射的方法 174
3.8.3 预定义的消息映射 175
3.8.4 其他Windows消息 175
3.8.5 控件通知 176
3.8.6 消息预处理函数 177
4 GDI绘图 178
4.1 用于GDI结构的类 178
4.2 CDC类 181
4.3 CPen类 198
4.5 CFont类 200
4.4 CBrush类 200
4.6 CBitmap类 202
4.7 CPalette类 203
4.8 CDC编程举例 204
4.9 打印处理 206
5 应用程序框架资源 211
5.1 菜单的使用 211
5.1.1 增加一个新菜单 211
5.1.2 更新菜单按钮 212
5.1.3 弹出式菜单 214
5.1.4 动态创建菜单 215
5.1.5 改变菜单项的状态 215
5.1.6 为菜单项添加位图 216
5.1.7 定制菜单 217
5.2 状态条 220
5.3 增加工具条 222
5.3.1 改变工具条风格与属性 223
5.3.2 在工具条上增加下拉箭头 224
5.3.3 在工具条上增加控件 226
5.3.4 定制工具条 228
5.4 使用对话条 231
5.5 改变框架的特征 233
5.6 在框架中增加分割线 237
5.7 创建软件封面 238
5.8 软件启动时显示小提示(Tip Of the day) 243
5.9 Windows扩展外壳 244
5.9.1 任务栏按钮 244
5.9.2 系统信息区 244
5.9.3 桌面工具条(AppBar) 246
5.10.1 加载执行其他程序 249
5.10 控制程序的执行 249
5.10.2 避免重复执行 251
6 对话框和控件 253
6.1 创建新的对话框 253
6.2 CDialog类的方法 256
6.3 为控件增加成员变量 257
6.4 无模式对话框 261
6.5 Windows控件和MFC控件类 264
6.5.1 Edit控件与CEdit类 264
6.5.2 CStatic类 266
6.5.3 Button控件与CButton类 266
6.5.4 滚动条和CScrollBar类 268
6.5.5 CListBox类和CComboBox类 269
6.5.6 进度条控件与CProgressCtrl类 270
6.5.7 Spin控件 272
6.5.8 Slider控件 273
6.5.9 Animate控件 274
6.5.10 List控件与CListCtrl类 275
6.5.11 Tree控件与CTreeCtrl类 279
6.6 创建属性表 283
6.6.1 建立属性页 284
6.6.2 创建属性表 284
6.6.3 应用按钮的使用 285
6.6.4 CPropertySheet类的方法 286
6.7 Windows通用对话框 287
6.7.1 文件选择对话框与CFileDialog类 287
6.7.2 打印对话框与CPrintDialog类 291
6.7.3 页面设置对话框与CPageSetupDialog类 292
6.7.4 颜色选择对话框与CColorDialog类 295
6.7.5 字体选择对话框与CFontDialog类 296
6.7.6 查找和替换对话框与CFindAndReplace类 297
6.7.7 OLE通用对话框 300
6.8 数据交换(DDX) 300
6.9 定制通用对话框 302
6.10 设置对话框的底色及控件的颜色 306
6.11 给控件增加小提示(ToolTip) 306
7 高级编程技术 308
7.1 动态链接库 308
7.1.1 创建DLL 308
7.1.2 增加一个导出函数 309
7.1.3 链接DLL 311
7.1.4 使用MFC DLL的实例 312
7.2.1 工作线程与用户界面线程 318
7.2 多线程编程技术 318
7.2.2 线程管理 319
7.2.3 线程同步 320
7.2.4 多线程编程举例 322
7.3 内存管理技术 326
7.3.1 访问内存的函数 326
7.3.2 内存诊断函数 327
7.3.3 内存映像文件 328
8 ActiveX编程 334
8.1 ActiveX服务器 336
8.1.1 使用MFC设计自动化服务器 336
8.1.2 实现自己的服务器 339
8.1.3 为服务器增加方法 341
8.1.4 使用ActiveX模板库设计自动化服务器 343
8.2 ActiveX控件的创建 346
8.3 为控件增加属性 356
8.4 为控件添加方法 363
8.5 为控件增加事件 364
8.6 测试控件 365
8.7 使用库存的控件 367
8.8 ActiveX控件使用实例 369
9 网络、多媒体和数据库 372
9.1 Win32网络编程 372
9.1.1 WinSock的使用 373
9.1.2 客户机编程 374
9.1.3 服务器编程 376
9.1.4 异步传输模式编程 378
9.1.5 MFC的套接字类 381
9.2 WinInet API编程 384
9.2.1 基本Internet函数 385
9.2.2 HTTP函数 389
9.2.3 FIP函数 391
9.2.4 Gopher客户机函数 392
9.2.5 MFC WinInet类 393
9.3 多媒体编程接口 398
9.3.1 简单的声音播放函数 398
9.3.2 MCIWnd多媒体窗口类 400
9.4 ODBC体系结构和驱动程序 403
9.5 MFC数据库类 408
9.6 CRecordSet类的使用 410
9.7 CDatabase类 412
10.1.1 注册表键和注册表值 417
10.1 使用注册表 417
10 开发完整的应用软件包 417
10.1.2 注册表的结构 418
10.1.3 编辑注册表 419
10.1.4 注册表高级应用 423
10.2 编写Windows帮助文档 423
10.2.1 Help项目的生成 424
10.2.2 帮助目录的生成 425
10.2.3 帮助主题文件.rtf的编写 425
10.2.4 使用帮助 427
10.3 CHM类型帮助 427
10.4 安装与卸载程序 428
10.4.1 创建安装项目 428
10.4.2 卸载程序 433