通讯录课程设计报告_第1页
通讯录课程设计报告_第2页
通讯录课程设计报告_第3页
通讯录课程设计报告_第4页
通讯录课程设计报告_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

大学课程设计说明书课程名称管理信息系统题目通讯录管理系统学院班级学生姓名指导教师日期目录TOC\o"1-3"\h\u1.需求分析 32.系统分析 32.1.系统的可行性研究 32.2.功能需求分析 33.系统设计 43.1.系统模块设计 43.2.数据库设计 44.系统实施 54.1.开发环境 54.2.建立数据库 54.2.1.数据库创立代码 54.2.2.数据库表创立代码 64.3.程序设计 84.3.1.主程序的设计 84.3.2.登录界面的设计 84.4.系统测试 145.课程设计总结 186.参考文献 19需求分析随着社会的开展,人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比方怎样找到交流对象的各种信息?可能你会想到现实生活中的等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。通讯录管理系统是一个基于SQL数据库储存和JAVA界面模式的个人通讯录管理系统。它是将自己的联系人的具体信息集中管理,成为一个方便人们使用的小软件。在开发过程中主要运用Java,SQLServer技术,由于开发工具和数据库之间的良好使用,可以为开发带来方便,使之成为一个可施行的系统。从而到达开发的目的实现对通讯录信息的管理。通过采用相关技术,以及老师的辅导和同学们的帮助,将系统设计的功能全部实现。功能包括:用户的登录,添加联系人信息,修改联系人信息,删除联系人信息,查询联系人信息,可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。系统分析系统的可行性研究

目的:可行性研究的目的是用最小的代价在尽可能少的时间内确定问题是否能够解决。而该系统正式用比拟简单的VFP语言来编写的小型的、实用的通讯录信息管理系统,既能很好地完成对用户信息的管理,又比拟经济实惠。本系统采用的是VFP语言,在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上也有很丰富的相关资料,通过参考一些功能模块程序的设计,实现该系统是完全可以的。

本系统的设计是在windowsXP中文版环境下,使用Visual

Foxpro6.0开发的。它是可以运行于windowsXP相关平台的数据库开发系统。Visual

Foxpro6.0不仅可以简化数据库管理,而且应用程序的开发流程更为合理,它使组织数据,定义数据库规那么和建立应用程序的工作变得简单易行,利用可视化的设计工具和向导,用户可以快速的创立表单、查询等。功能需求分析本系统主要实现对通讯录信息进行管理,需要实现以下几个方面的管理功能:(1)通讯录管理信息:信息的添加、删除、浏览、修改和查询等操作。(2)系统维护:包括用户登录,用户修改密码,数据的修改、浏览、添加、删除以及按姓名、联系方式、地址进行查询。系统设计系统模块设计图3-1系统模块结构图添加:系统提示用户添加新人员信息,输入到文件中,人员的信息包含姓名(name)、号码(phonenum)、类型(type)、电子邮件(email)。

显示:该功能显示所有以保存的人员的姓名、号码、类型和电子邮件。

查询:由用户输入要查找的人员姓名、号码或者类型,系统将调用查找函数,使用相关文件命令输出所查找人员的相关信息。

删除:由用户输入需要删除人员的姓名,系统调用删除函数将此人所有相关信息删除。

修改:由用户输入需要修改的人员的姓名,系统调用修改函数,用户修改需修改的信息。

保存退出:完成任务,退出系统。数据库设计数据库中包括系统用户表、通讯表各表结构设计如下。系统用户表

用户表代表了一个用户的个人信息,是不允许随意修改的,所以本系统采用了一定的保密措施,主要是用户的管理,所有的用户信息保存在这个表中,该表被命名为用户表.DBF,其结构表,如表3.1所示。表3.1系统用户表结构编号字段名字段类型字段长度小数位数作用1姓名字符型100用户名称2密码字符型30用户密码3用户类型数值型10用户类型通讯录。DBF。其结构如表3.2所示。主要是通讯录信息的管理,包括联系方式、地址、等。该表被命名为通讯录.DBF,主要是在建表时利用表设计器对表四要素:字段、类型、长度、小数位相应的设置。其结构表如表3.2所示。表3.2通讯录表结构编号字段名字段类型字段长度小数位数索引1编号数据型20主索引2姓名字符型603性别字符型204出生年月日期型805住宅字符型1006办公字符型1007字符型1108小灵通字符型809QQ字符型9010e-mail字符型20011备注字符型10012家庭住址字符型10013邮政编码字符型10系统实施开发环境⑴

开发条件:

硬件:没人一台Intel

Pentium

4以上的计算机

软件:Word、Visio、Myeclipes6.0.1、Windows

XP、SQL

Server2000;

开发时间:开发的整个过程在三周内完成;⑶

