基于Visual FoxPro的通讯录设计 毕业设计_第1页
基于Visual FoxPro的通讯录设计 毕业设计_第2页
基于Visual FoxPro的通讯录设计 毕业设计_第3页
基于Visual FoxPro的通讯录设计 毕业设计_第4页
基于Visual FoxPro的通讯录设计 毕业设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

课程设计说明书(论文)用纸PAGEPAGEIII课程设计说明书(论文)用纸PAGEI摘要VisualFoxPro是一种用于数据库设计、创建和管理的软件,利用它可以对各种事务管理工作中的大量数据进行有效的管理并满足数据检索的需要。随着计算机技术的飞速发展和计算机在信息管理中应用的普及,人们的生活摆脱了传统式的记事本、电话簿,越来越多的靠计算机来帮助人们记住这些事情,极其简便,于是利用计算机实现通讯录管理与应用系统势在必行。本系统就是根据日益繁多的人际交往的需要,用VisualFoxPro6.0开发一个通讯录管理系统与应用来实现对通讯信息准确、高效的管理和维护。整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成通讯应用管理的全过程,包括数据的浏览、修改、添加和删除,利用不同方式对信息进行管理和查询以及用户管理权限的改变等。本文主要介绍了本课题的开发背景,系统的设计思路、总体设计。重点说明了系统的各个功能模块的设计与实现,并对系统进行了测试和运行说明。关键词:VisualFoxPro6.0,通讯录管理与应用,信息管理和测试

目录1绪论 11.1研究背景 11.2开发意义 11.3本文结构 22需求分析 32.1系统的可行性分析 32.1.1经济上的可行性 32.1.2技术上的可行性 32.2功能需求分析 43概要设计 53.1系统功能模块设计 53.1.1日常档案管理模块 53.1.2毕业生档案管理模块 53.1.3学生成绩管理模块 53.1.4用户权限修改模块 53.2系统模块结构图 53.3数据库的设计 64详细设计 94.1主程序的设计 94.2登录界面的设计 104.3主界面设计 124.4日常档案管理模块 134.5毕业生档案管理模块 174.6学生成绩管理模块 184.7用户权限修改模块 195系统连编与运行 235.1连编 235.2运行 23结论 24参考文献 25第27页共25页第25页共25页1绪论1.1研究背景通讯录管理是一个专门针对人际交往问题、存储用户信息以及一些简单个人信息的实用管理系统,它方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。随着近年来计算机技术在我国的迅猛发展以及人际交往的日益繁多,人们的生活摆脱了传统式的记事本、电话簿,越来越多是使用计算机。因此利用计算机来对通讯录信息进行管理已成为一个不可逆转的趋势。计算机所拥有的存储量大、易查找、易更新、保密性好、数据处理快等诸多优点极大的解决了以前记事本、电话薄传统管理信息的缺点,提高了工作效率。通讯录作为一个大量存储信息的工具,信息的使用、查找、修改等的实现尤为重要。面对通讯信息量不断增长的问题,很多用户都选择了在通讯录管理中引入计算机管理系统。因此一个好的通讯录管理与应用系统,对于任何一所企业或个人来说都是非常需要的。1.2开发意义通讯录系统管理与应用,是针对通讯档案资料管理情况而设计的一款信息管理应用。该系统应用VisualFoxPro6.0自带的数据库来存储每个人的联系方式和资料,方便了用户对众多客户、朋友、同事等个人信息的储存和快速查阅的功能,大大减少了查找过程的时间。开发该系统主要有两方面的意义,一方面利用计算机来管理通讯录信息和资料,可以减少大量的人力资源,提高工作效率。另一方面用户可以方便的通过自己电脑的通讯录管理系统,来随时查阅自己所需要的信息,而不必再大费周折去翻开那繁琐的记事本。1.3本文结构本文主要由以下几部分构成:(1)绪论。主要包括研究背景和现存在的问题。(2)系统分析。主要包括系统在经济上和技术上的可行性。(3)系统总体设计。主要包括系统功能模块设计和数据库设计两部分。(4)系统详细设计。主要介绍了各个界面的具体功能的操作方法和实现方法。(5)系统的测试。

