第1章 MFC程序体系结构
1.1 观图程序“PhotoSee”(一):使用MFC AppWizard
1.2 MFC Appwizard生成的类
1.3 程序运行过程分析
1.3.1 程序入口函数WinMain
1.3.2 成员函数InitInstance
1.3.3 成员函数Run与onIdle
1.3.4 成员函数ExitInstance
1.3.5 CWinApp的其他功能
1.4 窗口类
1.4.1 CWnd派生的窗口类
1.4.2 注册和创建窗口类
1.4.3 销毁窗口
1.5 更新用户界面
1.6 小结
第2章 MFC文档与视图结构
2.1 再谈窗口类
2.1.1 边框窗口
2.1.2 管理窗口和视图
2.1.3 设置边框窗口的样式
2.2 文档与视图结构
2.2.1 管理文档数据
2.2.2 显示数据
2.2.3 多文档与多视图
2.2.4 文档与视图的初始化
2.2.5 窗口、文档和视图的关系
2.3 消息与命令的处理
2.3.1 消息与消息处理
2.3.2 消息的分类
2.3.3 消息的发送与接收
2.3.4 消息映射
2.4 小结
第3章 类CJuneGlyph的初步设计与实现
3.1 “ImageLoad.dll”的函数
3.2 类CJuneGlyph的设计
3.2.1 抽取类CJuneGlyph的公共方法
3.2.2 类CJuneGlyph的声明
3.2.3 定义类CJuneGlyph的属性
3.2.4 定义类CJuneGlyph的成员函数
3.3 使用CObject类
3.3.1 CObject类
3.3.2 使用CObject类派生新类
3.3.3 访问RTTI与对象的动态创建
3.3.4 对象内容的诊断与转储
3.4 类CJuneGlyph的实现
3.5 小结
第4章 基本图像变换技术
4.1 观图程序“PhotoSee”(二):图像装入与保存
4.1.1 步骤1:插入文件
4.1.2 步骤2:设置工程选项
4.1.3 步骤3:添加CPhotoSeeApp类的消息映射处理函数
4.1.4 步骤4:实现CPhotoseeApp::onFileOpen
4.1.5 步骤5:添加CJuneGlyph类成员变量
4.1.6 步骤6:添加CPhotoSeeDoc类的消息映射处理函数
4.1.7 步骤7:绘制图像
4.1.8 程序的运行结果
4.2 基本图像变换
4.2.1 图像的缩放
4.2.2 图像的裁剪
4.2.3 图像的翻转
4.2.4 图像的倒置
4.2.5 图像的旋转
4.2.6 改变颜色深度
4.2.7 添加方法声明
4.3 观图程序“Photosee”(三):图像倒置、翻转与按比例缩放
4.3.1 步骤1:添加菜单和加速键资源
4.3.2 步骤2:添加消息映射处理函数
4.3.3 程序的运行结果
4.4 Windows对话框
4.4.1 模式对话框与无模式对话框
4.4.2 创建对话框的过程
4.4.3 对话框数据交换和验证
4.4.4 对话框控件的类型无关访问
4.4.5 关闭对话框
4.5 观图程序“PhotoSee”(四):图像裁剪
4.5.1 步骤1:创建对话框模板资源
4.5.2 步骤2:创建对话框类
4.5.3 步骤3:定义对话枢的控件成员和数据成员
4.5.4 步骤4:定义对话框的消息处理函数
4.5.5 步骤5:添加对话框的消息映射处理代码
4.5.6 步骤6:添加对话框调用代码
4.5.7 程序的运行结果
4.6 观图程序“PhotoSee”(五):图像缩放
4.6.1 步骤1:设计CDialogGlyphStretch对话框
4.6.2 步骤2:设计CDialogGlyphStretch类
4.6.3 步骤3:实现CDialogGlyphStretch类代码
4.6.4 步骤4:添加对话框调用代码
4.6.5 程序的运行结果
4.7 观图程序“Photosee”(六):图像旋转
4.7.1 步骤1:设计CDialogGlyphRotate对话框
4.7.2 步骤2:设计CDialogGlyphRotate类
4.7.3 步骤3:实现CDialogGlyphRotate类代码
4.7.4 步骤4:添加对话框调用代码
4.7.5 程序的运行结果
4.8小结
第5章 图像的点群运算
5.1 CJuneGlyphWorker类的设计
5.2 图像直方图
5.3 改变亮度
5.4 灰度变换
5.5 颜色反转
5.6 图像着色
5.7 改变对比度
5.8 边缘增强
5.9 图像滤波
5.10 小结
第6章 高级图像处理技术
6.1 创建属性页对话框
6.1.1 步骤1:创建“亮度”属性页对话框
6.1.2 步骤2:创建“着色”属性页对话框
6.1.3 步骤3:创建“改变对比度”属性页对话框
6.1.4 步骤4:创建“轮廓强化”属性页对话框
6.1.5 步骤5:创建“滤波”属性页对话框
6.1.6 步骤6:创建“灰度转换”属性页对话框
6.1.7 步骤7:创建“反转颜色”属性页对话框
6.2 添加数据成员和成员变量
6.2.1 步骤1:“亮度”属性页对话框
6.2.2 步骤2:“着色”属性页对话框
6.2.3 步骤3:“改变对比度”属性页对话框
6.2.4 步骤4:“轮廓强化”属性页对话框
6.2.5 步骤5:“滤波”属性页对话框
6.2.6 步骤6:“灰度转换”属性页对话框
6.2.7 步骤7:“反转颜色”属性页对话框
6.3 添加属性表和属性页的实现代码
6.3.1 步骤1:CPropSheetGlyphEnhance类
6.3.2 步骤2:CPropPageGlyphBrightness类
6.3.3 步骤3:CPropPageGlyphColorization类
6.3.4 步骤4:CPropPageGlyphContrast类
6.3.5 步骤5:CPropPageGlyphEdge类
6.3.6 步骤6:CPropPageGlyphFilter类
6.3.7 步骤7:CPropPageGlyphGraymaking类
6.3.8 步骤8:CPropPageGlyphReversion类
6.4 观图程序“Photosee”(七):调用属性表和属性页
6.5 小结
第7章 媒体控制接口类
7.1 MCI命令
7.1.1 全局函数mciSendCommand
7.1.2 全局函数mciSendString
7.1.3 MCI命令的分类
7.1.4 MCI函数、宏和消息
7.1.5 等待、通知与测试标志
7.2 MCI设备
7.2.1 MCI设备控制
7.2.2 MCI设备类型与设备名称
7.2.3 打开MCI设备
7.2.4 播放MCI设备
7.2.5 停止、暂停、复位与关闭MCI设备
7.3 使用mciSendString和 mciSendCommand
7.3.1 使用mciSendString
7.3.2 打开MCI设备
7.3.3 插放MCI设备
7.3.4 设置时间格式
7.3.5 检索CD音频信息
7.4 CJuneMCIDevice类
7.5 小结
第8章 CD音频
8.1 CD音频类
8.2 控件状态栏类CJuneStatusBar
8.3 观图程序“Photosee”(八):使用状态栏CJuneStatusBar
8.3.1 步骤1:声明状态烂变量
8.3.2 步骤2:创建状态栏
8.3.3 步骤3:添加onTimer方法
8.3.4 步骤4:自动播放CD音频
8.3.5 步骤5:响应MM_MCINOTIFY消息
8.3.6 步骤6:播放、暂停与停止
8.3.7 程序的运行结果
8.4 小结
第9章 MIDI、WAV与 AV|
9.1 播放 MIDI
9.2 播放WAV文件
9.3 播放AVI文件
9.4 小结