收藏 分销(赏)

学生综合测评系统开发实例.doc

上传人:w****g 文档编号:2397760 上传时间:2024-05-29 格式:DOC 页数:37 大小:1.67MB 下载积分:12 金币
下载 相关 举报
学生综合测评系统开发实例.doc_第1页
第1页 / 共37页
学生综合测评系统开发实例.doc_第2页
第2页 / 共37页


点击查看更多>>
资源描述
学生综合测评系统开发实例 ———————————————————————————————— 作者: ———————————————————————————————— 日期: 2 个人收集整理 勿做商业用途 第14章 学生考评管理系统开发实例 2 14。1 系统分析 2 14。1.1 项目背景分析 2 14。1.2 业务流程分析 3 14。1。3 功能需求分析 4 14.2 系统总体设计 5 14.2.1 功能结构设计 5 14。2.2 数据库设计 6 14。2.3系统主体框架设计 10 14.3 主要功能模块的设计与实现 15 14。3.1 学生信息管理 15 14。3.2 综合考评管理 19 14.3。3 打印输出设计 22 14.3.4 系统维护 28 14。4 应用程序的发布 30 14.4。1 系统测试 30 14。4。2 系统调试 32 14.4。3 应用项目的连编 32 14。5 本章小结 34 第14章 学生考评管理系统开发实例 传统的高校学生综合测评在纸质的基础上,手工操作完成各种数据的分析、计算和统计,不仅浪费了大量的人力物力资源,而且由于人工管理存在着许多不可控因素,导致学生综合测评操作不规范,测评结果不全面,不能客观准确地反映学生的综合素质。本章介绍了高校学生综合测评系统的分析与设计过程,给出了系统设计的技术方案、框架体系,以及实现的关键技术与部分源代码。 教学目标: l 了解软件工程基本方法和软件开发流程 l 了解数据库设计的基本方法 l 掌握基于VFP的信息系统的开发过程 14.1 系统分析 14。1.1 项目背景分析 1.学生综合测评的现状分析 在素质教育评价过程中,学生综合测评是高校普遍采用的评价手段。对学生实施综合素质测评的目的在于正确评价学生的综合素质,为评优评奖和推荐就业提供依据,实现学生教育管理工作的标准化、制度化和科学化,引导和促进学生德、智、体、能全面协调发展,培养适应社会经济发展需要,具有创新精神和实践能力的专门人才.目前,我国的普通高校学生综合测评大多还停留在纸质的基础上,许多工作还停留在传统的手工操作.不仅浪费了大量的人力物力资源,而且由于人工管理存在着许多不可控因素,导致学生综合测评操作不规范,测评结果不全面,不能客观准确地反映学生的综合素质。因此,建立一套基于网络环境的技术先进、高效稳定、安全可靠的学生综合测评系统势在必行. 2.学生综合测评系统的开发意义 与传统的手工管理相比,计算机管理不但能发挥计算机方便、快捷的功能,而且可以大量节省了资源、费用等,更方便灵活操作,而且方便管理,增加综合测评的公平性、透明性,有效防止综合测评的弊端,使学生综合测评更加合理、更趋于成熟。这些都能够极大地提高工作效率,特别是校园网应用发展迅速的今天,利用网络进行信息的查询、修改和发布已成为学校现代化管理的象征之一,也是学校科学化和正规化管理的重要条件。因此,开发一套比较成熟的学生综合测评系统很有必要. 综合测评系统开发的目的是自动分析、计算、统计、管理学生综合测评数据,减少人工干预,降低计算失误,提高工作效率,将辅导员、班主任、班委从繁重的综合测评及日常管理中解放出来,使学校的综合测评工作系统化、规范化、自动化。 14.1.2 业务流程分析 1.业务流程 结合传统的手工操作与管理信息系统的处理特点,综合素质测评按如下程序进行: (1) 个人总结。每位学生必须按照综合素质测评德、智、体、能四个方面的内容,认真填写学年个人总结,同时填写获得的各项奖励或参与的社会活动,作为班级综合素质测评小组可加分的原始依据。 (2) 同学互评和班主任评议.班级综合素质测评小组组织全班同学对本班的每位同学进行品德、体育和能力互评。班主任对本班的每位同学进行思想品德评议。 (3) 班级审议和评分。班级综合素质测评小组按照本条例的有关规定,审议每个同学填报的材料,由系统自动计算出德、智、体、能的测评成绩,根据权重系数,合成该生本学年综合素质测评总分,排出全班名次。 (4) 公布测评结果。班级综合素质测评小组经过审查核准后,将综合素质测评成绩向班级全体同学公布,听取广大同学意见。 (5) 评优评奖。班级综合素质测评结果经学院综合测评小组审核以后,根据有关文件和规定评出各类奖项,与测评结果一并报学院分管领导审定。 (6) 审批与备案。学院综合素质测评小组对各班的综合素质测评结果和评优结果进行审定,填写好有关表格及材料后由学院分管领导签署意见,加盖公章后上报学校审批,进行表彰和存档备案. (7) 班主任根据综合测评结果汇总学生信息、考试成绩、考评结果,编制输出报表,打印家庭报告书,寄往学生家长,与学生家长联络。 2.数据流图 本系统主要操作主体是管理员、班主任、学生和学生家长。管理员对采集的学生数据经过加工后存入学生信息文件中,把学生考试成绩存入课程成绩文件中。学生可以查询并维护自己的个人档案,同时参加综合考评,综合考评的结果存入综合考评文件中。管理员(班主任)汇总学生信息、考试成绩、考评结果,编制输出报表,打印家庭报告书,寄往学生家长。根据业务流程分析,信息管理部分的数据流图如图14-1所示. 图14—1 数据流图 14。1。3 功能需求分析 学生综合测评系统可以及时、准确、公平地计算出学生的综合测评结果。利用计算机对学生综合素质进行测评具有手工测评无法实现的优点.例如:数据处理自动化、管理规范、操作便捷、可靠性高等。学生综合测评系统的用户群可分为普通用户(学生)和管理员,系统功能定义根据两种不同的用户身份进行需求分析。 1.学生需求 学生既是综合测评的对象,也是综合测评的主体.学生可以查询并维护自己的个人档案,同时参加其他同学的综合测评。学生对功能上的需求主要有: (1) 查询学校、学院、班级发布的种类消息和公告; (2) 查询课程信息和考试成绩; (3) 更新和维护自己的个人信息,查看其他同学的信息; (4) 填报自己的获奖情况和参与的社会活动; (5) 查询自己的测评结果和家庭报告书,查看本班测评结果统计信息。 2.管理员需求 管理员按身份级别可分为班委(测评小组)、班主任、辅导员、系统管理员四种级别。管理员除具备学生需求的功能外,按照不同身份还具备以下不同的权限。 (1) 班委:学生个人信息的录入和修改,各学期课程信息的录入和修改,学生综合测评结果的统计和修改.操作权限范围是本班同学。 (2) 班主任:班主任除了具备班委的权限外,还有综合评语的填写,学生家庭报告书的编制和打印。操作权限范围是本班同学。 (3) 辅导员:辅导员除了具备班委的权限外,还要负责对学生奖惩情况的核实,相关数据的维护。操作权限范围是本学院全体学生。 (4) 系统管理员:系统管理员负责系统的管理与维护,除具备上述所有功能外,管理员还负责数据备份与恢复、人员管理、权限设置等。 14。2 系统总体设计 14。2.1 功能结构设计 1.系统功能描述 基于上述需求分析,本系统主要完成以下功能: (1) 学生信息管理模块 学生信息管理模块完成学生信息的管理功能,包括用户的登录、用户的退出、用户的个人信息录入、修改、查询、删除等 (2) 课程信息管理模块 课程信息管理模块主要是为系统管理员提供了课程管理功能,主要包括课程信息的录入、课程的增加、课程的修改、课程的删除等功能。 (3) 成绩管理模块 成绩管理模块主要实现学生成绩的管理功能,包括成绩的输入、成绩的查询、修改、删除等基本操作。 (4) 综合考评数据管理 综合考评数据管理模块主要实现了自动评语库的管理、自动生成评语、手工修改评语。 (5) 家庭报告书打印模块 家庭报告书打印模块主要是为了方便班主任将家庭报告书邮寄给家长而设计的. (6) 系统维护 系统维护主页完成数据备份与恢复,账号及权限的管理。为了确保信息安全,需要对重要数据进行备份,必要的时候再从备份的数据中恢复数据。系统管理员可以添加、修改或删除管理员账号,分配管理职责和权限。 2.系统功能结构图 根据上面功能模块分析,系统功能结构图如图14-3所示。限于篇幅,本书只介绍信息管理、数据维护和报表输出三个功能模块. 报表输出 学生综合测评系统 系统维护 信息管理 综合测评 身份验证 查询、删除、修改、添加、导入、导出 学生信息 考试成绩 测评数据 课程信息 学生品行记实量化统计 发展性素质计算 基础性素质计算 发展性素质量化统计 学生品行表现测评 评奖评优申请 图14—3 系统功能结构图 14。2.2 数据库设计 通过对上述需求分析中的数据需求进行总结,综合测评管理系统主要有以下数据结构及其数据项: (1) 管理员:管理员编号、姓名、密码 (2) 班级:班级代码、班级名称、学院名称、毕业时间 (3) 职务:班级代码、管理员编号、职务、权限 (4) 学生:学号、密码、姓名、班级代码、出生年月、籍贯、家庭住址、邮政编码、宿舍、照片、简历 (5) 科目:科目编号、课程名称、学时、学分 (6) 选课:学号、科目编号、学年、学期、成绩 (7) 测评:学号、学年、名次、等级、奖惩情况、综合评语 3.数据库概念结构设计 数据库概念结构设计通过对用户进行综合、归纳与抽象,形成一个独立与具体DBMS的概念模型,既是整个数据库设计的关键,又是进行数据库逻辑结构设计的基础。在概念结构设计中主要采用实体联系(E—R)图作为描述工具,将实际应用抽象为实体与实体之间的关系,生成数据库的整体概念结构设计模型。 根据上面的实际规划出的实体有:用户信息实体、查询实体、课程实体、综合考评实体,课程成绩实体,家庭报告书实体。系统总体E-R图如图14—4所示。 M 学生 测评结果 选修 定制 课程 N 1 N 家庭报告书 1 M 包含 班级 管理员 N M 管理 包含 1 N 图14—4 系统总体E—R图 4.数据库逻辑结构设计 数据库逻辑结构设计是指将数据库概念结构中抽象的E—R图转换为特定DBMS所支持的数据模型的过程,通常是转换成关系模型。 本设计中的DBMS采用Visual FoxPro 9。0来实现,作为关系数据库,数据库逻辑结构设计体现在其中即为数据表.数据库中各表的结构设计结果如表14-1至表14—8所示. 表14-1 管理员表(Admins) 标题 英文解释 字段名 字段属性 说明 管理员编号 AdminID AdID C(5) 主键 姓名 AdminName AdName C(8) 密码 Password Psword 表14—2 班级表(classes) 标题 英文解释 字段名 字段属性 说明 班级代码 *ClassID ClsID C(8) 主键 班级名称 ClassName ClsName C(50) 学院名称 SchoolName SchName C(50) 毕业时间 GraduateDate Gdate D(8) 表14—3 职务表(Adclass) 标题 英文解释 字段名 字段属性 说明 班级代码 ClassID ClsID C(8) 管理员编号 AdminID AdID C(5) 职务 Adminduty Adduty C(10) 权限 AdminPower Adpower N(1) 表14—4 学生表 students 标题 英文解释 字段名 字段属性 说明 班级代号 ClassID ClsID C(8) 学号 *StudentID SID C(9) 主键 姓名 StudentName SName C(8) 性别 Sex Sex C(2) 是否党员 PartMember Pmember L(1) 出生日期 Birthdate/Birthday Birthday D(8) 籍贯 NativePlace Native C(14) 家庭地址 Address Address C(50) 邮政编码 PostCode PCode C(6) 照片 Photo Photo G(4) 简历 StudentNote SNote M(4) 表14-5 科目表(courses) 标题 英文解释 字段名 字段属性 说明 科目代码 *CourseID CID C(8) 主键 科目名称 CourseName CName C(30) 学时 Period Period N(3) 学分 CreditHour Credit N(5。2) 表14—6 选课表(sc) 标题 英文解释 字段名 字段属性 说明 学号 StudentID SID C(9) 科目代码 CourseID CID C(8) 学年 AcademicYear AYear C(9) 学期 Term Term N(1) 成绩 Score/results Score1 N(6) 绩点 Score/Point Score2 N(3.1) 表14-7 测评结果表(grade) 标题 英文解释 字段名 字段属性 说明 学号 StudentID SID C(9) 学年 AcademicYear AYear C(9) 名次 Order/rank Rank N(3) 等级 Grade Grade C(6) 奖惩情况 Note Note M(4) 综合评语 Remark Remark M(4) 表14—8 自动评语表(Remarks) 标题 英文解释 字段名 字段属性 说明 编号 RemarkID RemID N(3) 主键 主题 Title Title C(50) 综合评语 Remark Remark M(4) 5.数据库的实现 分析设计好数据库的逻辑结构之后,通过VFP数据库设计器来完成数据库的设计工作,设置表间关联关系以及参照完整性,如图14—5所示。 图14-5 数据库表及其关系图 在查询或报表输出时,需要多个表联合查询。为方便数据处理,通过VFP的视图设计器把多个相关联的表组合后生成视图文件,视图作为数据库的虚表,使用方式和数据一样,这样就可以大大简化查询或报表输出的设计过程。以下是本系统需要的视图: (1) 学生成绩:班级代号、学年、学期、学号、姓名、课程代号、课程名称、成绩、学时、学分 (2) 综合测评结果:学院代号、学院名称、班级代号、班级名称、学号、姓名、学年、评定等级、名次、奖惩情况、评语 (3) 职责管理:班级代号、班级名称、管理代号、管理员姓名、权限 三个视图所涉及的查询代码为: (1) 学生成绩 SELECT Students.clsid, Students.sid, Students.sname, Sc。ayear, Sc.term,; Sc。score1, Sc。score2, Sc。cid, Courses。cname, Courses。period, Courses。credit; FROM sdb!students INNER JOIN sdb!sc ; ON Students。sid = Sc.sid ; INNER JOIN sdb!courses ; ON Courses.cid = Sc。cid; ORDER BY Students。clsid, Students。sid, Sc.ayear, Sc.term (2) 综合测评 SELECT Students.sname, Grade。ayear, Classes。schname, Classes.clsid,; Classes.clsname, Grade.sid, Grade.rank, Grade。grade, Grade.note,; Grade.remark; FROM sdb!students ; INNER JOIN sdb!grade ; ON Students。sid = Grade。sid ; INNER JOIN sdb!classes ; ON Classes.clsid = Students.clsid; WHERE Grade.ayear = ( "2008—2009” ); ORDER BY Students.clsid, Students.sid (3) 职责管理 SELECT Admins.adid, Admins。adname, Adclass.adpower, Adclass.clsid, Classes.clsname; FROM sdb!admins ; INNER JOIN sdb!adclass ; ON Admins.adid = Adclass.adid ; INNER JOIN sdb!classes ; ON Classes。clsid = Adclass.clsid; ORDER BY Admins。adpower, Admins。adid 以上视图可以在数据库中通过视图设计器实现,也可以在程序中通过上述查询语句实现。 14.2.3系统主体框架设计 1.建立系统项目文件 采用VFP开发应用系统,项目管理器是必不可少的文档管理工具.有关项目管理器的概念及操作请参阅本书第二章,在此不再介绍。本系统项目名称是SIM(学生信息管理系统),选择“D:\SIM"作为默认工作目录。并建立如图14-6所示的目录结构。 图中文件夹Data、DataBack、ExcelFiles、Images、 图14—6 系统目录结构图 Temp Wizards分别用于存储系统数据、数据备份、导出的Excel文件、图像文件、向导文件。 根据数据库表逻辑结构以及数据库表关联关系,在项目管理中实现数据库。详细操作请读者参阅图14-5以及本书第四章。 2.建立主程序文件 一般地,对于VFP应用系统而言都有一个主程序文件.在SIM中,主程序作为系统默认的起始运行程序,用于对系统进行初始化,并调用登录表单,开起事件循环。在项目管理器中新建程序文件main.prg,其代码如下: CLEAR ALL SET DATE LONG && 设置日期为长格式(9999年99月99日) SET TALK OFF SET SAFETY OFF && 覆盖时不要确认 application。Visible=.f。 && 隐藏VFP系统主窗口 DO FORM Logon && 运行登录表单 READ EVENTS && 读取循环事件,否则程序不会驻留内存 3.主菜单设计 主菜单出现在单文档界面(SDI)窗口中,在设计主菜单时,要把它创建为SDI菜单,打开菜单设计器,从View菜单中选择General Options,然后选择Top—Level Form. 菜单栏包括档案管理、课程管理、成绩查询、综合测评、打印输出、系统维护、帮助、退出八个一级菜单,每个一级菜单包含若干菜单项,每个菜单项对应调用一个表单。不同的菜单项授予的访问权限不一样,其中班级档案管理、课程信息维护以及系统维护的全部功能只能被系统管理员访问,对应的“跳过”表达式设置为Power_ID〈>1。综合评语部分只能被系统管理员或班主任访问,所以“跳过”表达式设置为Power_ID〉3 or Power_ID〈=0 主菜单menusim。mpr的结构如表4-9所示. 表4-9 主菜单menusim。mpr的结构 菜单栏 菜单项 命令 “跳过”表达式 档案管理(\〈S) 班级档案管理 do form 11ClassMana Power_ID<〉1 学生档案管理 do form 12StuMana 学生信息浏览 do form 13StuBrow 课程管理(\<C) 课程信息浏览 do form 21CourseBrow 课程信息维护 do form 22CourseMana Power_ID〈>1 成绩查询(\<T) 班级成绩浏览 do form 31ClassScore 个人成绩查询 do form 32StuScore 综合测评(\<G) 自动写评语 do form 41AutoRemark Power_ID〉3 or Power_ID〈=0 评语库维护 do form 42Remark Power_ID>3 or Power_ID〈=0 综合测评管理 do form 43StuGrade Power_ID〉3 or Power_ID<=0 打印输出(\〈P) 学生名册 do form 51StuList 学生成绩单 do form 52Score 信封打印 do form 53FamAddr 家庭报告书 do form 54FamData 系统维护(\<M) 账户管理 do form 61Count Power_ID〈>1 职责管理 do form 62duty Power_ID〈〉1 \- BAR# 数据备份 do form 63backup Power_ID〈〉1 数据恢复 do form 64Restore Power_ID〈>1 帮助(\〈H) 关于本系统 do form about 退出(\〈Q) 退出系统 quit 4.登录表单设计 登录表单的主要功能是验证用户身份,获取用户权限.本系统用户权限根据不同的管理职责分为三个级别:班主任、辅导员、系统管理员。班主任只能管理本班学生的相关信息,辅导员可以管理本学院学生的相关信息,系统管理员可以管理全部学生的相关信息。经过用户身份验证通过后,根据用户权限生成对应的学生班级信息,产生一个临时文件,存放于Temp文件夹中。 登录表单由三个标签、两个文本框、两个命令按钮和两个线条控件组成。表单运行效果如果图14-7所示。 图14—7 登录表单运行效果图 表单初始化过程中,需要定义三个变量,用于存储用户登录次数、用户ID和管理权限,表单Init过程的代码如下: PUBLIC LogonTimes,User_ID,Power_ID LogonTimes=0 命令按钮【确定】的Click事件代码如下: SET EXACT ON &&改为精确比较 LogonTimes=LogonTimes+1 &&将登录次数加1 SELECT Admins mps=THISFORM。txt密码。VALUE mpswd=pswd(mps) &&调用自定义函数转换密码 LOCATE FOR ALLTRIM(AdID)=THISFORM.txt帐号。VALUE &&查找帐号 IF FOUND() AND ALLTRIM(PsWord)=mpswd &&如果找到并且密码相同 User_ID=ALLTRIM(THISFORM.TXT帐号.VALUE) &&将登录帐号值赋给全局变量User_ID Power_ID=AdPower SET EXACT OFF &&改为模糊比较 PUBLIC Class_ID,Class_Name,Sch_Name && 定义班级相关的三个公用变量 SELECT AdClass SET ORDER TO ADPOWER && 选择索引顺序为ADPOWER(权限) LOCATE FOR AdID=User_ID IF NOT EOF() Class_ID=ClsID Power_ID=AdPower ELSE Class_ID=’No duty' ** Power_ID=’Default AdPower ' && 默认的权限在登录时确定 ENDIF SET SAFETY OFF DO CASE CASE Power_ID=1 && 如果是管理员,查询全部学生 SELECT * FROM Classes ORDER BY ClsID INTO TABLE Temp\Cur_Class CASE Power_ID=2 && 如果是辅导员,查询属于自己管理的学院的全部学生 SELECT * FROM Classes WHERE LEFT(ClsID,2)=LEFT(Class_ID,2); ORDER BY ClsID INTO TABLE Temp\Cur_Class CASE Power_ID>=3 && 如果是班主任或班长,查询属于自己管理的班级的学生 SELECT * FROM Classes WHERE ClsID=Class_ID ; ORDER BY ClsID INTO TABLE Temp\Cur_Class ENDCASE SELECT Cur_Class && 查询生成的表默认打开,并设置为当前工作区 GO TOP Class_ID=Cur_Class.ClsID Class_Name=Cur_Class。ClsName Sch_Name=Cur_Class.SchName DO FORM Main THISFORM。RELEASE ELSE &&如果帐号和密码不对 IF LogonTimes<3 &&如果次数小于3次 MESSAGEBOX("帐号或密码错误!",48,”警告窗口”) &&弹出错误窗口 THISFORM。txt帐号.VALUE=”” &&清空帐号和密码栏 THISFORM.txt密码。VALUE="” THISFORM。txt帐号.SETFOCUS ELSE &&如果次数已到3次 MESSAGEBOX("系统无法启动 ……",48,”警告窗口") CLEAR ALL THISFORM。RELEASE ENDIF ENDIF 命令按钮【取消】的Click事件代码如下: YN=MESSAGEBOX(”放弃登录,确定退出系统? ”,4+32,”信息窗口") IF YN=6 CLOSE ALL SET SAFETY ON && 覆盖时要确认 SET STAT BAR ON && 将状态栏打开 SET SYSMENU ON && 打开VFP系统菜单之区域(Band) SET SYSMENU TO DEFAULT && 打开系统菜单 SET DATE LONG && 设置日期为长日期格式(9999年99月99日) THISFORM。RELEASE ENDIF 登录系统或进行账号维护时,需要多次使用密码转换程序,本系统采用字符映射简单加密算法进行明码与密码的转换。密码转换程序pswd。prg代码如下: FUNCTION pswd PARAMETERS mps mps=ALLTRIM(mps) mpswd=”" FOR i=1 TO LEN(mps)) mpswd=mpswd+CHR(ASC(SUBSTR(mps,i,1))+131-3*i) && 密码转换 ENDFOR RETURN MPSWD ENDFUNC 5.主表单设计 主表单是系统的主窗口,包含系统菜单,用于选择班级的下拉组合框。主表单运行效果如果图14—8所示。 系统菜单通过主表单初始化过程加裁,表单Init过程的代码如下: *****frmmain.Init************* DO menuSIM。mpr WITH THIS, 。T。 图14—8 主表单运行效果图 对于系统管理员或辅导员,通常管理多个班级,为了方便在班级之间进行切换,采用下拉组合框实现选择班级。在下拉组合框的Init过程中完成被管理班级的数据初始化,并生成该班的成绩数据表,其代码如下: IF USED("Cur_CLass”) SELECT Cur_Class ELSE USE Cur_Class IN 0 ENDIF this.Value=Class_Name ** 通过查询生成本班成绩单 SELECT Students.clsid, Students.sid, Students。sname, Sc.ayear, Sc。term,; Sc.score1, Sc.score2, Sc.cid, Courses。cname , Courses。period, Courses。credit; FROM sdb!students INNER JOIN sdb!sc ON Students.sid = Sc.sid ; INNER JOIN sdb!courses ON Courses。cid = Sc。cid; WHERE ClsID=Class_ID; ORDER BY Students。clsid, Students。sid,Sc.ayear, Sc.term; INTO TABLE Temp\Stu_Scores INDEX on SID TAG SID && 对建生成的表建立学号索引 SELECT students SET FILTER TO ClsID=Class_ID && 设置过滤器 GO top 在下拉组合框的InterActiveChange过程中完成被管理班级的数据初始化,并生成该班的成绩数据表,其代码如下: Class_ID=Cur_Class。ClsID Class_Name=Cur_Class。ClsName Sch_Name=Cur_Class。SchName ** 通过查询生成本班成绩单 SELECT Students.clsid, Students.sid, Students。sname, Sc.ayear, Sc.term,; Sc。score1, Sc.score2, Sc.cid, Came , Courses。period, Courses.credit; FROM sdb!students INNER JOIN sdb!sc ON Students。sid = Sc。sid ; INNER JOIN sdb!courses ON Courses。cid = Sc.cid; WHERE ClsID=Class_ID; ORDER BY Students。clsid, Students。sid,Sc。ayear, Sc。term; INTO TABLE Temp\Stu_Scores INDEX on SID TAG SID SELECT students SET FILTER TO ClsID=Class_ID && 设置过滤器 GO top 14。3 主要功能模块的设计与实现 14。3.1 学生信息管理 1.定义指针移动类 指针移动功能在很多表单中都要用到,所以在进行主要功能模块设计之前先把指针移动命令按钮组定义为类,这样就可以在不同的表单中直接调用,从而实现代码复用。 指针移动类的设计如图14—9所示。 图14-9指针移动类设计效果图 指针移动类的InterActiveChange事件代码如下: DO CASE CASE this。value=1 GO TOP CASE this.value=2 and NOT BOF() SKIP -1 CASE this.value=3 and NOT EOF() SKIP 1 CASE this.value=4 GO BOTTOM CASE this。value=5 thisform.Release && 用此命令关闭表单 ENDCASE ** 以下代码用于控制按钮的有效性 IF BOF() OR this.Value=1 this。command1。enabled=.f. this。command2.enabled=。f。 ELSE mand1.enabled=.t. mand2。enabled=。t。 ENDIF IF EOF() OR this.Value=4 mand3。enabled=.f. this。command4.enabled=。f. SKIP —1 ELSE mand3.enabled=。t。 this。command4。enabled=。t。 ENDIF thisform。Refresh 2.班级管理表单设计 班级管理功能主要包括对班级资料的浏览、添加、删除、修改.表单运行效果如果图14—
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服