2需求分析目前,日益繁多的人际交往使得我们很难搞清楚与每个人之间的联系方式,使用记事本等管理大量资料信息,不但工作繁琐而且效率低下,如果利用现代化的管理方式来管理这些信息的话,就会简单方便地多。2.1系统的可行性分析目的:可行性研究的目的是用最小的代价在尽可能少的时间内确定问题是否能够解决。而该系统正是用比较简单的VFP语言,来编写的小型的、实用的通讯录信息管理系统,既能很好的完成对用户信息的管理,又比较经济实惠。2.1.1经济上的可行性由于计算机的普及和人民生活水平的提高,使用电脑完成对通讯录管理势在必行,微机的配置只要在存储量,速度方面都能满足数据库运行的要求就可以了,故在计算机硬件方面不需要太大的花销。2.1.2技术上的可行性本系统采用的是VFP语言,在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上也有很丰富的相关资料,通过参考一些功能模块程序的设计,实现该系统是完全可以的。本系统的设计是在windowsxp中文版环境下,使用VisualFoxpro6.0开发的。它是可以运行于windows2000及xp相关平台的数据库开发系统。VisualFoxpro6.0不仅可以简化数据库管理,而且应用程序的开发流程更为合理,它使组织数据,定义数据库规则和建立应用程序等工作变得简单易行,利用可视化的设计工具和向导,用户可以快速地创建表单、查询等。2.2功能需求分析本系统主要实现对通讯录信息进行管理,需要实现以下几个方面的管理功能:(1)通讯录管理信息:信息的添加、删除、浏览、修改和查询等操作。(2)系统维护:包括用户登录,用户修改密码,数据的修改、浏览、添加、删除以及按姓名、联系方式、地址进行查询。(3)打印报表:可以根据用户需要打印特定条件的信息报表。3概要设计3.1系统功能模块设计通讯录管理系统主要功能分为三个模块,包括用户登录和修改密码、系统维护和数据的操作、信息管理和查询。基本上满足了用户通讯录管理与应用的必需功能,下面将详细介绍各功能模块。3.1.1系统数据流程浏览记录浏览记录添加记录删除记录修改记录用户修改密码按姓名查询按地址查询按联系方式查询3.1通讯录管理系统数据流图查询方式方、在系统数据流程图中,该系统完成对用户通讯信息管理的使用和应用。如用户登录、修改、查询、记录的基本操作等主要功能。在本系统设计中,为了保持界面的一致性,所有的日常操作都使用统一的操作界面,根据用户的选择来显示操作的功能按钮。3.1.2用户权限修改模块该模块是对系统的使用者进行管理的场所,包括新建用户,修改,查询用户等的功能。3.2系统模块结构图3.2.1系统功能结构模块本次系统设计主要有登录管理、菜单界面管理、系统维护管理四个系统模块组成,其系统模块结构如图3.1所示。通讯录管理通讯录管理系统登录窗口菜单操作系统维护系统功能结构图图3.2系统功能结构图3.2.2用户功能模块用户用户浏览查找修改查询方式退出图3.3用户功能图3.3数据库的设计数据库中包括系统用户表、通讯表各表结构设计如下。1、系统用户表用户表代表了一个用户的个人信息,是不允许随意修改的,所以本系统采用了一定的保密措施,主要是用户的管理,所有的用户信息保存在这个表中,该表被命名为用户表.Dbf,其结构如表3.4所示。表3.4系统用户表结构编号字段名字段类型字段长度小数位数作用1姓名字符型100用户名称2密码字符型100用户密码3用户类型数值型10用户类型2、通讯录.DBF。其结构如表3.5所示。主要是通讯录信息的管理,包括联系方式、地址、电话等。该表被命名为通讯录.DBF,其结构如表3.5所示。表3.5通讯录表结构编号字段名字段类型字段长度小数位数1编号字符型202姓名字符型603性别字符型204出生年月日期型805住宅电话字符型1006办公电话字符型1007手机字符型1108小灵通字符型809qq字符型9010e-mail字符型20011备注字符型10012家庭住址字符型10013邮政编码字符型104详细设计4.1主程序的设计程序在运行期间要使用部分的变量来传递数据,所有这些变量都是在程序中定义的。在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.mprDoFormfrmLogin.scxREADEVENTSProcedureOnQuitCLEAREVENTSCLOSEALLQUITEndproc4.2登录界面的设计登录界面的作用是为了验证用户的合法性,只有合法的用户才能进入系统,并且要求使用者提供密码。通过上述措施就限制了非法用户的进入,确保了信息的安全性。设计完成的登录界面如图4.1所示。图4.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>0thisform.label3.left=thisform.label3.left-10elsethisform.label3.left=360endif4.3主界面设计该系统提供的所有功能都放置在一个统一的界面中供用户选择,该界面称之为主界面。本系统的主界面采用了菜单交互方式,如图4.2所示。图4.2主界面在此界面上还提供了4项功能,下面对其分别进行介绍。4.4用户密码管理模块用户密码修改界面如图4.3所示。该界面的所有功能都在相同的界面下操作,选择菜单对应的用户密码修改/修改密码命令,弹出以下界面。上述功能的代码设计如下:图4.3日常管理设计界面(1)确定:对象cmdOk过程:ClickIfthisform.txt用户名.Value=""MessageBox("用户名不存在",16,"提示")returnEndifIfALLTRIM(thisform.txtPwd.Value)!=ALLTRIM(thisform.txt密码.Value)MessageBox("密码不正确",16,"提示")returnEndifIfALLTRIM(thisform.txtPwd1.Value)==""MessageBox("请输入新密码",16,"提示")returnEndifIfALLTRIM(thisform.txtPwd1.Value)!=ALLTRIM(thisform.txtPwd2.Value)MessageBox("新密码与确认密码不同",16,"提示")returnEndif&&设置用户记录的密码thisform.txt密码.Value=ALLTRIM(thisform.txtPwd1.Value)TableUpdate(.T.)&&保存缓冲区中的数据releasethisform&&关闭表单MessageBox("密码已经成功修改,请在下次登录时使用新密码")(2)取消:对象cmdCancel过程Clickreleasethisform4.5数据维护管理模块数据信息管理界面如图4.4—4.7所示。这是系统的核心部分,是维护该系统信息的重要组成部分,包括数据的浏览、添加、修改和删除。上述功能的代码设计如下:4.4数据信息的浏览界面4.5数据信息的添加界面(1)对象:Command1(增加按钮)过程:Clickinsertblankthisform.txt编号.value=str(recno(),4,0)jtdz=thisform.txt家庭地址.valuexm=thisform.txt姓名.valuebhdh=thisform.txt办公电话.valuexb=thisform.txt性别.valueqq=thisform.txtqq.valueemail=thisform.txte_mail.valuezzdh=thisform.txt住宅电话.valuebz=thisform.txt备注.valuesj=thisform.txt手机.valuexlt=thisform.txt小灵通.valuethisform.refresh(2)对象:Command2(保存按钮)过程:Clickifempty(xm)messagebox("姓名不能为空!")elsego1locatenextrecno()-1for姓名==xmiffound()ifmessagebox("记录已经存在,是否替换?",1+48,"警告")=1replace通讯录.家庭地址withjtdz;通讯录.姓名withxm,通讯录.办公电话withbgdh;通讯录.性别withxb,通讯录.qqwithqq;通讯录.e_mailwithemail,;通讯录.住宅电话withzzdh,通讯录.备注withbz;通讯录.手机withsj;通讯录.小灵通withxltendifelserepl通讯录.家庭地址withjtdz;通讯录.姓名withxm,通讯录.办公电话withbgdh;通讯录.性别withxb,通讯录.qqwithqq;通讯录.e_mailwithemail,;通讯录.住宅电话withzzdh,通讯录.备注withbz;通讯录.手机withsj,通讯录.小灵通withxltendifendif(3)对象:Command3(浏览按钮)过程:Clickdoform浏览thisform.release(4)对象:Command4(退出按钮)过程:Clickthisform.release4.6数据信息的修改界面(1)对象:Command1(第一条)过程:Clickgomand1.enabled=.mand4.enabled=.mand3.enabled=.mand2.enabled=.f.thisform.dythisform.refresh(2)对象:Command2(上一条)过程:Clickskip-1mand3.enabled=.mand5.enabled=.t.ifbof()messagebox("已经到第一个!")mand2.enabled=.mand5.enabled=.f.elsethisform.dyendifthisform.refresh(3)对象:Command3(下一条)过程:Cmand5.enabled=.t.ifeof()messagebox("已经到最后一条!")mand3.enabled=.mand5.enabled=.mand2.enabled=.mand2.enabled=.t.endifthisform.dythisform.refresh(4)对象:Command4(最后一条)过程:Clickgomand1.enabled=.mand4.enabled=.mand3.enabled=.mand2.enabled=.t.thisform.dythisform.refresh(5)对象:Command5(修改)过程:Clickgorecno()thisform.txt姓名.readonly=.f.thisform.txt邮政编码.readonly=.f.thisform.txt性别.readonly=.f.thisform.txt手机.readonly=.f.thisform.txt小灵通.readonly=.f.thisform.txt住宅电话.readonly=.f.thisform.txtqq.readonly=.f.thisform.txte_mail.readonly=.f.thisform.txt办公电话.readonly=.f.thisform.txt家庭地址.readonly=.f.thisform.txt备注.readonly=.mand6.enabled=.t.(6)对象:Command6(保存)过程:Clickifempty(xm)messagebox("姓名不能为空!")elsereplace通讯录.家庭地址withjtdz;通讯录.姓名withxm,通讯录.办公电话withbgdh;通讯录.性别withxb,通讯录.qqwithqq;通讯录.e_mailwithemail,;通讯录.住宅电话withzzdh,通讯录.备注withbz;通讯录.邮政编码withyzbm,通讯录.手机withsj;通讯录.小灵通withxltendifthisform.txt姓名.readonly=.t.thisform.txt邮政编码.readonly=.t.thisform.txt性别.readonly=.t.thisform.txt手机.readonly=.t.thisform.txt小灵通.readonly=.t.thisform.txt住宅电话.readonly=.t.thisform.txtqq.readonly=.t.thisform.txte_mail.readonly=.t.thisform.txt办公电话.readonly=.t.thisform.txt家庭地址.readonly=.t.thisform.txt备注.readonly=.mand6.enabled=.f.(7)对象:Command7(退出)过程:Clickthisform.release4.7数据信息的删除界面(1)对象:Command1(第一条)过程:Clickgomand3.enabled=.mand2.enabled=.f.thisform.refreshn=recno()(2)对象:Command2(上一条)过程:Cmand3.enabled=.t.ifbof()messagebox("已经到第一个!")mand2.enabled=.f.endifthisform.refreshn=recno()(3)对象:Command3(下一条)过程:Clickskipifeof()messagebox("已经到最后一个!")mand3.enabled=.mand2.enabled=.mand2.enabled=.t.endifthisform.refreshn=recno()(4)对象:Command4(最后一条)过程:Clickgomand3.enabled=.mand2.enabled=.t.thisform.refreshn=recno()(5)对象:Command5(删除)过程:ClickUSE通讯录exclgondeleifmessagebox("你真的要删除记录吗?",1+32,"删除提示")=1replrest编号with编号-1packendifthisform.refresh(6)对象:Comman

温馨提示

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

评论

0/150

提交评论