第1篇 环境篇
第0章 学前指导
0.1 认识程序
0.2 如何学好VisualC++
0.3 程序员的成长之路
0.4 就业前景
0.5 编程我也行
0.6 了解开发相关的几个概念
0.7 编程答疑
0.8 光盘使用指南
第1章 VisualC++集成开发环境
1.1 VisualC++6.0简介
1.1.1 VisualC++概述
1.1.2 VisualC++主要特点
1.2 集成开发环境介绍
1.2.1 主窗口布局
1.2.2 类视图选项卡
1.2.3 资源视图选项卡
1.2.4 文件视图选项卡
1.2.5 菜单和工具栏
1.2.6 调试与输出窗口
1.2.7 代码编辑区
1.2.8 类向导
1.3 程序调试
1.3.1 创建调试程序
1.3.2 进入调试状态
1.3.3 Watch窗口
1.3.4 CallStack窗口
1.3.5 Memory窗口
1.3.6 Variables窗口
1.3.7 Registers窗口
1.3.8 Disassembly窗口
1.4 实践练习
第2章 编程加油站(一)
必知必会001 如何创建基于对话框的MFC工程
必知必会002 如何创建基于文档视图的MFC工程
必知必会003 打开已存在的工作区
必知必会004 怎样查找工程中的信息
必知必会005 如何使用静态库的方式编译工程
必知必会006 怎样在添加对话框资源时创建对话框类
必知必会007 如何使用断点查看MFC源码
必知必会008 怎样定制自己的工具栏
必知必会009 在工作区中创建多个工程
必知必会010 使用集成开发环境时的常见问题
必知必会011 集成开发环境使用技巧
第2篇 基础篇
第3章 C++语言基础
3.1 C++程序的组成
3.2 程序设计规范
3.2.1 注释
3.2.2 命名
3.2.3 空白
3.2.4 缩进
3.3 程序设计基础
3.3.1 关键字
3.3.2 标识符
3.3.3 常量
3.3.4 变量
3.3.5 宏定义
3.4 基本数据类型
3.4.1 简单类型
3.4.2 字符串类型
3.4.3 枚举类型
3.5 运算符
3.5.1 赋值运算符
3.5.2 算术运算符
3.5.3 关系运算符和逻辑运算符
3.5.4 递增递减运算符
3.5.5 位运算符
3.5.6 sizeof运算符
3.5.7 new和delete运算符
3.5.8 优先级
3.6 实践练习
第1篇 环境篇
第0章 学前指导
0.1 认识程序
0.2 如何学好VisualC++
0.3 程序员的成长之路
0.4 就业前景
0.5 编程我也行
0.6 了解开发相关的几个概念
0.7 编程答疑
0.8 光盘使用指南
第1章 VisualC++集成开发环境
1.1 VisualC++6.0简介
1.1.1 VisualC++概述
1.1.2 VisualC++主要特点
1.2 集成开发环境介绍
1.2.1 主窗口布局
1.2.2 类视图选项卡
1.2.3 资源视图选项卡
1.2.4 文件视图选项卡
1.2.5 菜单和工具栏
1.2.6 调试与输出窗口
1.2.7 代码编辑区
1.2.8 类向导
1.3 程序调试
1.3.1 创建调试程序
1.3.2 进入调试状态
1.3.3 Watch窗口
1.3.4 CallStack窗口
1.3.5 Memory窗口
1.3.6 Variables窗口
1.3.7 Registers窗口
1.3.8 Disassembly窗口
1.4 实践练习
第2章 编程加油站(一)
必知必会001 如何创建基于对话框的MFC工程
必知必会002 如何创建基于文档视图的MFC工程
必知必会003 打开已存在的工作区
必知必会004 怎样查找工程中的信息
必知必会005 如何使用静态库的方式编译工程
必知必会006 怎样在添加对话框资源时创建对话框类
必知必会007 如何使用断点查看MFC源码
必知必会008 怎样定制自己的工具栏
必知必会009 在工作区中创建多个工程
必知必会010 使用集成开发环境时的常见问题
必知必会011 集成开发环境使用技巧
第2篇 基础篇
第3章 C++语言基础
3.1 C++程序的组成
3.2 程序设计规范
3.2.1 注释
3.2.2 命名
3.2.3 空白
3.2.4 缩进
3.3 程序设计基础
3.3.1 关键字
3.3.2 标识符
3.3.3 常量
3.3.4 变量
3.3.5 宏定义
3.4 基本数据类型
3.4.1 简单类型
3.4.2 字符串类型
3.4.3 枚举类型
3.5 运算符
3.5.1 赋值运算符
3.5.2 算术运算符
3.5.3 关系运算符和逻辑运算符
3.5.4 递增递减运算符
3.5.5 位运算符
3.5.6 sizeof运算符
3.5.7 new和delete运算符
3.5.8 优先级
3.6 实践练习
第4章 C++语句控制
4.1 语句
4.1.1 简单语句
4.1.2 复合语句
4.2 顺序结构
4.3 选择结构
4.3.1 if条件语句
4.3.2 switch分支语句
4.4 循环结构
4.4.1 while语句
4.4.2 do...while语句
4.4.3 for语句
4.5 异常处理语句
4.5.1 异常捕捉
4.5.2 抛出异常
4.6 其他控制语句
4.6.1 强制结束break
4.6.2 继续语句continue
4.6.3 退出语句exit
4.7 实践练习
第5章 高级数据类型
5.1 结构体类型
5.1.1 结构体类型的定义
5.1.2 结构体变量的初始化
5.1.3 结构体类型变量的引用
5.1.4 结构体数组
5.1.5 结构体数组的初始化
5.1.6 结构体数组的引用
5.1.7 结构体类型变量的指针
5.2 共用体类型
5.3 文件类型
5.4 指针类型
5.5 引用类型
5.6 数组
5.6.1 一维数组
5.6.2 二维数组及多维数组
5.6.3 指向数组的指针
5.6.4 指针数组
5.6.5 数组的操作
5.6.6 数组应用
5.7 实践练习
第6章 函数
6.1 函数的声明和定义
6.2 参数的默认值
6.3 形参表可变的函数
6.4 内联函数
6.5 参数传递方式
6.6 利用数组作为函数参数
6.7 函数的递归调用
6.8 函数重载
6.9 函数模板
6.10 函数指针
6.11 实践练习
第7章 面向对象程序设计
7.1 类
7.1.1 类的概念
7.1.2 类的声明
7.2 对象
7.2.1 对象的声明与实例化
7.2.2 类与对象的关系
7.2.3 类成员的访问
7.2.4 类成员的保护
7.2.5 实现类的方法
7.3 构造函数与析构函数
7.3.1 默认构造函数
7.3.2 重载构造函数
7.3.3 复制构造函数
7.3.4 析构函数
7.4 继承
7.4.1 单一继承
7.4.2 多重继承
7.4.3 覆盖成员函数
7.4.4 虚函数
7.4.5 纯虚函数
7.5 类方法
7.5.1 内联方法
7.5.2 静态成员数据和静态方法
7.5.3 友元类和友元函数
7.5.4 const方法
7.5.5 运算符重载
7.6 类模板
7.6.1 模板的声明和实例化
7.6.2 模板的实现
7.6.3 模板应用
7.7 实践练习
第8章 编程加油站(二)
必知必会001 配对使用new和delete运算符
必知必会002 使用运算符时的常见问题
必知必会003 对比3种不同的循环结构体
必知必会004 函数与变量区分不清的问题
必知必会005 加强对不同参数传递方式的理解
必知必会006 讲解typename与class关键字的使用位置
必知必会007 不同角度区分函数指针与指针函数
必知必会008 由于疏忽“;”而导致的错误问题
必知必会009 挖掘类中this指针的作用与使用方式
必知必会010 分析静态成员(static)的使用情况
必知必会011 使用运算符重载的特殊情况
第3篇 界面编程篇
第9章 用户界面设计
9.1 控件的操作
9.1.1 放置和选定控件
9.1.2 控件的缩放与移动
9.1.3 控件的复制与删除
9.1.4 控件的对齐
9.2 常用MFC控件
9.2.1 静态控件CStatic
9.2.2 编辑框控件CEdit
9.2.3 按钮控件CButton
9.2.4 列表框控件CListBox
9.2.5 组合框控件CComboBox
9.3 对话框设计
9.3.1 对话框简介
9.3.2 模式对话框与非模式对话框
9.3.3 对话框资源设计
9.3.4 对话框常用方法
9.3.5 向对话框类中添加成员函数
9.3.6 向对话框中添加控件消息处理函数
9.4 实践练习
第10章 MFC高级控件
10.1 菜单
10.1.1 菜单资源的设计
10.1.2 菜单的命令处理
10.1.3 菜单的主要方法
10.1.4 动态创建菜单
10.1.5 具有图标的菜单
10.2 工具栏
10.2.1 工具栏设计
10.2.2 工具栏按钮的命令处理
10.2.3 工具栏的主要方法
10.2.4 动态创建工具栏
10.2.5 具有图像按钮的工具栏
10.2.6 具有提示功能的工具栏
10.3 状态栏
10.3.1 状态栏的主要方法
10.3.2 动态创建状态栏
10.3.3 在状态栏中显示进度条
10.4 标签控件CTabCtrl
10.4.1 标签控件的主要属性
10.4.2 标签控件的主要方法
10.4.3 标签控件的使用
10.5 图像列表控件CImageList
10.5.1 图像列表控件的主要方法
10.5.2 图像列表控件的使用
10.6 列表视图控件CListCtrl
10.6.1 列表视图控件的主要属性
10.6.2 列表视图控件的主要方法
10.6.3 列表视图控件的使用
10.7 树视图控件CTreeCtrl
10.7.1 树视图控件的主要属性
10.7.2 树视图控件的主要方法
10.7.3 树视图控件的使用
10.8 ActiveX控件
10.8.1 利用CAdodc控件操作数据库
10.8.2 利用DataGrid控件显示数据集数据
10.8.3 利用CBarCodeCtrl控件打印条形码
10.8.4 利用CWebBrowser2控件浏览网页
10.9 实践练习
第11章 文档与视图
11.1 构建文档/视图应用程序
11.1.1 构建单文档/视图应用程序
11.1.2 构建多文档/视图应用程序
11.2 绘制视图背景
11.3 文档/视图结构的消息处理
11.4 视图分割
11.4.1 简单视图分割
11.4.2 划分任意子窗口
11.5 视图窗口高级应用
11.5.1 隐藏视图创建选择窗口
11.5.2 动态创建视图窗口
11.5.3 在视图窗口中显示网页
11.6 实践练习
第12章 编程加油站(三)
必知必会001 如何使用控件的复制与删除功能
必知必会002 静态文本控件的使用
必知必会003 编辑框的使用
必知必会004 按钮控件的使用
必知必会005 列表框控件的使用
必知必会006 组合框控件的使用
必知必会007 理解模式对话框与非模式对话框
必知必会008 向对话框中添加消息处理函数
必知必会009 模式与非模式对话框显示时应注意的问题
必知必会010 如何绘制自己的菜单
必知必会011 解决工具栏背景的绘制问题
必知必会012 视图滚动的解决问题
第4篇 核心技术篇
第13章 图形、图像处理
13.1 GDI设备与对象
13.1.1 画笔CPen
13.1.2 画刷CBrush
13.1.3 位图CBitmap
13.1.4 区域CRgn
13.1.5 字体CFont
13.1.6 设备上下文CDC
13.1.7 调色板CPalette
13.2 常用图像存储格式
13.2.1 位图
13.2.2 图标
13.2.3 GIF图像
13.3 文本输出
13.3.1 在指定位置输出文本
13.3.2 在指定区域输出文本
13.3.3 利用制表位输出文本
13.3.4 设置字体、颜色及对齐方式
13.3.5 设置文本背景透明
13.4 绘制图形图像
13.4.1 利用线条绘制表格
13.4.2 绘制多边形
13.4.3 填充区域
13.4.4 填充选区
13.4.5 线条的渐变
13.4.6 区域的渐变
13.4.7 绘制位图
13.5 图像显示
13.5.1 在设备上下文中绘制图像
13.5.2 从磁盘中加载图像到窗口中
13.5.3 根据位图数据直接绘图
13.5.4 显示JPEG图像
13.6 实践练习
第14章 打印技术
14.1 基本概念
14.1.1 打印机介绍
14.1.2 分辨率
14.1.3 设备环境
14.1.4 映射模式
14.2 基于文档、视图结构的打印
14.2.1 按比例打印数据
14.2.2 打印图像
14.2.3 自定义打印预览
14.3 基于对话框结构的打印
14.3.1 获取打印机DC
14.3.2 打印预览
14.3.3 分页打印
14.4 打印控制
14.4.1 自定义打印纸大小
14.4.2 控制打印方向
14.4.3 设置打印份数
14.5 实践练习
第15章 文件操作
15.1 CFile类文件操作
15.1.1 CFile类介绍
15.1.2 获取文件属性
15.1.3 十六进制显示文本文件
15.1.4 使用CFile实现文件的复制
15.1.5 CFile类与CStdioFile类的比较
15.2 共享文件类CShareFile
15.3 数据流类CMonikerFile
15.4 文件流类CStdioFile
15.5 文件查找类
15.5.1 文件查找类介绍
15.5.2 查找指定文件
15.5.3 显示磁盘目录
15.6 MFC串行化
15.6.1 CArchive类介绍
15.6.2 Serialize分析
15.6.3 创建串行化类
15.6.4 实现对象的串行化
15.7 INI文件
15.7.1 INI文件的设计结构和数据类型
15.7.2 读取和写入INI文件
15.8 实践练习
第16章 编程加油站(四)
必知必会001 文本输出的主要方法
必知必会002 空心字的绘制问题
必知必会003 如何在程序中绘制位图
必知必会004 如何在程序中显示JPEG图像
必知必会005 打印中的映射模式
必知必会006 怎样自定义打印预览
必知必会007 如何实现自定义打印纸大小
必知必会008 解决如何控制打印机打印新页问题
必知必会009 怎样在磁盘中查找指定文件
必知必会010 解决文件图标的获取问题
第5篇 高级应用篇
第17章 ADO编程基础
17.1 ADO概述
17.2 ADO对象
17.2.1 连接对象Connection
17.2.2 命令对象Command
17.2.3 记录集对象Recordset
17.2.4 参数对象Parameter
17.3 利用ADO连接数据库
17.3.1 连接Access数据库
17.3.2 连接SQLServer数据库
17.3.3 连接Oracle数据库
17.4 利用ADO操作数据库
17.4.1 获取记录集数据
17.4.2 遍历记录集
17.4.3 向记录集中添加数据
17.4.4 修改记录集数据
17.4.5 删除记录集数据
17.5 实践练习
第18章 动态链接库
18.1 动态链接库基础
18.1.1 动态链接库特点
18.1.2 动态链接库的访问
18.1.3 查看动态链接库
18.2 创建动态链接库
18.2.1 创建MFC动态链接库
18.2.2 创建Win32静态链接库
18.2.3 创建Win32动态链接库
18.3 动态链接库中的资源
18.3.1 资源的名称和类型
18.3.2 资源模块
18.3.3 在模块中查找和加载资源
18.4 实践练习
第19章 编程加油站(五)
必知必会001 如何引入ADO类库
必知必会002 怎样实现SQLServer数据库的连接
必知必会003 如何才能实现对记录集的遍历
必知必会004 实现对数据库记录的添加操作
必知必会005 解决数据库中图片的添加问题
必知必会006 实现对数据库记录的修改操作
必知必会007 解决数据库中图片的提取与编辑问题
必知必会008 实现对数据库记录的删除操作
必知必会009 如何创建标准的MFC动态链接库
必知必会010 如何创建MFC扩展DLL并导出窗体类
项目开发实战A 图像处理(光盘\Vc\A-图像处理\图像处理.doc)
A.1 图像处理模块概述
A.1.1 模块概述
A.1.2 功能结构
A.1.3 模块预览
A.2 关键技术
A.2.1 位图数据的存储形式
A.2.2 任意角度旋转图像
A.2.3 实现图像缩放
A.2.4 在VisualC++中使用GDI+进行图像处理
A.2.5 实现图像的水印效果
A.2.6 浏览PSD丈件
A.2.7 利用滚动窗口浏览图片
A.2.8 使用子对话框实现图像的局部选择
A.3 图像旋转模块设计
A.3.1 概述
A.3.2 界面布局
A.3.3 实现过程
A.4 图像平移模块设计
A.4.1 概述
A.4.2 界面布局
A.4.3 实现过程
A.5 图像缩放模块设计
A.5.1 概述
A.5.2 界面布局
A.5.3 实现过程
A.6 图像水印效果模块设计
A.6.1 概述
A.6.2 界面布局
A.6.3 实现过程
A.7 位图转换为JPEG模块设计
A.7.1 概述
A.7.2 界面布局
A.7.3 实现过程
A.8 PSD文件浏览模块设计
A.8.1 概述
A.8.2 界面布局
A.8.3 实现过程
A.9 照片版式处理模块设计
A.9.1 概述
A.9.2 界面布局
A.9.3 实现过程
项目开发实战B 屏幕录像(光盘\VC\A-屏幕录像\屏幕录像.doc)
B.1 屏幕录像模块概述
B.1.1 模块概述
B.1.2 功能结构
B.2 关键技术
B.2.1 屏幕抓图
B.2.2 抓图时抓取光标
B.2.3 将位图数据流写入AVI文件
B.2.4 将AVI文件转换成位图数据
B.2.5 获得AVI文件属性
B.2.6 根据运行状态显示托盘图标
B.2.7 获得磁盘的剩余空间
B.2.8 动态生成录像文件名
B.3 主窗体设计
B.3.1 概述
B.3.2 界面设计
B.3.3 功能实现
B.4 录像截取模块设计
B.4.1 概述
B.4.2 界面设计
B.4.3 功能实现
B.5 录像合成模块设计
B.5.1 概述
B.5.2 界面设计
B.5.3 功能实现