经费问题:经费少,适合学生开发的简单系统。建立数据库数据库创立代码createdatabase通讯录管理系统onprimary( name='通讯录管理系统', Filename='d:\数据库\通讯管理系统.mdf', size=10mb, maxsize=100mb, filegrowth=20%)logon( name='通讯录管理系统', filename='d:\数据库\通讯录管理系统.ldf', size=20mb, maxsize=100mb, filegrowth=20%)数据库表创立代码用户表createtable用户( 用户名char(20)primarykey, 密码char(40)notnull,)联系人表createtable联系人( 编号char(10)primarykey, 姓名char(10), 性别char(4)notnull, 号码char(10)notnull, E_mailchar(50), 地址char(30), 分组类型char(10), )分组表createtable同学分组( 同学编号char(10)primarykeyFOREIGNKEY(同学编号)REFERENCES联系人(编号), 姓名char(10),)gocreatetable朋友分组( 朋友编号char(10)primarykeyFOREIGNKEY(朋友编号)REFERENCES联系人(编号), 姓名char(10),)gocreatetable同事分组( 同事编号char(10)primarykeyFOREIGNKEY(同事编号)REFERENCES联系人(编号), 姓名char(10),)视图创立代码gocreateview朋友asselect朋友分组.朋友编号,朋友分组.姓名,号码,性别,E_mail,分组类型from朋友分组,联系人where朋友分组.朋友编号=联系人.编号gocreateview同学asselect同学分组.同学编号,同学分组.姓名,号码,性别,E_mail,分组类型from联系人,同学分组where同学分组.同学编号=联系人.编号gocreateview所有联系人asselect联系人.姓名,联系人.号码,联系人.性别,联系人.E_mail,分组类型from联系人go存储过程代码创立createprocedure_朋友asselect朋友分组.朋友编号,朋友分组.姓名,号码,性别,E_mail,分组类型from联系人,朋友分组where朋友分组.朋友编号=联系人.编号gocreateprocedure_同学asselect同学分组.同学编号,同学分组.姓名,号码,性别,E_mail,分组类型from联系人,同学分组where同学分组.同学编号=联系人.编号gocreateprocedure_所有联系人asselect*from联系人程序设计主程序的设计程序在运行期间要使用局部的变量来传递数据,所有这些变量都要在程序中定义。在VisualFoxPro6.0中新建一个工程文件,以“个人通讯录管理系统”的名称保存。翻开该工程的管理器,在管理器的“代码”选项卡中添加一个名为“MAIN”的代码文件,并在“MAIN”代码文件窗口中添加代码如下:SETTALKOFF&&关闭对话SETESCAPEOFF&&关闭ESCAPE键SETEXACTON&&翻开完全匹配SETEXCLUSIVEON&&翻开独占SETCONSOLEON&&将输出结果到发送到主窗口或当前窗口SETDATETOLONG&&设置长日期SETSCOREOFF&&关闭分值栏SETSAFETYOFF&&关闭平安提示SETSTATUSBAROFF&&关闭系统提示栏SETCENTURYON&&翻开世纪开关SETDELETEDON&&屏闭删除项SETSYSMENUOFF&&关闭系统菜单SETNOTIFYOFF&&关闭提示&&设置系统窗口属性_SCREEN.MaxButton=.F.&&取消最大化按钮_SCREEN.MaxWidth=800&&设置最大宽度_SCREEN.MaxHeight=600&&设置最大高度_SCREEN.Caption="个人通讯录管理系统"&&设置窗口标题_SCREEN.Picture='6.jpg'&&设置窗口背景图片_SCREEN.AutoCenter=.T.&&指定表单初次显示时,自动位于主窗口中央publicUserName,UserType&&定义全局变量Doxtcd.mpr&&翻开菜单DoFormfrmLogin.scxREADEVENTSProcedureOnQuitCLEAREVENTSCLOSEALLQUITEndprocedure登录界面的设计用户登录模块登录界面的作用是为了验证用户的合法性,只有合法的用户才能进入系统,并且要求使用者提供密码。设计完成的登录界面如图4.1所示。图4.3.1登录设计界面在该界面中显示当前的操作时间,该时间为本系统从操作系统中取出的时间,而且不允许操作者进行修改,所以在表单执行时会自动显示该时间,并设置成只读状态。此外,该登录界面还设置了一些美化操作。采用动态效果,让“欢送使用通讯录系统”动起来。密码错误将不许用户进入系统。上述功能的代码设计如下:对象cmdOK过程:ClickIFALLTRIM(thisform.txtUserName.Value)==''MessageBox("请输入用户名")RETURNENDIFIFALLTRIM(thisform.txtUserPwd.Value)==''MessageBox("请输入密码")RETURNENDIFSELECT用户表&&查找指定用户名为的记录LocateForAllt(用户名)=Allt(thisform.txtUserName.Value)IfFound()==.T.&&如果找到IfAllt(密码)==Allt(thisform.txtUserPwd.Value)&&比拟密码,成功那么进入MessageBox("欢送光临",64,"提示信息")UserName=用户名UserType=用户类型releasethisformElse&&比拟密码不成功MessageBox("密码不正确",16,"错误提示")EndifElse&&没有找到指定用户MessageBox("用户名不存在",16,"错误提示")Endif对象:Timer1过程:Timerlocali,j,ki=int(rand()*255)j=int(rand()*255)k=int(rand()*255)thisform.label3.forecolor=RGB(i,j,k)ifthisform.label3.left+180>0elsethisform.label3.left=360Endif用户注册模块设计完成的注册界面如图4.2所示。图4.3.2

