第1章 VisualC+++6.0的界面 3
1.1 集成开发环境的基本外观及其操作 4
1.1.1 正文窗口及其操作 4
1.1.2 Workspace窗口及其操作 5
1.2 Visual C+++6.0集成开发环境的菜单功能 6
1.1.1 File菜单 6
1.2.2 Edit菜单 7
1.2.3 View菜单 8
1.2.4 Insert菜单 9
1.2.5 Project菜单 9
1.2.6 Build菜单 10
1.2.7 Tool菜单 11
1.2.8 Window菜单 12
1.2.9 Help菜单 13
1.3.1 工具栏基本概念 14
1.3.2 工具栏的显示与隐藏 14
1.3 Visual C+++6.0的工具栏 14
1.3.3 工具栏的定制及修改 15
1.4 本章小结 17
第2章 C+++编程基础 19
2.1 C+++的优点 20
2.1.1 封装性 20
2.1.2 继承性 21
2.1.3 多态性 22
2.2 类说明 26
2.3 构造函数 28
2.4 析构函数 28
2.5 虚函数 29
2.6 友元函数 30
2.7 运算符重载 31
2.8 静态变量 33
2.9 Windows编程规范 35
2.10 本章小结 36
第3章 MFC的层次结构 37
3.2 应用程序框架结构类 38
3.1 Microsoft基本类库概述 38
3.2.1 应用和线程支持类 39
3.2.2 命令发送类 39
3.2.3 文档类 39
3.2.4 文档模板类 40
3.3 窗口类 40
3.3.1 窗口支持类 41
3.3.2 框架窗口类 41
3.3.3 对话框类 43
3.3.4 视图类 44
3.3.5 控件类 44
3.3.6 控制栏类 46
3.3.7 分割窗口支持类和属性簿 46
3.4.1 输出类 47
3.4.2 图形工具类 47
3.4 图形和打印类 47
3.5 集合类 48
3.6 文件和数据库类 49
3.6.1 文件输入输出类 49
3.6.2 ODBC类 50
3.6.3 DAO类 50
3.7.2 OLE侍者类 51
3.7.1 OLE容器类 51
3.7 OLE支持类 51
3.6.4 文件和数据库类的相关类 51
3.7.3 OLE拖-放和数据传送类 52
3.7.4 OLE公用对话框类 52
3.7.5 OLE自动化类 53
3.7.6 OLE控制类 53
3.7.7 Active文档类 54
3.7.8 与OLE相关的类 54
3.8 Internet和网络类 54
3.8.2 Windows Sockets类 55
3.8.3 Win32 Internet类 55
3.8.1 ISAPI类 55
3.9 调试和异常类 56
3.9.1 调试支持类 56
3.9.2 异常类 56
3.10 各种辅助类 57
3.11 总论 58
3.12 本章小结 58
第4章 APPWizard的使用 61
4.1 AppWizard的启动 62
4.1.1 Files选项卡 62
4.1.2 Projects选项卡 63
4.1.3 Workspaces选项卡 64
4.1.4 Other Documents选项卡 65
4.2 使用MFC AppWizard生成应用程序 65
4.2.1 步骤1 65
4.2.2 步骤2 67
4.2.3 步骤3 69
4.2.4 步骤4 70
4.2.5 步骤5 73
4.2.6 步骤6 74
4.3 应用程序框架说明 75
4.3.1 文件说明 75
4.3.2 类的说明 76
4.4 本章小结 78
第5章 MFC应用程序框架 79
5.1 最简单的应用程序——“Hello World!” 80
5.2 带文档-视图结构的应用 81
5.2.1 应用对象 82
5.2.2 文档模板 87
5.2.3 主框架窗口对象 88
5.2.4 文档对象 92
5.2.5 视图对象 95
5.2.6 子框架窗口类 98
5.2.7 单文档应用程序框架 100
5.3 本章小结 102
第6章 用ClassWizard设计类 103
6.1 如何启动ClassWizard应用程序 104
6.2 Message Maps选项卡 104
6.3 Member Variables选项卡 105
6.4 Automation选项卡 106
6.5 ActiveX Events选项卡 107
6.6 Class Info选项卡 108
6.7.1 AppWizard生成的视图类 109
6.7 如何往视图类中加入成员函数 109
6.7.2 加进成员函数 110
6.7.3 按要求对代码进行修改 115
6.8 如何往工程中添加新类 116
6.9 本章小结 117
第7章 文档-视图结构 119
7.1 文档和视图之间的相互作用函数 120
7.1.1 CView类的GetDocument()函数 120
7.1.4 CView类的OnInitialUpdate()函数 121
7.1.3 CView类的OnUpdate()函数 121
7.1.2 CDocument类的UpdateAllView()函数 121
7.1.5 CDocument类的DeleteContens()函数 122
7.2 简单的文档-视图应用程序 122
7.3 Ex07a例子程序 122
7.4 更加高级的文档-视图之间的相互作用 127
7.5 Ex07b例子程序 128
7.6 本章小结 134
第8章 菜单、工具栏和状态栏 135
8.1.1 利用AppWizard定义菜单 136
8.1 菜单 136
8.1.2 在应用程序中包含菜单 137
8.1.3 菜单的消息处理 137
8.1.4 在应用程序中控制菜单 139
8.2 工具栏 142
8.2.1 建立工具栏 143
8.2.2 工具栏的成员函数 144
8.2.3 工具栏的相关函数 146
8.2.4 改变工具栏的命令按钮风格 147
8.2.5 在工具栏中嵌入组合框 148
8.3 状态栏 149
8.3.1 创建状态栏 149
8.3.2 CStatusBar类的成员函数 150
8.3.3 在状态栏中显示当前时间 151
8.4 本章小结 153
第9章 输入、输出及打印 155
9.1 输入消息及其处理函数 156
9.1.1 键盘消息 156
9.1.2 鼠标消息 158
9.1.3 字符消息 159
9.1.4 计时器消息 159
9.2 图形设备接口 162
9.2.1 设备描述表和显示描述表 162
9.2.2 绘图工具 163
9.2.3 映射模式 172
9.2.4 基本文本输出 173
9.2.5 基本绘图函数 176
9.3 打印及打印预览 179
9.3.1 打印信息 179
9.3.2 默认打印流程 181
9.3.3 增强打印能力 187
9.3.4 打印预览 189
9.4 本章小结 192
第10章 对话框 193
10.1.2 对话框的分类 194
10.1.3 对话框的常用函数 194
10.1 对话框概述 194
10.1.1 对话框的应用 194
10.1.4 对话框的显示 195
10.2 对话框的应用实例 195
10.2.1 应用程序概貌 195
10.2.2 应用程序框架的生成及对话框类的添加 196
10.2.3 对话框数据的存取 201
10.2.4 对话框在程序中的使用 202
10.2.5 程序的最后完成 206
10.3 常用对话框简介 207
10.4 本章小结 210
第11章 常用控件 211
11.1 控件概述 212
11.2 静态控件和按钮控件 213
11.2.1 静态控件 213
11.2.2 按钮控件 213
11.3 滚动条 213
11.4 列表框 214
11.5 编辑控件 215
11.6 组合框 216
11.6.1 组合框的风格与类型 216
11.6.2 组合框控件类 217
11.7 常用控件应用程序实例 218
11.7.1 应用程序功能设计 218
11.7.2 对话框的编辑 219
11.8 本章小结 229
第12章 高级控件 231
12.1 标签控件 232
12.1.1 标签控件实现 232
12.1.2 CTabCtrl类 235
12.2 动画控件 237
12.3 进度控件 239
12.4.1 数字滚选按钮控件实例 241
12.4 数字滚选按钮控件 241
12.4.2 CSpinButtonCtrl类 243
12.5 树控件 243
12.5.1 TV ITEM结构 244
12.5.2 TV INSERTSTRUCT结构 245
12.5.3 生成树结构 245
12.5.4 CTreeCtrl类 248
12.6 日期时间控件和日历控件 250
12.7 本章小结 251
第13章 文件存取 253
13.1 文件的访问 254
13.1.1 CFile类的功能 254
13.1.2 打开文件 255
13.1.3 文件访问和共享标志 257
13.1.4 存取数据 257
13.1.5 关闭文件 258
13.2 随机文件访问 258
13.3 序列化 260
13.4 CArchive类 260
13.5 本章小结 262
第14章 HTML帮助文件的制作 263
14.1 普通帮助文件的制作 264
14.1.1 怎样制作帮助文件 264
14.1.2 RTF文件的制作 265
14.1.3 帮助文件的编译 267
14.2.1 联机帮助的形式 269
14.2 Visual C+++的帮助机制 269
14.2.2 不需要任何编程的帮助 270
14.2.3 联机帮助的机理 270
14.2.4 联机帮助的例子 271
14.3 HTML文件的制作 272
14.4 HTML帮助文件的制作 273
14.4.1 创建HTML帮助工程 273
14.4.2 在工程文件中添加Contents 275
14.4.3 在工程文件中添加Index项 278
14.4.4 设置起始显示页面 279
14.4.5 编译和查看 280
14.5 在应用程序中调用HTML帮助文件 280
14.6 在Visual C+++6.0应用程序中实现联机帮助的调用 281
14.7 本章小结 284
第15章 与数据库的连接 285
15.1 了解数据库 286
15.2 ODBC以及MFC的ODBC类 286
15.3 建立并登录数据源 287
15.4 生成数据库应用程序 289
15.5 数据库应用程序的结构 290
15.5.1 CEx15aSet 290
15.5.2 CEx15aDoc 291
15.5.3 CEx15aView 291
15.6 为CEx15aView的对话框资源添加控件 292
15.7 运行 293
15.8 进一步了解CRecordset 295
15.9 增加和删除记录 296
15.9.1 增加记录 297
15.9.2 删除记录 299
15.10 本章小结 299
第16章 多线程及其实现 301
16.1 多线程的概念 302
16.2 Visual C+++中的多线程 302
16.3 如何使用MFC实现工作者线程 303
16.4.1 用户界面线程的实现 304
16.4 如何使用MFC实现用户界面线程 304
16.4.2 控制用户界面线程的途径 309
16.5 同步对象 311
16.5.1 同步的概念 311
16.5.2 同步对象 312
16.5.3 MFC封装 318
16.5.4 怎样选择同步对象 320
16.6 多线程的应用实例 320
16.7 本章小结 321
第17章 AcitveX控件的设计与应用 323
17.1 ActiveX简介 324
17.2 ActiveX控件 324
17.3 ActiveX控件的设计 325
17.4 创建包含ActiveX控件的MFC应用程序 336
17.5 ActiveX控件的使用 338
17.6 本章小结 341
附录A VisualC+++6.0新增功能简介 342
附录B MFC类库简明参考 345