内容简介
第1章 Visual C++开发环境
1.1 集成开发环境窗口
1.2 AppWizard与ClassWizard
1.2.1 应用程序向导App Wizard
1.2.2 类向导ClassWizard
1.3 项目与项目工作区
1.3.1 项目
1.3.2 项目工作区
1.4 集成开发环境的菜单栏
1.4.1 File菜单
1.4.2 Edit菜单
1.4.3 View菜单
1.4.4 Insert菜单
1.4.5 Project菜单
1.4.6 Build菜单
1.4.7 Tools菜单
1.4.8 Window菜单
1.4.9 Help菜单
1.5 集成开发环境的工具栏
1.5.1 Standard工具栏
1.5.2 Build MiniBar工具栏
1.5.3 WizardBar工具栏
1.6 资源与资源编辑器
1.6.1 资源和资源符号
1.6.2 资源编辑器
习题
第2章 MFC应用程序概述
2.1 Windows应用程序概述
2.1.1 窗口
2.1.2 消息和事件
2.1.3 基本数据类型
2.1.4 句柄
2.2 MFC应用程序框架
2.2.1 创建MFC应用程序框架
2.2.2 MFC应用程序框架结构类
2.2.3 MFC应用程序的分析
2.2.4 文档/视图结构
2.3 消息映射与消息处理
2.3.1 消息的类别及其描述
2.3.2 MFC消息映射机制
2.3.3 自定义消息处理
2.4 程序调试
2.4.1 查找源程序中的语法错误
2.4.2 调试器
2.4.3 跟踪调试程序
2.4.4 MFC调试宏
2.4.5 Dump()调试函数
2.5 应用实例
2.5.1 实例简介
2.5.2 创建过程
习题
第3章 图形与文本
3.1 图形设备接口和设备环境
3.1.1 图形设备接口
3.1.2 设备环境
3.1.3 设备环境类
3.1.4 颜色的设置
3.1.5 获取设备环境
3.1.6 编程实例
3.2 GDI对象类CGdiObject
3.3 画笔和画刷的使用
3.3.1 使用库存对象
3.3.2 创建和使用自定义画笔
3.3.3 创建和使用自定义画刷
3.4 处理文本
3.4.1 设置文本显示属性
3.4.2 设置字体
3.4.3 格式化文本
3.4.4 常用文本输出函数
3.5 位图
3.5.1 设备相关位图和设备无关位图
3.5.2 位图操作函数
3.5.3 位图的显示
3.6 应用实例
3.6.1 实例简介
3.6.2 创建过程
习题
第4章 菜单、工具栏和状态栏
4.1 菜单
4.1.1 菜单的类型
4.1.2 编辑菜单
4.1.3 建立消息映射
4.1.4 菜单的有效控制
4.1.5 创建快捷菜单
4.1.6 动态创建菜单
4.1.7 创建基于对话框的菜单
4.2 工具栏
4.2.1 编辑工具栏
4.2.2 实现按钮功能
4.2.3 自定义工具栏
4.3 状态栏
4.3.1 状态栏类的继承关系
4.3.2 状态栏类的成员函数
4.3.3 状态栏操作
4.4 应用实例
4.4.1 实例简介
4.4.2 创建过程
习题
第5章 对话框
5.1 对话框概述
5.1.1 对话框的类型
5.1.2 对话框的CDialog类
5.1.3 对话框的组成
5.2 模态对话框
5.2.1 设计对话框模板资源
5.2.2 设计对话框类
5.2.3 运行对话框
5.2.4 对话框数据交换和校验机制
5.3 非模态对话框
5.3.1 非模态对话框的特点
5.3.2 窗口对象的自动清除
5.4 属性页对话框
5.5 通用对话框
5.5.1 CFileDialog类
5.5.2 CColorDialog类
5.5.3 CFontDialog类
5.5.4 CPrintDialog类和CPageSetupDialog类
5.5.5 CFindReplaceDialog类
5.6 应用实例
5.6.1 实例简介
5.6.2 创建过程
习题
第6章 Windows常用控件
6.1 控件概述
6.1.1 控件的创建
6.1.2 控件的组织
6.1.3 控件的共有属性
6.1.4 控件的访问
6.2 CStatic类控件
6.2.1 静态文本控件
6.2.2 图片控件
6.3 CEdit类控件
6.3.1 编辑框的风格
6.3.2 编辑框的基本操作
6.3.3 编辑框的通知消息
6.4 CButton类控件
6.4.1 概述
6.4.2 按钮控件的基本操作
6.4.3 按钮控件的通知消息
6.4.4 CBitmapButton类
6.5 CListBox类控件
6.5.1 列表框的风格
6.5.2 列表框的基本操作
6.5.3 列表框的通知消息
6.6 CComboBox类控件
6.6.1 组合框的属性
6.6.2 组合框的基本操作
6.6.3 组合框的通知消息
6.7 CSpinButtonCtrl类控件
6.7.1 旋转按钮控件常用的风格
6.7.2 旋转按钮控件的基本操作
6.7.3 旋转按钮控件的通知消息
6.8 CSliderCtrl类控件
6.8.1 滑动条的风格
6.8.2 滑动条的基本操作
6.8.3 滑动条的通知消息
6.9 CProgressCtrl类控件
6.9.1 进度条的创建
6.9.2 进度条的风格
6.9.3 进度条的基本操作
6.10 应用实例
6.10.1 实例简介
6.10.2 创建过程
习题
第7章 文档与视图
7.1 文档/视图结构
7.1.1 概述
7.1.2 文档与视图之间的相互作用
7.1.3 使用文档/视图结构的意义
7.2 简单的文档/视图结构应用程序
7.2.1 文档中数据的初始化
7.2.2 文档中数据的清理
7.2.3 简单的文档/视图结构应用程序
7.2.4 集合类的使用
7.3 文档的读写
7.3.1 MFC文档读写机制
7.3.2 MFC文档序列化
7.3.3 自定义可序列化的类
7.4 分割视图窗口
7.4.1 CSplitterWnd类
7.4.2 分割视图窗口的实现技术
7.5 多文档的应用程序
7.5.1 多文档应用程序的界面
7.5.2 多视图的应用程序
7.5.3 多类型的应用程序
7.6 应用实例
7.6.1 实例简介
7.6.2 创建过程
习题
第8章 打印编程
8.1 基本打印功能
8.1.1 打印原理
8.1.2 CPrintInfo类
8.1.3 打印过程
8.1.4 打印预览
8.2 设置打印坐标系
8.2.1 Windows映射模式
8.2.2 映射模式的设置
8.3 多页打印
8.3.1 默认打印存在的不足
8.3.2 实现多页打印功能
8.4 高级打印
8.4.1 页眉和页脚
8.4.2 设置页边距
习题
第9章 动态链接库编程
9.1 概述
9.1.1 动态链接库的概念
9.1.2 动态链接库和静态链接库的区别
9.1.3 使用动态链接库的优点
9.1.4 DLL文件的存放位置
9.1.5 动态链接库的分类
9.2 创建MFC DLL
9.2.1 使用DEF文件
9.2.2 使用关键字_declspec(dllexport)
9.2.3 两种导出函数方法的比较
9.3 使用MFC DLL
9.3.1 使用隐式链接
9.3.2 使用显式链接
9.4 MFC扩展DLL
9.4.1 创建MFC扩展DLL
9.4.2 使用MFC扩展DLL
习题
第10章 多线程编程
10.1 概述
10.1.1 问题的提出
10.1.2 进程和线程
10.1.3 MFC对多线程编程的支持
10.2 线程的创建
10.2.1 创建工作者线程
10.2.2 创建用户界面线程
10.3 线程的控制
10.3.1 终止一个线程
10.3.2 悬挂和恢复线程
10.3.3 线程的优先级
10.4 线程间的通信
10.4.1 使用全局变量进行通信
10.4.2 使用自定义消息进行通信
10.5 线程间的同步
10.5.1 使用CCriticalSection类
10.5.2 使用CMutex类
10.5.3 使用CSemaphore类
10.5.4 使用CEvent类
习题
第11章 数据库编程
11.1 概述
11.1.1 数据库和数据库管理系统
11.1.2 关系数据库
11.1.3 SQL语言
11.1.4 Visual C++中访问数据库的相关技术
11.2 ODBC技术
11.2.1 ODBC概述
11.2.2 MFC ODBC数据库类
11.2.3 CRecordset类
11.3 创建MFC ODBC数据库应用程序
11.3.1 准备数据库
11.3.2 注册数据源
11.3.3 创建应用程序框架
11.3.4 实现数据库程序的基本功能
11.3.5 实现数据库程序的高级功能
11.4 ADO技术
11.4.1 ADO访问数据源的特点
11.4.2 ADO的结构
11.4.3 ADO常用对象
11.4.4 _bstr_t和_variant_t类
11.4.5 在Visual C++中使用ADO
11.5 ADO数据库应用实例
11.5.1 实例简介
11.5.2 创建过程
习题
第12章 多媒体编程
12.1 多媒体程序设计基础
12.1.1 多媒体程序设计的原理
12.1.2 多媒体数据格式
12.2 Windows的多媒体服务
12.2.1 高级音频函数
12.2.2 媒体控制接口
12.2.3 MCIWnd窗口类
12.3 ActiveX控件
12.3.1 ActiveX控件简介
12.3.2 ActiveX控件的使用
12.3.3 使用ActiveMovie控件的播放器
习题
第13章 综合应用实例
13.1 功能描述
13.2 系统分析
13.2.1 实例分析
13.2.2 计算机的决策方式
13.3 数据结构设计
13.3.1 CManager类
13.3.2 CStatus类
13.3.3 CChess类
13.3.4 CPlayer类
13.3.5 CComputer类
13.4 系统详细设计
13.4.1 项目创建
13.4.2 界面设计
13.4.3 资源编辑
13.4.4 棋盘的定位及显示
13.4.5 成员的添加与初始化
13.4.6 光标类型的切换
13.4.7 游戏设置
13.4.8 落子操作
13.4.9 右视图功能的实现
13.4.10 悔棋功能的实现
13.4.11 重新开始游戏功能实现
13.4.12 文件保存及打开
13.4.13 计时功能的实现
13.4.14 日志及排行榜功能的实现
13.4.15 选手姓名的读入
13.4.16 音效功能的实现
13.4.17 游戏启动封面的设计
附录
实验1 框架的创建与消息处理(2学时)
实验2 图形与文本(4学时)
实验3 菜单(2学时)
实验4 工具栏与状态栏(2学时)
实验5 对话框(2学时)
实验6 标准控件(2学时)
实验7 通用控件(2学时)
实验8 文档与视图(4学时)
实验9 打印编程(2学时)
实验10 动态链接库编程(2学时)
实验11 多线程编程(2学时)
实验12 ODBC数据库编程(2学时)
实验13 ADO数据库编程(2学时)
实验14 多媒体编程(2学时)
参考文献