手机通讯录课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Visual C++课程设计
题目名称:手机通讯录
班级:信安1101
:立翼
学号:**********
指导教师:***
完成时间:2013.1.18
目录
1 题目描述 (2)
2 功能分析 (2)
3 系统设计 (2)
3.1 系统整体结构 (2)
3.1.1 系统中的信息类型划分 (2)
3.1.2 对分组的操作 (3)
3.1.3 对人员的操作 (3)
3.2 主要模块设计 (3)
3.2.1 信息类的设计 (3)
3.2.2 命令的设计 (4)
3.2.3 主要数据结构 (5)
3.2.4 文件存储 (5)
3.3 程序界面设计 (6)
3.3.1 树控件设计 (6)
3.3.2 列表视图控件设计 (6)
3.3.3 模糊查询设计 (7)
3.3.4 分组框设计 (7)
3.4 类与函数的设计与实现 (7)
3.4.1 联系人类的设计与实现 (7)
3.4.2 分组类设计与实现 (8)
3.4.3 命令类设计与实现 (8)
4 运行与测试结果 (10)
4.1 程序主要运行界面 (10)
4.2 系统测试 (13)
4.2.1 界面操作测试 (13)
4.2.2 功能测试 (14)
4.2.3 非正常操作测试 (14)
5 小结 (14)
1 题目描述
设计一个手机通讯录管理软件。 要求:
1)分组管理。能够添加、删除、修改,每个分组设置一个来电音乐。 2)用户管理。包括、手机、办公,电子,QQ ,微博,来电音乐
3)用户查询。初始时按照字母顺序显示所有人员,可以输入或者数字模糊查询
4)功能模拟。当选中一个用户时,有通话和短信选项可以操作,选择后进入相应界面。
2 功能分析
系统主要功能包括:
(1)分组管理。可以添加、修改、删除分组。添加分组时可设置来电音乐,也可修改来电音乐。
(2)用户管理。可添加、显示、修改、删除用户信息。用户信息包括、手机、办公、电子、QQ 、微博、来电音乐。
(3)用户查询。初始时按照字母顺序显示所有人员,可输入或数字进行模糊查询。可按分组显示人员。
(4)功能模拟。当选中用户时,有通话和短信选项可以操作,选择后进入相应界面。
3 系统设计
3.1 系统整体结构
3.1.1 系统中的信息类型划分
在本系统中,主要分为两类信息:分组信息和人员信息(如图1所所示)。其中分组信息包括分组名称及分组来电音乐。人员信息包括人员、手机、办公、电子、QQ 、微博、分组、来电音乐。
图图
1 系统中的信息类型
3.1.2对分组的操作
用户可以添加分组,删除分组,重命名分组,修改分组音乐。如图2所示。
图2 分组操作
3.1.3对人员的操作
用户可以添加人员,删除人员,修改人员,修改人员来电音乐,功能模拟。如图3所示。
图3 人员操作
3.2主要模块设计
3.2.1信息类的设计
首先创建两个类CPerson和CGroup,分别存储联系人的资料和所有的分组,CPerson 类里包含联系人的、手机、办公、电子、QQ、微博、所属分组、来电音乐,CGroup类里包含分组名称及其对应的来电音乐。
3.2.2命令的设计
(1)面向对象的消息响应机制
消息(Message)表示为能在对象间传递的数据集,它是对象间的通讯机制。设计一个面向对象环境的本质是:对象可以用消息在彼此之间传送控制。在Window环境中,一个特定的消息可以代表一个简单通用的事件;而任何特定的消息可以在不同的对象中引发不同的动作。
尽管对象接收消息的顺序在程序中是不可预知的,但对象处理每个消息所采取的行为却是显式定义的。
消息可由一个对象发送给另一个对象,或是由操作环境本身发送给某个对象;一个对象也可以通过向其他对象或自己发送一条或多条新消息来处理一个消息,有时即使一个简单的动作也包含了层层叠叠的消息处理。
(2)命令和命令类的设计
a.分组操作:
a)添加分组:OnAddGroup();CAddGroupDlg;
b)重命名分组:OnGroupModify();CModifyGroupDlg;
c)删除分组:OnDeleteGroup();DeleteList(CString groupname);
d)显示分组人员信息:RefreshList();
e)播放分组音乐:OnMusic();
f)更改分组音乐:OnMusicOk();
b.人员操作:
a)添加人员:OnAdd();CAddDlg;
b)修改人员信息:OnModify();CModify;
c)删除人员:OnDelete();
d)更改来电音乐:OnMusic();
e)发送短信:OnMessage();CSendDlg;
f)拨打:OnPhoneTo();CPhoneToDlg;
g)显示单个人员信息:RefreshPerson(CString personname);
h)显示所有人员信息:RefreshAllList();
i)模糊查询:BlurFindStr(CString &strSource,CString
&strFindCell);IsBlur(BYTE c1,BYTE c2,char c) (3)命令类及命令的层次如图4所示: