秦皇岛旅游信息查询系统
东北大学秦皇岛分校
姓名:
学号:
指导教师:
日期: 20##年 06 月 17 日
总体功能介绍:
此系统为秦皇岛旅游信息查询系统,为用户提供旅游信息的查询及修改功能。
此系统通过密码登录来给用户提供,此系统对不同旅游景点提供数据查询功能精确查找,提供景点名称,景点票价,景点星级,景点位置,景点简介等信息,使用户可以全方位了解各个景点,以便明确地锁定自己的旅游目标及方便用户的旅游过程。此系统还提供数据维护功能,包括对数据的添加,修改和删除。针对精确查询,还可以提供给用户打印报表的功能,以保证输出的可行性。
二、功能模块结构图
数据库
相关表:users 旅游景点
数据库表
旅游景点:creat table 旅游景点(景点名称 c(18),景点票价 n(3),,景点简介 m,景点星级 c(2),景点预览 g,景点位置 c(11))
users:creat table users (用户代码 c(7),用户密码 c(10))
点击vf文件夹里的main.prg,进入封面主界面点击进入,进入登陆界面,选择用户名登录,用户名(用户名为1234,密码为1111),登陆成功后,点击菜单下的各个子菜单,可以在各相应表单上进行对应操作。进入相应的界面后便可以进行数据(数据录入、数据编辑、数据删除)查询、退出(注:如不登录,则不能进行以上功能)。在景点查询中,使用者可以通过上一条,下一条命令对景点信息进行浏览。精确查询可以精确显示每个景点的信息,并打印显示的结果。系统维护中可以对景点信息进行修改、添加、删除。使用结束后点击菜单栏的退出按钮,退出系统。
(一)封面:
Timer1: thisform.release
do form 登录表单.scx
属性窗口:Enabled改为 .T.-真(默认)interval 4000
Timer2: thisform.shape1.left=100*rand()
thisform.shape1.top=100*rand()
thisform.shape1.height=100*rand()
thisform.shape1.width=100*rand()
属性窗口:Enabled改为 .T.-真(默认)interval 100
Shape1:backcolor:255,255,255 bordercolor:128,255,255 curvature 99
Label1 autosize: .T.-真 backstyle 0-透明 caption 秦皇岛旅游景点
封面的click: thisform.release
do form 登录表单.scx
init: public a,b
a=5
b=5
keypress: thisform.release
do form 登录表单.scx
(二)登录界面
界面设置:
添加代码:
① 确定”的click event:
i=i=1
uid=alltrim(thisform.TxtUserCode.value)
pwd=alltrim(thisform.TxtPassword.value)
loca for 用户代码=uid
if not found()
messagebox("无此用户",0,"秦皇岛旅游点查询系统")
thisform.TxtUserCode.selstart=0
thisform.TxtPassword.sellength=len(thisform.TxtUserCode.text)
thisform.TxtUserCode.setfous
return
endif
if alltrim(用户密码)==pwd
thisform.release
do form frmmain.scx
else
if i>3
messagebox("三次密码输入不对,系统将退出!")
thisform.release
endif
messagebox("密码不正确,请重新输入!"+ "你还有" + alltrim(sta(3-i))+"次机会。")
thisform.TxtPassword.selstart =0
thisform.TxtPassword.sellength =len(thisform.txtpassword.tex)
thisform.TxtPassword.setfocus
endif
② 退出”的click event:quit。退出VF系统。
(三)欢迎界面
界面设置:
表单 frmmain init: do mnumain.mpr with this,.t.
public a,b
a=5
b=6
load: thisform.width =_screen.width/2
thisform.height=_screen.height/2
thisform.left=(_screen.width-this.width)/2
thisform.top=(_screen.height-this.height)/2
unload: quit
添加代码:
① Timer1”的timer event:
if thisform.label1.left+thisform.label1.width<0
thisform.label1.left=thisform.width
else
thisform.label1.left=thisform.label1.left-100
endif
属性窗口:Enabled改为 .T.-真(默认)interval 270
② Timer3的timer event:
thisform.label1.left=thisform.label1.left+a
thisform.label1.top=thisform.label1.top+b
if thisform.label1.left<0 or thisform.label1.left+thisform.label1.width>thisform.width
a=-a
endif
if thisform.label1.top<0 or thisform.label1.top+thisform.label1.height>thisform.height
b=-b
endif
属性窗口:Enabled改为 .T.-真(默认)interval 100
(四)查询
精确查询
添加代码:
① “combo2”的controlsouce改为“旅游景点.景点名称”
“form1”的数据环境设为“旅游景点”
“确认”的click event:
sele * from 旅游景点 where 景点名称=thisform.combo1.value into cursor a
thisform.text1.value=a.景点票价
thisform.text2.value=a.景点星级
thisform.text3.value=a.景点位置
thisform.edit1.value=a.景点简介
② 打印”的click event:
sele * from 旅游景点 where 景点名称=thisform.combo1.value into dbf baobiao
report form baobiao preview
baobiao:
设计图,数据环境设为“baobian.dbf”
③ “退出”的click event:thisform.release
报表打印效果:
(五)数据维护
子模块1:数据录入
界面设置
添加代码:
①“确定”的click event:
dimension xx(5)
xx(1)=thisform.text1.value
xx(2)=thisform.text2.value
xx(3)=thisform.text3.value
xx(4)=thisform.text4.value
xx(5)=thisform.text5.value
use 旅游景点
append blank
gather from xx fields 景点名称,景点票价,景点简介,景点星级,景点位置
thisform.旅游景点.recordsource="旅游景点"
②“退出”的click event:thisform.release
效果如图:
子模块2数据编辑
界面设置
添加代码:
① combo1”的click event:
sele * from 旅游景点 where 景点名称= thisform.combo1.value into cursor temp1
thisform.grd旅游景点.recordsource = 'temp1'
thisform.refresh
② 确定”的click event:
replace 旅游景点.景点名称 with thisform.text1.value
replace 旅游景点.景点票价 with thisform.text2.value
replace 旅游景点.景点简介 with thisform.edit1.value
replace 旅游景点.景点星级 with thisform.text4.value
replace 旅游景点.景点位置 with thisform.text5.value
thisform.grd旅游景点.recordsource ="旅游景点"
thisform.refresh
thisform.text1.value=""
thisform.text2.value=""
thisform.edit1.value=""
thisform.text4.value=""
thisform.text5.value=""
③“退出”的click event:thisform.release
子模块3 删除
界面设计:
添加代码:
①“确定”的click event:
set deleted on
delete
pack
thisform.grd旅游景点.recordsource="旅游景点"
②“退出”的click event:thisform.release
效果如图:
通过这段时间对VF 的学习,我学到了很多,从最开始连插入背景图片都困难的我,最后做出了这个系统,还通过网络加入了一些动态的字幕、大小不定、路径不定的圆圈,特别是最后阶段的课程设计,更让我受益非浅,做后觉得VF 并没有想象中的那么难、那么恐怖。这个课程设计是对我们这学期所学知识的综合测试,同时也提供了查漏补缺的机会,一些在课堂上不清楚或听不懂的问题都通过这次的实际操作得到了很好的解决。这项作业需要我们认真对待,多动手实践,在实践中发现问题。在操作中,每一步都必须细心谨慎,即使是一个小小的标点也,马虎不得。每一个字码都不能错,一个名字也不能随便改动。
经济管理学院
课程设计题目
专 业 班 级 会计0904
学 生 姓 名 李彦春
学 号 11
指 导 教 师 丁胜峰
年 月 日
一、课程设计的目的和意义
(字体:宋体;字号:小四)
目的:根据《数据库管理系统》课程讲授内容,自主完成一个管理系统的设计,掌握课堂所讲的内容,熟悉VF软件的使用,提高用计算机解决实际问题的能力。
意义:通过本课程的设计,熟悉掌握了数据库的设计、表单的设计、表单与数据库的连接、SQL语言的使用以及简单VF程序的编写。还可以进一步清楚数据库表单设计是如何实现的,掌握它可以设计出自己满意的应用程序。
二、系统功能设计
要求:(字体:宋体;字号:小四)
1.说明该系统能够实现哪些功能
基本实现仓库材料的管理,包括系统的登录、材料入库信息的录入、材料出库信息的录入、材料入库信息的查询、材料出库信息的查询、库存材料信息的查询、库存材料信息的修改、库存材料信息的删除以及库存材料信息的统计。
2.画出系统功能模块图
三、系统设计内容及步骤
数据库表结构
1.学生信息表结构
3.1在项目管理器中新建一个项目:
文件—新建—项目,如下所示:
3.2登录界面设计
3.3主界面设计
3.4学生信息查询
3.5学生信息录入
3.6学生信息浏览
3.7学生信息修改
3.8学生信息删除
3.9学生信息管理
四、测试及分析
对本系统作一个全面的评价:包括有何特点、存在的问题、改进意见等。
特点:
(1)方便简单。使用代码进行设计,该系统同可以使我们方便的登录学生
信息管理系统,进行学生基本信息的查询,以及可以随意的浏览学生的每一条记录,也可以进行学生基本信息的修改,或删除,也可以录入,统计。
(2)减少数据冗余实现数据共享。在数据库系统中,对数据的定义和描述已经从程序中分离出来,通过数据库管理系统来统一管理。数据的最小访问单位是字段,既可以按字段的名称存取库中某一个或某一组字段,亦可存取一条记录或一组记录。在建立数据库时,应可以面向全局的观点组织数据库中的数据,而考虑某一部门的局部应用,这样才会发挥数据共享的优势。
(3)各控件的设计,如标签、文本框、列表框、表格等可以实现特定的交互功能,随意进入想要进入的表单。
问题:1.写代码可能比较复杂,而且有些代码比较容易写错。
2.应注意存储路径,若路径错误,可能发生命令的错误或不能执行。
3.同时应注意个表单之间的关联性,以方便进入。
4.数据类型应匹配,若不匹配,程序将无法运行。
5.表单的Caption属性,数据源等都应注意是否填写正确。
6.所有的Controlsource都是表中字段,因而在屏幕上改变数据,立即会对表中记录进行修改,修改操作虽然方便,但难以保证数据安全,查询时,先要点击文本框。
7.在text中输入查找内容,麻烦且容易出错。
改进意见:将各控件绑定数据源改为内存变量。VF的程序命令还是有些繁琐,而且容易出错,最好是用一种简单便捷的方式,利用更加简单的语言进行设计。运用“布局”实现各控件的上下左右的对齐,以及大小的设置一致,让其美观大方,交互功能强。
五、结束语
通过做课程设计,你有何感想,学到了什么?
感想:通过课程的设计,和同学老师一起讨论作出属于自己的一个材料管理系统,在收获知识的同时,还收获了阅历,收获了成熟,在此过程中,我们通过积极努力,请教老师,不仅培养了对立思考、动手操作的能力,在各种其他能力上也都有了提高。更重要的是,在实验课上,我们学会了很多学习的方法。而这是日后最实用的,真的受益匪浅。要面对社会的挑战,只有不断地学习、实践,再学习、再实践。之所以做课程设计,不仅是因为他是教学内容的一部分,同时也可以锻炼自己的VF语言编程能力,养成良好的VF语言编程风格。不管怎样,这些都是一种锻炼,一种知识的积累,能力的提高。完全可以不这个当作基础东西,只有掌握了这些最基础的,才可以更进一步,取得更好的成绩。很少会有人一步登天吧 。永不言弃才是最重要的。就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变得更加成熟,会面对需要面对的事情。但还是觉得有很多地方还需进一步学习,比如有代码错误自己却找不出原因何在。
学习:通过本次的课程实践我学会很多东西如简单的编程,使用VF语言,运用代码相当于一种语言可以实现数据信息的管理等以及各控件的使用,如:文本框等。在实践过程中,明白要特别注意控件的属性以及各代码的编写。
附录:源代码清单
登录源代码:
用户名=alltrim(thisform.text1.value)
密码=alltrim(thisform.text2.value)
if 用户名="111111" and 密码="111111"
do form 主界面
thisform.release
else
wait "用户名或密码错误" window timeout 3
thisform.num=thisform.num+1
if thisform.num=3
wait "错误的次数已超过3次" window timeout 5
thisform.release
else
thisform.text1.value=""
thisform.text2.value=""
wait "继续输入" window timeout 5
endif
endif
学生信息查询源代码:
thisform.grid1.recordsource = "select * from 学生信息 where 学号=alltrim(thisform.text1.value) into cursor lsb"
学生信息录入源代码:
insert into 学生信息 values(thisform.text1.value,thisform.text2.value,thisform.text3.value,thisform.text4.value,
学生信息修改源代码:
xh=thisform.text1.value
xm=thisform.text2.value
xb=thisform.text3.value
mz=thisform.text4.value
csrq=thisform.text5.value
jtzz=thisform.text6.value
szbj=thisform.text7.value
zymc=thisform.text8.value
rxrq=thisform.text9.value
zzmm=thisform.text10.value
update 学生信息 set 学号=xh,姓名=xm,民族=mz,出生日期=csrq,家庭住址=jtzz,所在班级=szbj,专业名称=zymc,入学日期=rxrq,政治面貌=zzmm where 学号=xh
学生信息删除源代码:
xh=thisform.text1.value
delete from 学生信息 where 学号=xh
学生信息管理源代码:
select count(*) as 学生人数 from 学生信息 where 专业名称 = alltrim(thisform.text1.value) into cursor lsb
select lsb
go top
thisform.text2.value = 学生人数
指导教师评语及成绩
指导教师评语及成绩
1课程设计目的课程设计是船舶设计原理课程重要的实践性教学环节是培养学生掌握船舶设计基本原理和能力的技术基础主尺度论证与总布置设计是…
一设计目的1强化上机动手能力在理论和实践的基础上进一步巩固数据结构课程学习的内容掌握工程化软件设计的基本方法2掌握图的创建和应用3…
中国计量学院信息工程学院课程设计报告课程设计名称系统设计与仿真课程计二级学院信息工程学院专业班级10电信2班学姓成绩号名10003…
信息科学与工程学院高级语言程序设计课程设计报告学生成绩管理系统学科专业计算机科学与技术班级1301学号指导教师唐郑熠讲师学生二零年…
扬州大学数据结构课程设计报告课题名称姓名学院系科班级指导老师日期自来水管架设问题广陵学院陈宏建1一课程设计的题目自来水管理架设问题…
VFP课程上机操作报告一目的关系数据库管理系统课程的学习不仅需要理论上的深入探讨而且需要通过实践上机自己开发一个数据库管理信息系统…
目录一需求分析3功能需求3数据需求3二建库结果3数据关系ER图4数据表结构4三系统开发设计4开发流程4功能介绍6四关键和难点问题及…
计算机等级考试成绩查询系统目录内容摘要2第1章概述311系统实现的目标312系统实现的方案313系统实现的环境314具体的开发方法…
VF数据库技术课程设计一题目见附表2二任务要求每二个人一组一组一个题目二人合作或单独完成按期完成题目要求的数据库系统以软件形式提供…
数据库原理与应用课程设计报告职工信息管理系统一系统介绍11功能简介职工信息管理系统的功能是管理职工的个人信息包括对其进行查询修改打…
姓名班级学号多级负反馈放大器的研究一实验目的1掌握用仿真软件研究多级负反馈放大电路2学习集成运算放大器的应用掌握多级集成运放电路的…