VF学生管理系统设计过程和代码文档格式.docx
《VF学生管理系统设计过程和代码文档格式.docx》由会员分享,可在线阅读,更多相关《VF学生管理系统设计过程和代码文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
数据库
N
高等数学
英语
总分
B
口令表:
字 段
索 引
Id
Ps
12
日志表
登陆时间
离开时间
(2)4个报表(打印按钮)
学生信息表;
学生成绩表;
口令表;
(3)1个菜单
数据查询数据浏览系统维护系统管理
信息表维护口令设置
成绩表维护帐户管理
系统日志
数据备份
数据恢复
退出系统
数据库系统的具体情况:
欢迎界面表单
要求:
“欢迎使用”计时器控件
“学生管理系统”标签
“进入系统”按钮和“退出系统”按钮
点击“退出系统”按钮---------返回到Windows界面
点击“进入系统”按钮进入系统登陆表单
“学生管理系统登陆”,“请输入用户”和“请输入密码”3个标签
2个文本框
“确认”和“退出”两个按钮
当输入帐户和密码正确时,点击“确认“按钮,进入主菜单
如果输入密码错误时,显示
当输入三次以后,显示
点击确定后,显示
点击“是”后,退出系统,返回Windows界面。
数据查询菜单
点击该菜单后,显示页面
“数据查询”、“数据查询”、“查询方式”、“输入查询值”标签
“确定”、“退出”按钮
1个文本框
1个编辑框
2个选项按钮组
在“学生信息表”“学生成绩表”“按学号查询”“按姓名查询”四个选择2项后,在文本框中输入查询值,点击“确定”按钮后,在文本框中显示查询结果;
点击“退出”按钮,返回主菜单
数据浏览菜单
“学生数据浏览”、“今日的日期是”、“当前时间是”标签
1个页框(包含2个页面)
“退出”按钮
2个标签
1个timer控件(显示系统时间)
当点击“退出”按钮后,返回到主菜单。
在“学生成绩表”页面中
在这个页面中,包含:
“学号”、“姓名”、“数据库”、“高等数学”、“英语”、“总分”标签以及对应文本框
“首记录”、“上一条”、“下一条”、“尾记录”4个按钮
点击按钮时候,显示相应的学生成绩表中的记录。
在“学生信息表”页面中
在这个页面中,包含一个表格。
系统维护菜单
(1)子菜单:
成绩表维护表单
1个表格(显示学生成绩表)
“学号”、“姓名”、“数据库”、“高等数学”、“英语”、“总分”标签以及对应文本框
1个组合按钮(“首记录”,“上一个”,“下一个”,“尾记录”,“添加”,“编辑”,“删除”,“打印”,“退出”)
当点击“首记录”,“上一个”,“下一个”,“尾记录”按钮时,在文本框中显示相应的记录;
当点击“添加”按钮后,显示
可以输入记录,点击“保存”按钮后,返回界面。
当点击“编辑”按钮后,显示
可以修改已经存在的记录,并点击“保存”返回。
当点击“删除”按钮后,显示
选择“是”后,对删除的记录作删除标记,当点击“退出”按钮后,删除作标记的记录。
当点击“打印”按钮后,显示(报表)
当点击“退出”按钮后,返回主菜单,同时删除已经做删除标记的记录。
(2)子菜单:
信息表维护表单(和成绩表维护表单相同)
系统管理菜单
(1)口令设置表单
要求:
“修改密码”、“输入原密码”、“输出新密码”、“重输新密码”标签
3个文本框
当点击“确定”按钮后改变当前用户的密码,点击“退出”按钮返回主菜单
(2)帐户管理表单
1个表格(帐户表)
“姓名”、“密码”标签和文本框
一个命令按钮组(和前面相同)
(3)系统日志表单
点击“打印”按钮后,打印日志报表
点击“清除”按钮后,清除日志记录
点击“退出”按钮后,返回主菜单
(4)系统备份表单
“请选择备份目录”“请选择备份目标目录”标签以及文本框
“开始备份”和“退出”按钮
2个“…”选择路径按钮
ActiveX控件中的进度条控件ProgressBar
通过路径的选择把一个文件复制到另一个路径下面后,点击“开始备份”按钮,使用进度条控件显示过程,当复制成功后,弹出“复制完成对话框”,
点击“确定”按钮后返回该表单。
点击“退出”按钮,返回主表单
(5)数据恢复表单
“选择需要恢复数据目录”“选择恢复数据的目标目录”标签和文本框
“开始恢复”“退出”按钮,以及2个“…”选择路径按钮
ActiveX控件中的进度条控件ProgressBar
(6)退出系统
选择“否”返回主菜单
选择“是”退出到Windows
制作过程,代码:
进入系统中写入:
DOFORM学生管理系统登陆.scx
thisform.release
退出系统中写入:
ask=messagebox("
确定要退出系统吗?
"
4+32+256,"
学生管理系统"
)
ifask=6
closeall
quit
else
endif
数据环境中加入新口令表(存密码和账号的)
FORM1.INIT中写入:
Publicerrornumber,Ps
Errornumber=0
退出中写入
确定要退出吗?
确定中写入:
use新口令表
a=Thisform.text1.value
b=Thisform.text2.value
ifa=="
n=messagebox("
请输入用户名"
4+32,"
学生管理系统登陆"
docase
casen=6
thisform.text1.value="
thisform.text1.setfocus
casen=7
endcase
else
ifb=="
请输入密码"
thisform.text2.value="
thisform.text2.setfocus
locateforalltrim(新口令表.Id)==alltrim(a)
iffound()
ifalltrim(新口令表.Ps)==alltrim(b)
do学生管理系统.mpr
thisform.release
else
messagebox("
密码错误,请重新输入"
64,"
errornumber=errornumber+1
endif
用户"
+a+"
不存在!
iferrornumber=3
MESSAGEBOX("
您已经输入3次错误,请按确定退出"
ask=messagebox("
ifask=6
closeall
数据查询中代码:
no=alltrim(thisform.Text1.value)
ifthisform.optiongroup1.value=1
ifthisform.optiongroup2.value=1
ifempty(no)
对不起,学号不能为空。
16,"
错误"
thisform.Text1.setfocus
return
select学生信息表
locateforalltrim(学生信息表.学号)=no
ifnotfound()
没有找到你输入的学号。
thisform.Edit1.value="
学号"
+"
"
+学号
thisform.Edit2.value="
姓名"
+学生信息表.姓名
thisform.Edit3.value="
性别"
+学生信息表.性别
thisform.Edit4.value="
出生年月"
+dtoc(学生信息表.出生年月)
thisform.edit5.value="
家庭住址"
+学生信息表.家庭住址
thisform.Edit6.value="
备注"
+学生信息表.备注
locateforalltrim(学生信息表.姓名)=no
没有找到您输入的姓名!
ifthisform.optiongroup2.value=1
对不起,学号不能为空!
select学生成绩表
没有找到你输入的学号!
+学生成绩表.学号
+学生成绩表.性名
数据库"
+str(学生成绩表.数据库)
高等数学"
+str(学生成绩表.高等数学)
英语"
+str(学生成绩表.英语)
总分"
+str(学生成绩表.总分)
对不起,姓名不能为空!
locateforalltrim(学生成绩表.性名)=no
没有找到您输入的姓名!
退出中写入:
数据浏览中代码:
首记录:
gotop
Thisform.refresh
上一条:
skip-1
Gotop
Ifbof()
下一条:
Skip1
Ifeof()
Gotop
尾记录:
Gobottom
计时器中TIMER1.TIMER中写入:
Thisform.label5.caption=dtoc(date())
Thisform.label6.caption=time()
Thisform.release
数据环境中加入学生成绩表和学生信息表
学生信息表维护代码:
首记录,上一个,下一个,尾记录同上
添加中写入:
appendblank
Thisform,refresh
编辑中定入:
thisform.txt学号.setfocus()
保存:
messagebox(“已存入”,48,“警告”)
删除中写入:
deletefrom学生信息表where学号=thisform.txt学号.value
Thisform.grid1.recordsource=””
Pack
Thisform.grid1.recordsource=”学生信息表”
打印中写入:
listtoprinterprompt
数据环境中加入学生信息表
学生成绩表维护同上的代码,数据环境中加入学生成绩表
学生账户管理中浏览学生密码的代码也同上,数据环境中加入口令表
口令表设置用于改密码,代码如下:
LOCALjj
jj=0
fori=1to3
s="
text"
+alltrim(str(i))
d="
label"
ifempty(thisform.&
s..value)
messagebox(thisform.&
d..caption+"
不能为空"
系统提示"
thisform.&
s..setfocus
ELSE
IFs="
text3"
jj=1
ENDIF
ENDFOR
IFjj=1
select新口令表
GOtop
locateforalltrim(thisform.text1.value)=alltrim(新口令表.id)
iffound()
ifalltrim(thisform.text2.value)=alltrim(新口令表.ps)andalltrim(thisform.text3.value)=alltrim(thisform.text4.value)
replace新口令表.pswithALLTRIM(thisform.text3.Value)
密码修改成功"
thisform.text1.Value="
thisform.text2.Value="
thisform.text3.Value="
thisform.text4.value="
thisform.text1.SetFocus
ELSE
密码不正确或两次输入密码不一致,请重新输入"
48,"
thisform.text2.SetFocus
ENDIF
用户名"
+ALLTRIM(thisform.text1.Value)+"
不存在,请确认重新输入"
thisform.text1.setfocus
thisform.text1.SelStart=0
thisform.text1.SelLength=LEN(ALLTRIM(thisform.text1.Value))
ENDIF
数据环境中加入口令表
系统日志表单中代码:
清除按钮:
y=messagebox("
您真的要删除吗?
警告"
ify=6
deletefrom日志表
thisform.grid1.recordsource="
pack
thisform.refresh
打印中代码同上
退出中:
一个菜单中:
打开菜单设计器,将数据查询,数据浏览的结果一项改为命令,选项中分别写入:
Doform表单数据查询/表单学生数据浏览(要执行的表单名)
系统维护和系统管理中,点编辑
在信息表维护和成绩表维护中将结果选项改为命令,选项一项中写入:
doform在执行的表单名
然后运行菜单,保存即可。
要做出exe可执行文件,还要:
创建一个项目,在项目的不同位置中加入数据库,表,表单,报表,菜单,然后写一个主程序,创建一个主程序表单,如下:
项目管理器中代码选项中,选新建,写入代码:
Setdeleon
Settalkoff
Setsafetyoff
Setdateansi
setcenton
Setpathto学生管理系统
Doform表单学生登陆系统
Readevents
其中的Doform表单学生登陆系统为首先要执行的表单,最后是其他选项中选择连编,连编可执行文件,重新编译全部文件,显示错误,完成后就可执行了。