VFor通讯录系统Word格式.docx
- 文档编号:20488866
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:20
- 大小:2.35MB
VFor通讯录系统Word格式.docx
《VFor通讯录系统Word格式.docx》由会员分享,可在线阅读,更多相关《VFor通讯录系统Word格式.docx(20页珍藏版)》请在冰豆网上搜索。
数据浏览包括个人名片信息浏览和详细信息浏览两个子模块,用于浏览个人名片信息和详细信息;
数据维护含有添加数据,修改数据和删除数据三个子模块,用于及时对数据的更新维护;
统计报表有浏览报表和打印报表两个功能,可以实现对报表的预览和打印。
其体系结构图如下:
进入通讯录系统退出信息查询数据浏览数据维护统计报表打印报表预览报表详细信息浏览个人名片浏览详细信息查询个人名片查询数据删除数据修改数据添加三.详细设计为了方便,本系统的项目在项目管理器里完成,所以首先要新建一个项目,然后再在项目管理器里面创建数据库,文档,代码等。
1.创建项目创建项目的步骤如下:
1)创建一个用于存放系统所有相关文件的文件夹:
F:
052410150通讯录系统。
2)将VFP默认目录设置为上面创建的文件夹。
3)创建项目文件。
选择“文件”“新建”“项目”命令,在弹出的“新建”对话框中选择新建项目文件。
然后在弹出的对话框中选择好路径(F:
052410150通讯录系统),并输入项目名:
通讯录系统,最后点击保存即可。
2.数据库在“项目管理器”中选择“数据”“数据库”项,然后单击“新建”按钮,命名为“通讯数据”,再选择新建表。
本系统共创立三个表:
“个人名片”、“详细信息表”、“管理员表”.各数据表的结构如下:
个人名片详细信息表管理员表在表结构中填入信息即可得到数据库表。
之后需要为各表建立索引及永久性关联.最终的设计结果如下图:
3.创建表单在项目管理器的”文档”选项选项卡中新建表单即可创建表单。
1)封面表单该表单是软件的封面,用户进入系统便可看到,但在运行3秒后或用户单击后自动关闭,随即进入身份验证界面。
该表单设计界面如下图:
为使封面表单在3秒后自动关闭,并进入身份验证表单,为timer1控件的timerevent添加代码:
thisform.releasedoform身份验证为使封面表单在单击后能自动关闭,并进入身份验证表单,为form1的clickevent添加如下代码:
thisform.releasedoform身份验证保存表单.2)身份验证表单身份验证表单用于对登录用户进行身份验证,分为一般用户和管理员登录,密码正确输入后,管理员进入主菜单,而一般用户进入不能修改资料的主菜单2.其表单设计如下图:
为command1(caption=确定)的clickevent添加代码:
docasecasethisform.optiongroup1.value=1ifthisform.text1.value=aaaandthisform.text2.value=123456messagebox(欢迎使用本系统)do主菜单2.mprthisform.releaseelsei=i+1ifi=3messagebox(账号或密码错,重新输入)thisform.text1.value=thisform.text2.value=thisform.text1.setfocuselsemessagebox(信息有误,禁止进入!
)quitendifendifcasethisform.optiongroup1.value=2lname=alltrim(thisform.text1.value)pwd=alltrim(thisform.text2.value)use管理员表locatefor用户名=lnameiffound().and.密码=pwdusethisform.releasemessagebox(欢迎使用本系统)do主菜单.mprelsek=k+1ifk=3messagebox(账号或密码错,重新输入)thisform.text1.value=thisform.text2.value=thisform.text1.setfocuselsemessagebox(信息有误,禁止进入!
)quitendifendif为command2(caption=退出)的clickevent添加代码:
answer=messagebox(是否确定要退出系统,4+32,确定)ifanswer=6thisform.releasequitelsethisform.text1.setfocusendif保存表单.3)查询表单查询表单是为了完成各种信息的查询,有”个人名片查询”和”详细信息查询”两个表单.下面以”个人名片查询”为例说明.设计界面如下;
步骤如下:
选择“表单”“快速表单”命令,通过弹出的“表单生成器”快速把“个人名片”中的字段添加入表单。
然后对生成的标签及编辑栏进行布局调整,并将所有生成的编辑栏的readonly属性设置为T。
在表单中添加剩下的控件,command1(caption=开始查询)的clickevent添加如下代码:
sno=alltrim(thisform.text1.value)scanif个人名片.姓名=sno.or.个人名片.移动电话=snothisform.text1.value=thisform.refreshreturnendifendscanmessagebox(该人不存在!
0,查找失败)保存表单。
“详细信息查询”表单的设计如下:
3)浏览表单浏览表单让人们对信息进行浏览,分为“个人名片浏览”和“详细信息浏览”,与查询表单除了命令控件外制作方法相同,这里仅显示表单运行结果及命令代码。
个人名片浏览设计结果如下:
代码入下:
第一个:
gotopThisform.refresh上一个:
if.not.bof()skip-1thisform.refreshelsemessagebox(已经是第一个了!
)endif下一个:
if.not.eof()skipthisform.refreshelsemessagebox(已经是最后一个了!
)endif第末个:
gobottomThisform.refresh退出:
thisform.release保存表单。
详细信息浏览设计结果如下:
4)数据维护数据维护表单能完成各种信息的添加、修改或删除等操作,能实现对“个人名片”“详细信息表”“管理员表”三个表的维护。
其最终的设计结果如下图:
先为表单添加相应的控件,调整空间的属性后添加代码。
Form1控件的Initevent的代码:
publicstatebo1.additem(个人名片)bo1.additem(详细信息表)bo1.additem(管理员表)bo1.value=个人名片state=0this.grid1.recordsource=个人名片combo1控件的clickevent的代码:
thisform.grid1.recordsource=bo1.vlueCommand1(caption=添加)控件clickevent代码:
appendblankthisform.grid1.setfocusmand2.enabled=.F.thisform.refreshCommand2(caption=修改)控件clickevent代码:
aa=recno()goaathisform.grid1.refreshthis.enabled=.F.state=2thisform.grid1.allowaddnew=.F.thisform.grid1.readonly=.Fmand1.enabled=.Fmand3.enabled=.F.Command3(caption=删除)控件clickevent代码:
answer=messagebox(真的要删除当前记录吗?
4+32,确认删除)ifanswer=6deleteendifthisform.refreshCommand4(caption=保存)控件clickevent代码:
ifstate=1.or.state=2flushendifmand1.enabled=.Tmand2.enabled=.Tmand3.enabled=.T.thisform.grid1.readonly=.T.thisform.grid1.allowaddnew=.T.Command5(caption=刷新)控件clickevent代码:
thisform.refresh4.制作报表报表用于打印联系人的信息,故两张表联系起来打印出非常详细的报表“个人信息”报表。
其设计样式如下:
设计步骤:
在项目管理器中新建一个报表文件,将个人名片、详细信息表添加到报表的数据环境中,并建立关联。
利用报表控件工具栏在报表设计器中添加标签、直线等内容,再从数据环境中把相应的字段拖到细节带区,调整好各个控件的布局,最后为“业注脚”带区添加一个域控件,表达式为“页码”+alltrim(str(_pageno),得到上图的报表设计器样式。
5.系统主菜单各个功能模块设计完毕,需要设计功能主菜单将各个模块组合起来,形成一个完整的应用系统主界面,本系统的主菜单结构见概要设计的系统的体系结构。
由于登录身份不同拥有不同的权利,故设有两个不同的主菜单,管理员身份可以对该系统的数据维护(主菜单),而一般用户没有此功能(主菜单2)。
由于两菜单基本相同,就仅以“主菜单”为例来说明,其具体步骤如下:
在项目管理器中选择“其他”选项卡,然后选择新建菜单,弹出菜单设计器。
为表填如下图中的内容:
在文件的子菜单设计窗口中,单击“插入栏”按钮,在弹出的对话框中,选择“新建(N)”“插入”按钮,插入“新建”菜单项,在用相同的方法插入“关闭(C)”菜单项。
“预览报表”的编辑代码为:
reportform个人信息priview。
“打印报表”的编辑代码为:
reportform个人信息toprinter。
“退出”的编辑代码为:
setsysmenutodefautquit保存文件,文件名为主菜单。
建立菜单文件后,选择“菜单”“生成”命令,生成菜单程序文件为主菜单.mpr。
“主菜单2”只需减少“文件”及“数据维护”即可5)建立主程序本系统将主程序设置为主文件,命名为“主程序”。
运行系统时,首先运行的是主文件,然后再由主文件调用其他表单,以实现系统的各项功能。
该程序文件的代码如下:
closeallclearallsettalkoff_screen.caption=通讯录系统_screen.visible=.F.doform封面readeventssetsysmenutodefault最后选择“项目管理器”的“代码”选项卡,找到“主程序”,对其右击,在弹出的快捷菜单中“设置主文件”命令,把“主程序”程序文件设置为主文件。
6)连编在项目管理器中单击“连编”按钮,将会弹出“连编项”,选择“连编可执行文件”、“重新编译全部文件”、“显示错误”,最后单击确定,即可生成EXE可执行文件,得到通讯录系统.EXE文件。
四.效果及存在问题进入系统后,首先出现的是封面:
三秒钟后或单击页面后自动进入身份验证表单:
一般用户进入后,进入主菜单2:
管理员进入后进入主菜单:
可以进行信息查询,包含个人名片查询和详细信息查询,如果进行个人名片查询,输入名字:
马妍颦,点击开始查询,出现以下界面:
可以进行信息浏览,包含个人名片浏览和详细信息浏览,如果选择个人名片浏览,出现以下界面:
通过点击上面的五个按钮进行依次浏览。
点击数据维护,进行对数据信息的修正,此模块只出现在主菜单中,主菜单2不含有此功能,进入后,出现下面的表单:
该系统运行效果良好,界面清新温暖,设计方便易行,但也有一定的不足之处。
例如,该系统只适用于个人,不适合单位集体使用,解决办法是:
在建数据库时,多增加一些信息,且进行分类型建表。
五.心得体会此次对vfor的课程设计,我自己单独做了完全属于自己的系统,过程是坎坷的,挑战一路相随。
尤其是刚做的时候,找不到方法,对所有的东西与很不熟悉,完全的不上道,所学的东西也不会应用,完全不知道是怎么回事。
有过急躁,有过放弃,直想抓狂。
后来终于了解到一点轮廓,再联系老师讲过的命令等知识,慢慢找到了门道,并开始对自己严格要求。
每做出一点,心情就会很好,很有成就感。
之前一直是用着各种各样的软件,从未想过自己也可以做,竟然还能运行。
Vfor真是一个不可思议的东西,很感谢老师教会我了这些东西。
另外,由刚开始的错误,我不仅认识到了细节的重要性,细节决定成败,更加学会了,在出现问题的时候,抱怨是没有用的,应该做的是找到原因,获得解决事情的办法。
六.参考文献1VisualFoxPro数据库技术与应用机械工业出版社2009年版曾碧卿、杨滨、李国伟主编2VisualFoxPro及其应用系统开发第二版清华大学出版社史济民主编.忽略此处.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VFor 通讯录 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)