登录设计界面对象:command(确定),过程:clickpublic

mima1,mima2mima1=trim(thisform.text2.value)

mima2=trim(thisform.text3.value)

if

mima1==mima2USE

用户表

APPEND

BLANK

REPLACE

用户名

WITH

ALLTRIM(THISFORM.TEXT1.VALUE)

REPLACE

密码

WITH

ALLTRIM(THISFORM.TEXT2.VALUE)

messagebox('恭喜您,注册成功~')

else

y=messagebox('两次输入的密码不一致~',16+0+0,'警告~')

if

y=1

thisform.text2.value=""

thisform.text3.value=""

endif

endif主界面设计该系统提供的所有功能都放置在一个统一的界面中供用户选择,该界面称之为主界面。本系统的主界面采用了菜单交互方式,如图4.2所示。

图4.3.3

主界面

在此界面上还提供了4项功能,下面对其分别进行介绍。

用户密码管理模块用户密码修改界面如图4.3所示。该界面的所有功能都在相同的界面下操作,选择菜单对应的用户密码修改/修改密码命令,弹出以下界面。上述功能的代码设计如下:

图4.3.4

用户密码管理界面确定:对象

cmdOk

过程:ClickIf

thisform.txt用户名.Value

=

""

MessageBox("用户名不存在",

16,

"提示")

return

Endif

If

ALLTRIM(thisform.txtPwd.Value)

!=

ALLTRIM(thisform.txt密码.Value)

MessageBox("密码不正确",

16,

"提示")

return

Endif

If

ALLTRIM(thisform.txtPwd1.Value)

==

""

MessageBox("请输入新密码",

16,

"提示")

return

Endif

If

ALLTRIM(thisform.txtPwd1.Value)

!=

ALLTRIM(thisform.txtPwd2.Value)

MessageBox("新密码与确认密码不同",

16,

"提示")

return

Endif

&&设置用户记录的密码

thisform.txt密码.Value

=

ALLTRIM(thisform.txtPwd1.Value)

TableUpdate(.T.)

&&保存缓冲区中的数据

release

thisform

&&关闭表单

MessageBox("密码已经成功修改,请在下次登录时使用新密码")取消:对象

cmdCancel

过程

Click

release

thisform查询管理模块查询管理模块界面如图4.5—4.6所示。这是系统的查询局部,是使用该系统的关键核心局部,里面涉及查询常用的三种方式,包括姓名、住址、联系方式查询。上述功能的代码设计如下:

图4.3.5按姓名查询界面

对象:Command1(查询)

过程:

Click

xm=allt(thisform.text1.value)

loca

for

姓名=xm

if.not.found(

)

.

messagebox("查无此人",1+32,"信息")

endif

thisform.refresh

对象:

Command2(退出)

过程:

Click

thisform.release

图4.3.6按住址查询界面对象:Command1(查询)

过程:

Click

xm=allt(thisform.text1.value)

loca

for

家庭地址=xm

if.not.found(

)

messagebox("查无此人",1+32,"信息")

endif

thisform.refresh

对象:

Command2(退出)

过程:

Click

Thisform.release

图4.3.7按通讯方式查询界面对象:Command1(查询)

过程:

Click

tx=allt(thisform.text1.value)

loca

for

住宅=tx.or.=tx.or.办公=tx.or.小灵通=tx

if.not.found(

)

messagebox("查无此人",1+32,"信息")

else

brow

for

住宅=tx.or.=tx.or.办公=tx.or.小灵通=tx

thisform.refresh

endif系统退出管理模块系统运行完成之后总要有关闭或退出模块以防止他人使用,为了用户的使用方便,该系统采用菜单交互式,即由用户选择文件/退出命令,退出系统。实现系统的关闭。界面如图4.7所示。图4.3.6

系统退出管理窗口导入模块该模块主要实现的功能是从文件中导入人员信息。通过函数voidload〔〕来实现,翻开文件进行通讯录建立操作,通过移动指针将通讯录的信息记录在文件中。系统测试图4.4.1程序的开始主菜单页面图4.4.2程序的录入界面图4.4.3程序的查询菜单界面图4.4.4程序的显示界面图4.4.5程序的按姓名查询界面图4.4.6程序的按号码查询界面图4.4.7程序的按类型查询界面图4.4.8程序的删除界面图4.4.9程序删除后的界面图4.4.10程序的修改界

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论