学生管理系统详细设计说明书—计算机毕业设计(论文内容摘要:

On ShutDown amp。 amp。 释放当前的 On ShutDown命令 *按菜单的“关闭”按钮退出时,出现的提示框 FUNCTION OnShutdown() sel=MESSAGEBOX(真的要退出吗 ?,4+32+256,提示 ) IF sel=6 *SELECT 0 *USE .\dbsystem\LOG *GO BOTTOM *REPLACE 离开时间 WITH DATETIME() amp。 amp。 退出系统时记录操作员退出时间 CLOSE ALL CLEAR EVENTS amp。 amp。 退出事件循环 QUIT amp。 amp。 结束当前 Visual FoxPro 工作期,并将控制权返回给操作系统 ENDIF ENDFUNC (二 )、在运行主程序后,系统调用登陆界面表单 (图 4) 主要事件代码: FORM1 的 INIT 事件代码: SET BELL ON SET BELL TO 39。 .\MUSIC\39。 ,2 ??CHR(7) FORM1 的 UNLOAD 事件代码: SET BELL TO 39。 \MUSIC\39。 ,2 ??CHR(7) 此两项功能分别为在打开表单时调用的音乐文件和关闭表单时调用的音乐文件。 Command1 的 mouseup 事件代码: LPARAMETERS nButton, nShift, nXCoord, nYCoord release thisform DO FORM .\main\ Timer1 的 timer 事件代码: release thisform DO FORM .\main\ Timer2 的 timer 事件代码: 为了实现五角星的闪动: IF =.f. else =.t. endif Timer3 的 timer 事件代码: 为了实现五角星的闪动: IF =.t. else =.t. endif Timer4 的 timer 事件代码: 为了实现五角星的闪动: IF =.t else =.t. endif 同时在每个五角星的颜色也做了设置。 (三 )系统登陆表单设计界面 用户在文本框输入操作员及口令,若正确则调用系统主界面 (菜单 )。 允许输入三次,若三次均不正确刚自动退出系统。 若用户输入的操作员姓名 及口令正确,要完成下列工作: (5) 设置一个全局变量 operat,用于记录登陆系统的操作员姓名,系统中有 3 个地方要用到操作员的姓名和代号:一是进入主界面后在标题栏显示的操作员姓名;二是操作员在系统管理模块的口令设置中更改自己的口令,系统要知道是哪个操作员;三是退出系统时系统日志中要记录操作员的退出时间。 (6) 在系统日志表 中增加一条记录,并同时记录此操作员的登录系统的时间。 (7) 从权限表 ,并赋值给数组。 (8) 调用菜单文件,显示系统主界面。 事件代码: Form1 的 init 事件代码: SET EXACT ON amp。 amp。 精确比较 PUBLIC ARRAY rr[18] amp。 amp。 数组用于实现菜单项权限 PUBLIC i amp。 amp。 i 用于记录用户名及口令输入次数 PUBLIC operat amp。 amp。 operat 用于保存操作员姓名 i=0 “确定”按钮 (COMMAND1)CLICK 事件代码: *判断密码是否正确 i=i+1 SELECT operator LOCATE FOR 操作员姓名 =ALLTRIM() DO CASE CASE i=3 AND FOUND() AND = amp。 amp。 输入次数未超过 3 次且用户名正确、口令正确 operat= INSERT INTO log(操作员代号 ,操作员姓名 ,登录时间 ) VALUES(作员代号 , ,DATETIME()) =05 计专学生管理系统+SPACE(40)+DTOC(DATE())+SPACE(40)+操作员: +operat SELECT 权限 FROM menuright INTO ARRAY rr WHERE 操作员代号= ORDER BY 菜单项编号 RELEASE THISFORM DO .\main\ CASE i=3 AND FOUND() AND != amp。 amp。 输入次数未超过 3 次且用户名正确、口令不正确 MESSAGEBOX(密码错误 ,请重输 !,警告 ) = CASE i=3 AND NOT FOUND() amp。 amp。 输入次数未超过 3 次且用户名不正确 MESSAGEBOX(操作员姓名错误 ,请重输 !,警告 ) = = CASE i3 amp。 amp。 输入次数超过 3 次 MESSAGEBOX(禁止进入系统 !,警告 ) ENDCASE 退出按钮 (COMMAND2)CLICK 事件代码: RELEASE THISFORM CLEAR EVENTS (四 )系统菜单设计 学生信息管理系统的菜单 在应用系统中,各个了模块是通过菜单组织在一起的。 通过对人事工资管理系统功能模块的设 计,可以交系统划分为 3 大模块:学生信息管理、学生成绩查询、系统管理,具体的菜单设计见下表: 学生信息管理 学生成绩管理 系统管理 学生信息维护 学生成绩查询 操作员管理 口令设置 学生信息查询 权限管理 系统日志 数据备份 数据恢复 退出系统 在菜单设计器中实现权限设置 在菜单项设计器中,通过 [提示选项 ]对话框设置菜单项的跳过条件可以实现用户权限。 每个操作员对每个菜单项有两种权限: 0 或 1。 “ 0”表示此操作员对该菜单项没有操作权,系统运行后,该菜单项为灰色。 不能打开对 应的表单,“ 1”代表该操作员对该菜单项具有操作权,系统运行后,该菜单项可用,鼠标单击菜单项能打开对应的表单。 操作员对各菜单项的权限保存在表文件 中,在登录系统时读出该操作员对应各菜单项的权限,并赋值给一个数组 RR。 本系统共 10 个菜单项,所以定义的数组也包含 10 个元素。 学生信息维护表单包换下列功能:数据录入、修改、删除、查询、浏览、保存、打印等。 本表单左边是浏览窗口,便于用户浏览数据;右边是编辑窗口,主要用于输入修改数据。 在表单数据环境中添加表: 、 cjb、 dbf。 学生人事表和成绩表的结构请打开数据库表查看。 在表单数据环境的 BRFOREOPENTABLES 事件中添加代码: =.t. 事件代码: FORM1 的 INIT 事件代码: =.F. =.F. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.F. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.T. =.F. =.F. FORM1 的 CLICK 事件代码: =.F. =.F. GRID1 的 afterrowclochange 事件代码: LPARAMETERS nColIndex (dynamicbackcolor,IIF(reo(),rgb(255,255,255),rgb(0,255,0)),column) select rsb 此代码实现不现颜色显示选中的 GRID 对象的行及列。 “第一个“按钮的 CLICK 事件代码: select rsb go top =.f. =.f. if not eof() =.t. =.t. endif “前一个“按钮的 CLICK 事件代码: select rsb skip 1 if bof() go top =.f. =.f. endif if not eof() =.t. =.t. endif “下一个“按钮的 CLICK 事件代码: select rsb skip if eof() go bottom =.f. =.f. endif if not bof() =.t. =.t. endif “最后一个“按钮的 CLICK 事件代码: select rsb go bottom =.f. =.f. if not bof() =.t. =.t. endif “增加“按钮的 CLICK 事件代码: if =增加 =保存 =.F. =.F. =.F. =.F. =.T. =.F. =.F. =.F. =.F. =.F. =.F. =.F. =.T. =.F. =.F. =.F. =.F. =.F. =.F. =.F. SELECT RSB APPEND BLANK GO BOTTOM () ELSE =增加 =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.t. =.f. =.t. =.t. =.t. =.t. =.t. =.t. =.t. endif “删除“按钮的 CLICK 事件代码: SELECT RSB XH= sel=messagebox(该记录学号为: +XH+chr(13)+真的要删除吗 ?,4+32+256,提示) if sel=6 delete endif “查找“按钮的 CLICK 事件代码: =.t. =.t. = () “打印“按钮的 CLICK 事件代码: report form .\menu1\ preview for =alltrim() “退出“按钮的 CLICK 事件代码: select rsb pack “ TEXT7”的 valid 事件代码为: select rsb set filter to 学号 =alltrim() or 学生姓名=alltrim() locate for 学号 =alltrim() or 学生姓名=alltrim() set filter to 运行界面: (如图 5) (图 5) 学生信息查询菜单的设计 学生人事信息的查询是基于 表,菜单提供学号,姓名,全体查询。 分别利用不同的命令代码方式实现查询打印功能。 功能是便于指导员和老师,学生用户的检索查询。 各事件的代码如下: FORM1 的 INIT 事件代码: *输入编号、姓名提示标签及文本框 =.F. =.F. () *输入起始日期、截止日期提示标签及文本框不可见 =.F. =.F. =.F. =.F. =.F. *表格数据不可修改 =.T. Optiongroup1 的 CLICK 事件代码: *选定查询类别后,设置各控件是否可见 DO CASE CASE =1 amp。 amp。 按学号查询 =.T. =.T. =.F. =.F. =.F. =.F. =.F. =请输入要查询的学号: = CASE =2 amp。 amp。 按姓名查询 =.T. =.T. =.F. =.F. =.F. =.F. =.F. =请输入学生姓名: = () CASE =3 amp。 amp。 按出生日期查询 =.F. =.F. =.T. =.T. =.T. =.T. =.T. CASE =4 amp。 amp。 显示全体记录 =.F. =.F. =.F. =.F. =.F. =.F. =.F. SET FILTER TO GO TOP ENDCASE GRID1 的数据连接连接 RSB 表。 一一对应该对应的数据项, COMMAND4(查询 )的 CLICK 事件代码: *按输入的日期条件在表格中显示查询的记录 SELECT rsb PUBLIC qsrq,jzrq。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。