目录
第1章Visual Studio 2012介绍1
1.1Visual Studio 2012的安装要求2
1.2Visual Studio 2012的安装步骤2
1.3Visual Studio 2012集成开发环境介绍4
1.4小结7
第2章初识MFC编程8
2.1可视化程序设计8
2.2使用AppWizard创建ContactList初始应用程序9
2.3选择Debug或Release生成选项12
2.4小结14
第3章需求分析15
3.1需求分析的作用15
3.2需求分析的结构15
3.3通讯录系统业务需求16
3.4通讯录系统需求分析范例17
3.5小结19
第4章概要设计20
4.1概要设计要求20
4.2概要设计结构20
4.3通讯录概要设计范例20
4.4小结23
第5章数据结构设计与实现24
5.1CPerson类的设计与实现24
5.2添加CPerson类24
5.3添加CPerson类的成员变量26
5.4添加CPerson类的成员函数27
5.5重载CPerson类的构造函数29
5.6CPerson成员变量的初始化30
5.7CPersonList类的设计与实现30
5.8类模板和动态数组CArray31
5.9添加CPersonList类32
5.10CPersonList继承CArray功能32
5.11生成和运行ContactList34
5.12小结35
第6章界面设计与实现36
6.1界面设计概述36
6.2主对话框的设计与实现36
6.3添加CListCtrl控件36
6.4添加CButton控件39
6.5添加Static Text控件41
6.6添加CEdit控件42
6.7子对话框的设计与实现43
6.8添加CEditDlg类44
6.9绘制编辑对话框界面45
6.10将控件映射到成员变量49
6.11修改CEditDlg类构造函数52
6.12添加OnInitDialog()虚函数55
6.13添加和实现消息响应函数59
6.14设置对话框Tab键顺序60
6.15CListCtrl风格的定义与实现61
6.16CListCtrl数据更新64
6.17小结69
第7章编码实现: 联系人管理71
7.1添加联系人功能的实现71
7.2删除联系人功能的实现73
7.3编辑联系人功能的实现74
7.4小结75
第8章编码实现: 通讯录文件的读写76
8.1CPerson基础数据的存储76
8.2CPersonList对象的存储77
8.3DoSaveFile()与“恢复”功能79
8.4DoLoadFile()与“恢复”功能81
8.5实现自动读写功能83
8.6实现复制功能86
8.7小结88
第9章编码实现: 联系人检索89
9.1查找联系人功能的实现89
9.2统计联系人功能的实现92
9.3显示联系人的照片96
9.4主对话框联系人头像的显示105
9.5显示联系人统计图形109
9.6小结118
第10章编码实现: 界面增强119
10.1添加菜单119
10.2添加工具栏122
10.3小结130
第11章软件测试131
11.1软件测试流程131
11.2ContactList项目测试案例131
11.3小结147
第12章软件发布148
12.1通过InstallShield制作安装包148
12.2ContactList项目说明书案例154
12.3小结161
第13章总结与展望162
13.1项目总结162
13.2总结1: 软件过程管理162
13.3总结2: 面向对象程序设计163
13.4总结3: 数据设计原则163
13.5总结4: 功能增强163
附录A术语解释164
参考文献168