综合练习学生管理系统说明书(1)4个表学生信息表:学生成绩表:口令表:日志表(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=6close allquitelseendif数据环境中加入新口令表(存密码和账号的)FORM1.INIT中写入:Public errornumber,PsErrornumber=0退出中写入ask=messagebox("确定要退出吗?",4+32+256,"学生管理系统")if ask=6thisform.releaseelseendif确定中写入:use新口令表a=Thisform.text1.valueb=Thisform.text2.valueifa==""n=messagebox("请输入用户名",4+32,"学生管理系统登陆")do casecase n=6thisform.text1.value=""thisform.text1.setfocuscase n=7thisform.releaseendcaseelseif b==""n=messagebox("请输入密码",4+32,"学生管理系统登陆")do casecase n=6thisform.text2.value=""thisform.text2.setfocuscase n=7thisform.releaseendcaseendifendiflocatefor alltrim(新口令表.Id)==alltrim(a)iffound()if alltrim(新口令表.Ps)==alltrim(b)do 学生管理系统.mprthisform.releaseelsemessagebox("密码错误,请重新输入",64,"学生管理系统登陆") errornumber=errornumber+1endifelsemessagebox("用户"+a+"不存在!",64,"学生管理系统登陆")errornumber=errornumber+1endifif errornumber=3MESSAGEBOX("您已经输入3次错误,请按确定退出",64,"学生管理系统") ask=messagebox("确定要退出吗?",4+32+256,"学生管理系统")if ask=6closeallquitelseendifendif数据查询中代码:确定中写入:no=alltrim(thisform.Text1.value)ifthisform.optiongroup1.value=1if thisform.optiongroup2.value=1if empty(no)messagebox("对不起,学号不能为空。
",16,"错误")thisform.Text1.setfocusreturnendifselect学生信息表locate for alltrim(学生信息表.学号)=noif notfound()messagebox("没有找到你输入的学号。
",16,"错误")thisform.Text1.setfocusreturnendifthisform.Edit1.value="学号"+" "+学号thisform.Edit2.value="姓名"+" "+学生信息表.姓名thisform.Edit3.value="性别"+" "+学生信息表.性别thisform.Edit4.value="出生年月"+" "+dtoc(学生信息表.出生年月)thisform.edit5.value="家庭住址"+""+学生信息表.家庭住址thisform.Edit6.value="备注"+" "+学生信息表.备注returnendifselect学生信息表locatefor alltrim(学生信息表.姓名)=noif not found()messagebox("没有找到您输入的姓名!",16,"错误")thisform.Text1.setfocusreturnendifthisform.Edit1.value="学号"+""+学号thisform.Edit2.value="姓名"+" "+学生信息表.姓名thisform.Edit3.value="性别"+" "+学生信息表.性别thisform.Edit4.value="出生年月"+" "+dtoc(学生信息表.出生年月) thisform.edit5.value="家庭住址"+""+学生信息表.家庭住址thisform.Edit6.value="备注"+" "+学生信息表.备注elseif thisform.optiongroup2.value=1if empty(no)messagebox("对不起,学号不能为空!",16,"错误")thisform.Text1.setfocusreturnendifselect 学生成绩表locate foralltrim(学生信息表.学号)=noif not found()messagebox("没有找到你输入的学号!",16,"错误")thisform.Text1.setfocusreturnendifthisform.Edit1.value="学号"+" "+学生成绩表.学号thisform.Edit2.value="姓名"+" "+学生成绩表.性名thisform.Edit3.value="数据库"+""+str(学生成绩表.数据库)thisform.Edit4.value="高等数学"+" "+str(学生成绩表.高等数学)thisform.edit5.value="英语"+" "+str(学生成绩表.英语)thisform.Edit6.value="总分"+" "+str(学生成绩表.总分) elseif empty(no)messagebox("对不起,姓名不能为空!",16,"错误")thisform.Text1.setfocusreturnendifselect学生成绩表locate for alltrim(学生成绩表.性名)=noif not found()messagebox("没有找到您输入的姓名!",16,"错误")thisform.Text1.setfocusreturnendifthisform.Edit1.value="学号"+" "+学生成绩表.学号thisform.Edit2.value="姓名"+""+学生成绩表.性名thisform.Edit3.value="数据库"+" "+str(学生成绩表.数据库)thisform.Edit4.value="高等数学"+""+str(学生成绩表.高等数学) thisform.edit5.value="英语"+" "+str(学生成绩表.英语)thisform.Edit6.value="总分"+""+str(学生成绩表.总分)endifendif退出中写入:thisform.release数据浏览中代码:首记录:go topThisform.refresh上一条:skip -1Go topIfbof()Thisform.refresh下一条:Skip 1If eof()Go topThisform.refresh尾记录:Go bottomThisform.refresh计时器中TIMER1.TIMER中写入: bel5.caption=dtoc(date()) Thisform.label6.caption=time()退出中写入:Thisform.release数据环境中加入学生成绩表和学生信息表学生信息表维护代码:首记录,上一个,下一个,尾记录同上添加中写入:append blankThisform,refresh编辑中定入:thisform.txt学号.setfocus()保存:messagebox(“已存入”,48,“警告”)Thisform.refresh删除中写入:delete from学生信息表where学号=thisform.txt学号.value Thisform.grid1.recordsource=””PackThisform.grid1.recordsource=”学生信息表”Thisform.refresh打印中写入:listto printer prompt数据环境中加入学生信息表学生成绩表维护同上的代码,数据环境中加入学生成绩表学生账户管理中浏览学生密码的代码也同上,数据环境中加入口令表口令表设置用于改密码,代码如下:确定中写入:LOCAL jjjj=0fori=1to 3s="text"+alltrim(str(i))d="label"+alltrim(str(i))if empty(thisform.&s..value)messagebox(thisform.&d..caption+"不能为空",64,"系统提示")thisform.&s..setfocusELSEIF s="text3"jj=1ENDIFENDIFENDFORIF jj=1select 新口令表GO toplocate for alltrim(thisform.text1.value)=alltrim(新口令表.id)if found()if alltrim(thisform.text2.value)=alltrim(新口令表.ps)and alltrim(thisform.text3.value)=alltrim(thisform.text4.value)replace 新口令表.ps with ALLTRIM(thisform.text3.Value)MESSAGEBOX("密码修改成功",64,"系统提示")thisform.text1.Value=""thisform.text2.V alue=""thisform.text3.Value=""thisform.text4.value=""thisform.text1.SetFocusELSEMESSAGEBOX("密码不正确或两次输入密码不一致,请重新输入",48,"系统提示") thisform.text2.Value=""thisform.text3.Value=""thisform.text2.SetFocusENDIFELSEMESSAGEBOX("用户名"+ALLTRIM(thisform.text1.Value)+"不存在,请确认重新输入",48,"系统提示")thisform.text1.setfocusthisform.text1.SelStart=0thisform.text1.SelLength=LEN(ALLTRIM(thisform.text1.Value))thisform.text2.Value=""thisform.text3.Value=""ENDIFENDIF退出中写入:thisform.release数据环境中加入口令表系统日志表单中代码:清除按钮:y=messagebox("您真的要删除吗?",4+32,"警告")if y=6delete from 日志表thisform.grid1.recordsource=""packthisform.refreshendif打印中代码同上退出中:thisform.release一个菜单中:打开菜单设计器,将数据查询,数据浏览的结果一项改为命令,选项中分别写入:Do form表单数据查询/表单学生数据浏览(要执行的表单名)系统维护和系统管理中,点编辑在信息表维护和成绩表维护中将结果选项改为命令,选项一项中写入:do form 在执行的表单名然后运行菜单,保存即可。