第1章 Visual C++程序的建立 1
1.1 C程序和C++程序 1
1.2 面向对象的编程技术 4
1.2.1 类与对象 4
1.2.2 类及其成员变量、成员函数的声明和定义 5
1.2.3 构造函数和析构函数 7
1.2.4 类的继承 9
1.2.5 C++在非面向对象方面的扩充 12
1.3 Visual C++程序 16
1.4 使用MFC AppWizard应用程序向导 18
1.4.1 应用程序框架类型 18
1.4.2 用MFC AppWizard(exe)创建一个单文档的应用程序 19
1.4.3 项目工作区 23
1.4.4 输出窗口 26
1.5 ClassWizard类向导 26
1.5.1 ClassWizard的使用 26
1.5.2 消息和消息映射 27
1.5.3 消息映射方法实例 32
1.6 章后实训 41
实训1 键盘字符输入,并使输入的文本居中 41
实训2 向窗口添加一个闪亮的插入符 44
实训3 制作一个每次单击窗口都出现不同鼠标光标图形的程序 46
附:类的添加和删除 48
第2章 菜单、工具栏和状态栏的设计 51
2.1 设计菜单 51
2.1.1 用编辑器设计菜单 51
2.1.2 菜单的编程控制 58
2.1.3 使用快捷菜单 62
2.2 工具栏 65
2.2.1 使用工具栏编辑器 65
2.2.2 多个工具栏的使用 67
2.3 状态栏 72
2.3.1 状态栏的定义 72
2.3.2 状态栏的常用操作 73
2.4 交互对象的动态更新 78
2.5 章后实训 80
实训1 通用菜单 80
实训2 多信息状态栏 86
实训3 自定义工具条 93
第3章 对话框与控件 96
3.1 对话框的使用 96
3.2 资源与资源标识 98
3.3 创建对话框及添加控件 100
3.4 控件的创建和使用方法 106
3.4.1 控件的创建方法 107
3.4.2 基于对话框的应用程序 108
3.4.3 控件的消息及消息映射 109
3.4.4 控件的数据交换和数据效验 112
3.4.5 控件的通用属性 115
3.5 常用控件 115
3.5.1 静态控件 117
3.5.2 按钮控件 118
3.5.3 编辑框控件 127
3.5.4 列表框 134
3.5.5 组合框 141
3.5.6 旋转按钮控件 146
3.5.7 进展条 152
3.5.8 滚动条 159
3.5.9 滑动条 164
3.6 标签控件、图像列表、属性表及属性页 170
3.6.1 标签控件 170
3.6.2 图像列表控件 176
3.6.3 属性表及属性页 177
3.7 向导对话框 180
3.8 设置对话框和控件的背景颜色以及在控件上绘图 183
3.9 菜单对话框 186
3.10 通用对话框和消息对话框 187
3.10.1 通用对话框 187
3.10.2 消息对话框 189
3.11 章后实训 191
实训1 计算器应用程序 191
实训2 对话框与控件的综合运用 198
实训3 更改字体设置 203
第4章 窗口、文档和视图 208
4.1 主窗口和文档窗口 208
4.2 改变窗口的状态 214
4.2.1 用ShowWindow改变窗口的显示状态 214
4.2.2 用SetWindowPos或MoveWindow改变窗口的大小和位置 216
4.3 文档串行化 217
4.3.1 文档串行化过程 217
4.3.2 文档串行化操作 221
4.3.3 文档模板字串资源 227
4.4 使用简单数组集合类 228
4.4.1 应用实例 228
4.4.2 关于数组集合类 233
4.5 CFile类 233
4.5.1 应用举例 233
4.5.2 文件的打开和关闭 235
4.5.3 文件的读、写和定位操作 236
4.5.4 文件的管理操作 237
4.6 不同视图的应用 239
4.6.1 CEditView类 239
4.6.2 CRichEditView类 240
4.6.3 使用CFormView类 240
4.6.4 CHtmlView类的应用 243
4.6.5 CScrollView类 249
4.6.6 列表控件和列表视图 252
4.6.7 树控件 262
4.6.8 多视图 274
4.6.9 文档视图结构 283
4.7 章后实训 295
实训1 学生档案管理 295
实训2 编制一个拆分两个窗口的程序 311
实训3 实现对HTML文件的显示 314
第5章 图形绘制 322
5.1 设备环境与设备环境类 322
5.1.1 设备环境 322
5.1.2 设备环境类 322
5.2 绘图程序 323
5.2.1 CDC基类 323
5.2.2 CPaintDC类 324
5.2.3 CClientDC类 325
5.3 图形设备接口对象 325
5.3.1 画笔CPen类 327
5.3.2 画刷CBrush类 328
5.4 坐标映射 330
5.5 CPoint、CSize和CRect 332
5.6 颜色和颜色对话框 336
5.7 多种图形的绘制 343
5.8 字体CFont类 348
5.9 位图、图标与光标 358
5.9.1 使用图形编辑器 359
5.9.2 位图 361
5.9.3 图标 363
5.9.4 光标 368
5.10 章后实训 372
实训1 对图像进行局部放大程序 372
实训2 在屏幕上画图形程序 375
实训3 调色板程序 377
第6章 数据库应用 379
6.1 数据库、DBMS和SQL 379
6.2 MFC的ODBC编程技术 380
6.2.1 设计数据库 380
6.2.2 创建ODBC的数据源 382
6.2.3 在MFC AppWizard中选择数据源 383
6.2.4 设计浏览记录界面 385
6.2.5 ODBC数据表绑定更新(改变与m_pSet关联的表) 386
6.3 MFC的ODBC应用编程 387
6.3.1 显示记录总数和当前记录号 388
6.3.2 查询记录 389
6.3.3 编辑记录 391
6.3.4 处理多个表 394
6.4 数据库相关的ActiveX控件 406
6.4.1 使用MSFlexGrid控件 406
6.4.2 RemoteData和DBGrid控件 409
6.5 字段操作 411
6.6 章后实训 417
实训1 使用ADO预处理指令(#import)编程 418
实训2 用ADO数据库完成对数据表unicom的显示 425
实训3 DAO数据库编程 433
第7章 多媒体技术 438
7.1 使用MCI播放WAVE文件的程序实例 438
7.2 MCI 440
7.2.1 MFC设备类型 440
7.2.2 MCI命令与函数 440
7.3 MCI编程步骤 443
7.4 使用MCIWnd窗口类 445
7.5 章后实训 450
实训1 实现视频和多媒体文件操作 450
实训2 制作一个可以播放Mid音乐的应用程序 452
实训3 媒体播放程序 454
附录1 在工具栏上设计“打开”和“另存为”按钮 460
附录2 Midi.h和Midi.cpp文件 463