
本书结合精选的项目实例,使用Visual C++开发工具,应用面向对象开发方法及开发过程,开发了涉及图形、图像、多媒体、网络、数据库等知识的项目。其中的内容是Visual C++基础编程教材中很少涉及到的。全书内容翔实,重点突出,应用性极强,最大的特点就是结合实例深入浅出地对软件项目开发过程进行详细讲解,是学习Visual C++编程的有益资料。读者可以根据这些实例进行深入研究,并不断地修改与扩充,使之符合自己的要求。
本书可以作为高职高专院校相关专业的项目实训课程或课程设计的教材,也可作为Visual C++爱好者的参考书。
面向对象程序设计语言C++具有强大的功能,是近年来广泛使用的现代计算机语言。它既支持面向过程的程序设计,也支持面向对象的程序设计,目前已经在各个领域得到了广泛的应用,能适用于设计各类应用程序和系统程序,特别适合中等和大型程序的开发项目。
Visual C++是 Microsoft公司出品的一个功能非常强大的可视化编程工具,它以C++语言为基础,利用MFC类库的强大优势,使其成为Windows平台最为优秀的开发工具之一,也是目前功能最为强大的程序开发平台之一。人们常说“真正的程序员用C++”,但是掌握它并不是一件容易的事情,需要一个实践的过程,而从案例开始学习不失为一个好办法。
本书的目的是帮助广大Visual C++的学习者快速熟悉和掌握Visual C++工具,使具有不同编程背景的人更加精通使用Visual C++进行Windows编程的技术。
本书的主要特色是采用了编程案例的形式来编写,利用大量生动有趣的编程案例介绍可视化编程的技术和软件开发的思维方式,使读者能够从中领悟到一些编程技巧,而且读者还可以根据这些案例进行研究、修改和扩展,使其符合自己的要求。书中提供的所有案例都经过作者编译通过,完整无误,通过每一个案例的学习,读者可以轻松掌握有关Visual C++编程案例的设计和实践。
全书共分9章,具体内容如下:
第1章介绍软件开发过程与方法,主要对软件开发过程和软件开发方法进行简单介绍。
第2章介绍Windows屏幕保护程序。
第3章介绍多媒体音频播放器,实现对多种音频格式文件的播放,有循环播放、指定播放、顺序播放等多种形式。
第4章介绍画图软件的开发,主要完成Windows画图的主要功能; 对Windows中图形编程及MFC中与图形相关的类进行讲解,从中可学会如何使用Visual C++进行图形编程。
第5章介绍网络视频点播系统。
第6章介绍俄罗斯方块游戏的开发,从中可了解游戏程序的设计技巧及API函数的使用规则。
第7章介绍WinSocket网络编程。通过网络实现信息的传递,对WinSocket编程、UDP广播、网上文件传送等内容进行了讲解。
第8章介绍Windows资源管理器的实现,完成类似于Windows系统中资源管理器的功能与界面。
第9章介绍商品销售管理系统,全面介绍在Visual C++中如何进行数据库应用程序的开发。
本书的各个案例基本上互相独立,全书覆盖了包括图形和图像、多媒体、网络、数据库、通信等技术,深入浅出地说明了Visual C++中最具典型性和最有用的程序设计方法。读者可以根据自己的实际情况选择不同章节进行阅读。
本书既可作为VC++爱好者学习VC++编程课程设计的好帮手和课程资料,同时还可作为广大教师、计算机专业编程人员的学习参考书。
本书由贾振华编著,参加编写的有斯琴巴拉、杨丽娟、刘立媛、张春娥、李瑛、赵辉、李杰、王振夺、孙红艳、庄连英、李伟红、赵丽艳、何志学、侯晓芳、崔玉宝等。
由于编者水平有限,书中难免会有不妥和错误之处,恳请读者不吝赐教。
编者
2010年2月
第1章软件开发过程与方法
1.1软件开发过程
1.1.1需求分析
1.1.2系统分析与设计
1.1.3编码实现
1.1.4测试
1.1.5部署
1.1.6维护
1.2软件开发方法
1.2.1面向数据流的开发设计方法
1.2.2结构化软件开发方法
1.2.3面向数据结构的软件开发方法
1.2.4面向问题的分析方法
1.2.5面向对象的软件开发方法
1.2.6原型化方法
本章小结
第2章Windows屏幕保护程序
2.1屏幕保护的基本知识
2.2如何提高绘图效率
2.2.1显示的图形为什么会闪烁
2.2.2如何避免闪烁
2.2.3双缓冲的实现
2.2.4提高绘图效率
2.3VC++中鼠标的处理
2.3.1鼠标消息处理流程
2.3.2鼠标消息处理
2.4VC++对图片的处理
2.4.1加载JPG图片的方法
2.4.2用GDI+把图片转成.BMP文件再加载
2.4.3其他方法
2.5实现步骤
本章小结
第3章多媒体音频播放器
3.1几种重要的音频格式
3.1.1波形音频
3.1.2MIDI音频
3.1.3CD音频
3.2媒体控制接口类(MCI)
3.2.1MCI命令
3.2.2MCI设备
3.2.3使用mciSendString和mciSendCommand函数
3.3实现步骤
本章小结
VC++程序设计项目实践
第4章画图软件的开发
4.1基本概念
4.1.1设备环境类
4.1.2画笔和画刷
4.1.3颜色对话框
4.2系统分析
4.3系统设计
4.3.1创建工具箱
4.3.2创建颜料盒
4.3.3画图函数的响应
4.3.4画图的保存与打开
4.4系统实现
4.4.1新建工程
4.4.2创建工具箱
4.4.3画图函数的响应
4.4.4创建颜料盒
4.4.5画图的保存与打开
4.4.6运行程序
本章小结
第5章网络视频点播系统
5.1DirectShow技术
5.1.1DirectShow简介
5.1.2DirectShow支持的格式
5.2ActiveX技术简介
5.3VOD点播系统实现
5.3.1系统简介
5.3.2服务器端应用程序实现
5.3.3客户端应用程序实现
本章小结
第6章俄罗斯方块游戏的开发
6.1基础知识
6.1.1Windows程序工作原理
6.1.2程序结构剖析
6.2系统分析
6.3系统设计
6.4系统实现
6.4.1新建工程
6.4.2设计七种方块形状
6.4.3显示方块
6.4.4显示游戏面板
6.4.5方块自动下降
6.4.6按键控制方块向左移动
6.4.7按键控制方块向右移动
6.4.8按键控制方块下降
6.4.9响应键盘消息
6.4.10擦除方块运动轨迹
6.4.11判断方块是否出左边界
6.4.12判断方块是否出右边界
6.4.13按键控制方块旋转
6.4.14判断方块是否到底
6.4.15判断游戏结束
本章小结
第7章WinSocket网络编程
7.1TCP/IP介绍
7.1.1TCP/IP体系结构
7.1.2TCP/IP特点
7.1.3TCP/IP协议与WinSocket网络编程接口的关系
7.2套接字原理
7.2.1客户机/服务器模式
7.2.2基本套接字
7.2.3典型过程图
7.3WinSocket 程序设计
7.3.1WinSocket网络程序设计核心
7.3.2WinSocket编程简单流程
7.4用VC++6.0 Sockets实现一个聊天、传收文件程序
7.4.1程序简介
7.4.2程序实现
本章小结
第8章Windows资源管理器
8.1图像列表控件的使用
8.1.1创建图像列表
8.1.2操作图像列表
8.1.3图像列表控件在列表控件中的应用
8.1.4销毁图像列表
8.2列表视图控件的使用
8.2.1列表视图控件的创建
8.2.2列表视图控件的数据结构
8.2.3添加列表项到列表视图控件中
8.2.4获取被选中表项
8.2.5列表视图控件的其他操作
8.3树形视图控件的使用
8.3.1树形视图控件的创建
8.3.2树形视图控件的数据结构
8.3.3操作树形视图控件
8.4切分窗口的使用
8.4.1CSplitterWnd类
8.4.2创建切分窗口的步骤
8.5IShellFolder接口的使用
8.6CFileFind类的使用
8.7资源管理器的编程实现
8.7.1创建应用程序框架
8.7.2添加自定义的树形视图控件类
8.7.3添加自定义的列表视图控件类
8.7.4创建切分窗口
本章小结
第9章商品销售管理系统
9.1Visual C++的数据库接口
9.2ADO技术
9.2.1ADO对象
9.2.2使用ADO对象
9.3系统分析
9.4系统设计
9.4.1系统目标
9.4.2系统功能设计
9.4.3数据库设计
9.5公共模块设计
9.6主窗体设计
9.7主要功能模块详细设计与实现
9.7.1系统登录模块
9.7.2基础管理信息公共查询类
9.7.3员工信息管理模块
9.7.4商品销售管理模块
9.7.5业务查询公共基类
9.7.6权限设置模块
本章小结
参考文献