毕业设计(论文)VB考试管理系统的分析与设计_第1页
毕业设计(论文)VB考试管理系统的分析与设计_第2页
毕业设计(论文)VB考试管理系统的分析与设计_第3页
毕业设计(论文)VB考试管理系统的分析与设计_第4页
毕业设计(论文)VB考试管理系统的分析与设计_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、考试管理系统的分析与设计考试管理系统的分析与设计 【摘要】 一般情况教师想出一份试卷进行学生成绩的摸底考试,要么 到庞大的题库里一道道的把试题找出来,或是从几本相关的书里 把试题一道道挑出来。这样即费时又费力,而且很难保证试题的 覆盖面和把握好试卷的难度。而考试系统是专门为教学、培训单 位开发的,非常适用于大、中、小学校的学生进行考试管理的系 统,尤其是对客观 题的出题考试,其成绩的自动登记、统计、汇 总可以极大的减轻教师批卷的劳动强度,减少批卷时间,提高批 卷的准确型,对教师的减负有极大的帮助以便教师空出更多的时 间从事创造性的教学活动. 本系统使用 visual basic 编程语言,采用

2、 access 作为数据 库,实现了老师对试卷的生成,试卷的管理,查询修改、判卷以及 学生的考试等,经过实际的测试证明,本文所设计的考试管理系统 可以用于实际的教学考试管理,本文重点描述了设计的过程,重难 点技术及解决方案. 【关键词】:管理信息系统、考试管理系统、系统开发 数据 库 目目 录录 【摘要摘要】.1 第一章第一章 引言引言.4 2.12.1 研究背景研究背景.5 2.22.2 研究意义研究意义.5 第三章第三章 系统的开发环境系统的开发环境.7 3.13.1 开发平台的选择开发平台的选择.7 3.23.2 开发工具的选择开发工具的选择.7 3.2.13.2.1 开发语言介绍开发语

3、言介绍.7 第四章第四章 系统需求分析系统需求分析.12 4.14.1 经济可行性分析经济可行性分析.12 4.24.2 操作可行性分析操作可行性分析.13 4.34.3 技术可行性分析技术可行性分析.13 4.44.4 系统逻辑模型的提出系统逻辑模型的提出.14 4.54.5 数据词典数据词典.15 第五章第五章 系统的详细设计系统的详细设计.17 5.15.1 系统设计的依据系统设计的依据.17 5.25.2 系统总体结构设计系统总体结构设计.17 5.35.3 系统的详细设计系统的详细设计.18 5.3.15.3.1 数据库设计数据库设计.18 5.3.25.3.2 用户界面设计用户界面

4、设计.23 5.45.4 各模块的主要设计各模块的主要设计.26 5.4.15.4.1 学生考试模块的设计学生考试模块的设计.26 5.4.25.4.2 学生考试成绩查询模块的设计学生考试成绩查询模块的设计.28 5.4.35.4.3 教师管理模块的设计教师管理模块的设计.29 5.4.3.15.4.3.1 教师命题的设计教师命题的设计: :.30 5.4.3.25.4.3.2 试题管理的设计试题管理的设计.34 5.4.3.35.4.3.3 评判试卷的设计评判试卷的设计.37 第六章第六章 菜单的设计及系统的编译实现菜单的设计及系统的编译实现.39 6.16.1 主菜单的设计主菜单的设计.3

5、9 6.26.2 系统的编译系统的编译.40 第七章第七章 开发总结与对管理信息系统的展望开发总结与对管理信息系统的展望.40 7.17.1 开发总结开发总结.40 7.27.2 对管理信息系统的展望对管理信息系统的展望.41 参考文献参考文献.42 致致 谢谢.43 第一章 引言 目前,许多专业认证考试和其他各种考试已经由笔试转变为 采用计算机考试系统进行考试。计算机考试系统与传统的笔试相 比,有多方面的优势。 首先,可以省去试卷印刷的费用,减轻教师阅卷的负担,加 快考试进程; 其二,可以充分发挥计算机在信息处理方面的优势,例如: 建立海量的题库供将来使用,对考试结果作分析统计,提供有价 值

6、的信息等。这都有赖于计算机网络的高速发展带来的功能强大 的信息处理平台,使创建一套集信息采集、信息加工、信息传输 与信息存储高度自动化、共享化的信息管理系统成为可能。 但是,随着无纸化考试的兴起,传统的考试报名方法却未得 到本质上的转变,各种大量重复单调的工作,仍需耗费巨大的人 力、物力资源。随着科学技术的迅猛发展和管理水平的不断提高, 计算机已经被广泛应用于日常管理之中,那么作为一个教育单位 来说,教育资源中的新的考试方式的管理和利用是教育单位发展 的保证,因此开发一套完整的考试管理系统已是大势所趋. 第二章 考试管理系统研究的背景及意义 考试管理系统主要研究如何借助计算机进行无纸化的考试,

7、 提高考生考试,试题的批卷速度、精度,保证批卷的客观、公正、 一致,节省批卷时间、减轻教师负担,提高工作效率。 2.1 研究背景 随着时代的发展和文化的进步,各种各样的考试多如牛毛, 试卷中包括大量的客观题,这无疑增加了阅卷老师的批卷难度和 工作量。如何才能更客观、准确、高效地去评估、检测一个学生 的知识和能力水平。一些教育发达的国家由此设立了不少规模巨 大的标准化考试,参加考试的考生数目庞大,次数频繁,还要求 每次考试所得的分数具有可比性,这样才能用于鉴别和选拔人才。 学校投入大量的人力、物力到试题的准备、试题的抽去、试卷组 织、试卷排版、印刷过程等过程。就在这样的大背景下,为适应 这类考试

8、事业的大规模发展,一个高质量的、高效率的考试管理 系统就应运而生。 随着国内外计算机网络的不断的普及,虽然出现了很多的网 络考试,对传统的考试产生了巨大的挑战,但是目前国内还是以 传统的考试为主,同时,通过努力研究,考试管理系统应该也可 以运用到计算机网络考试中,进一步扩大计算机考试系统的应用 领域。 2.2 研究意义 为了提高考试管理系统的批卷速度和准确率,我们研究如何 借助计算机和数据库技术来实现考试管理的计算机自动化。考试 管理系统可以有效的降低阅卷老师的阅卷难度,提高统计,排序 效率,提高阅卷准确率。目前,国内传统的考试方式一般还都是 人工批阅,人工管理,不但工作量大,而且难度高,考试

9、管理系 统能很好解决上述难点。对于高速发展的未来时代,自动化的计 算机考试管理系统将会是大势所趋,着力研究无纸化的考试管理 系统将有重大而深远的意义。考试管理系统的应用范围十分广泛, 适用于大、中、小学校的学生考试及试卷的批改、成绩的登记、 统计、汇总等。对计算机、外语等学科的考试尤其实用。使用考 试管理系统可以减轻教师出题考试,批卷的劳动强度,减少批卷 时间,提高批卷的准确型,对教师的减负有极大的帮助(一般可 提高工作效率 5 倍以上)。考试管理系统可以由非任课教师、外 专业教师或其他非教学人员进行管理,对教考分离和批卷的公正 性、一致性有特殊意义。考试管理系统还可以将主观题的得分与 客观题

10、一并进行分类、统计、排序。考试管理系统能处理的考题 包括:判断题、单选题、双选题、多选题、等等。 第三章 系统的开发环境 3.1 开发平台的选择 考虑到本系统的性能要求,和现有的条件,我们选择了 windows2000 中文版作为开发、测试和运行的平台。因为 windows 操作系统是目前应用最广的操作系统,它以全新的图形 界面,简单快捷的操作方式,支持多媒体功能等特点而成为软件 发展的流行趋势,选用它作为开发平台,易于功能的扩展和软件 升级。 3.2 开发工具的选择 针对目前世界上流行的大量软件和开发工具,经过认真分析 其优缺点,结合计量器具管理系统的需要和目前的硬件环境,我 们选用微软 w

11、indows 平台下的 visual basic 6.0(简写为 vb6.0)作为软件开发工具。 3.2.1 开发语言介绍 现在,市场上可以选购的应用开发产品很多,流行的也有数 十种。目前在我国市场上最为流行、使用最多、最为先进的可用 作企业级开发工具的产品有: microsoft 公司的 visual basic microsoft 公司的 visual c borland 公司的 delphi powersoft 公司的 powerbulider java 等等 在目前市场上这些众多的程序开发工具中,有些强调编程语 言的弹性与执行效率;有些则偏重于可视化程序开发工具所带来 的便利性与效率的

12、得高,各有各的优点和特色,也满足了不同用 户的需求。然而,语言的弹性和工具的便利性是密不可分的,只 有便利的工具,却没有弹性的语言作支持,许多特殊化的处理动 作必需要耗费数倍的工夫来处理,使得原来所标榜的效率提高的 优点失去了作用;相反,如果只强调编程语言的弹性,却没有便 利的工具作配合,会使一些即使非常简单的界面处理动作,也会 严重地浪费程序设计师的宝贵时间。 作为数据库系统的开发,visual basic 是一个非常理想选择。 数据库是 mis 中的重要支持技术,在 mis 开发过程中,如何选择 数据库管理是一个重要的问题,目前,数据库产品较多,每种产 品都具有各自的特点和适用范围,因此,

13、在选择数据库时,应考 虑数据库应用的特点及适用范围,本系统选用的数据库语言 visual basic 语言,该开发工具具有很多长处: visual basic 是一种可视化的、面对对象和条用事件驱动方 式的结构化高级程序设计,可用于开发 windows 环境下的种类应 用程序。它简单易学、效率高,且功能强大,可以与 windows 的 专业开发工具 sdk 相媲美,而且程序开发人员不必具有 c/c+编 程基础。在 visual basic 环境下,利用事件驱动的编程机制、 新颖易用的可视化设计工具,使用 windows 内部的应用程序接口 (api)函数,以及动态链接库(dll)、动态数据交换

14、(dde)、对象 的链接与嵌入(ole)、开放式数据访问(odbc)等技术,可以高效、 快速地开发出 windows 环境下功能强大、图形界面丰富的应用软 件系统。 总的来说,visual basic 具有以下特点: 可视化编程: 用传统程序设计语言设计程序时,都是通过编写程序代码来 设计用户界面,在设计过程中看不到界面的实际显示效果,必须 编译后运行程序才能观察。如果对界面的效果不满意,还要回到 程序中修改。有时候,这种编程-编译-修改的操作可能要反复多 次,大大影响了软件开发效率。visual basic 提供了可视化设计 工具,把 windows 界面设计的复杂性“封装”起来,开发人员不

15、 必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布 局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对 象,并设置这些图形对象的属性。visual basic 自动产生界面设 计代码,程序设计人员只需要编写实现程序功能的那部分代码, 从而可以大大提高程序设计的效率。 面向对象的程序设计 4.0 版以后的 visual basic 支持面向对象的程序设计,但它 与一般的面向对象的程序设计语言(c+)不完全相同。在一般的 面向对象程序设计语言中,对象由程序代码和数据组成,是抽象 的概念;而 visual basic 则是应用面向对象的程序设计方法 (oop),把程序和数据封装起来作为

16、一个对象,并为每个对象赋 予应有的属性,使对象成为实在的东西。在设计对象时,不必编 写建立和描述每个对象的程序代码,而是用工具画在界面上, visual basic 自动生成对象的程序代码并封装起来。每个对象以 图形方式显示在界面上,都是可视的。 结构化程序设计语言 visual basic 是在 basic 语言的基础上发展起来的,具有高 级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维 方式。visual basic 语句简单易懂,其编辑器支持彩色代码,可 自动进行语法错误检查,同时具有功能强大且使用灵活的调试器 和编译器。 visual basic 是解释型语言,在输入代码的同时

17、,解释系统 将高级语言分解翻译成计算机可以识别的机器指令,并判断每个 语句的语法错误。在设计 visual basic 程序的过程中,随时可 以运行程序,而在整个程序设计好之后,可以编译生成可执行文 件(.exe),脱离 visual basic 环境,直接在 windows 环境下运 行。 事件驱动编程机制 visual basic 通过事件来执行对象的操作。一个对象可能会 产生多个事件,每个事件都可以通过一段程序来响应。例如,命 令按钮是一个对象,当用户单击该按钮时,将产生一个“单击” (click)事件,而在产生该事件时将执行一段程序,用来实现指 定的操作。 在用 visual basi

18、c 设计大型应用软件时,不必建立具有明 显开始和结束的程序,而是编写若干个微小的子程序,即过程。 这些过程分别面向不同的对象,由用户操作引发某个事件来驱动 完成某种特定的功能,或者由事件驱动程序调用通用过程来执行 指定的操作,这样可以方便编程人员,提高效率。 访问数据库 visual basic 具有强大的数据库管理功能,利用数据控件和 数据库管理窗口,可以直接建立或处理 microsoft access 格式 的数据库,并提供了强大的数据存储和检索功能。同时,visual basic 还能直接编辑和访问其他外部数据库,如 dbase,foxpro,paradox 等,这些数据库格式都可以用

19、visual basic 编辑和处理。 visual basic 提供开放式数据连接,即 odbc 功能,可通过 直接访问或建立连接的方式使用并操作后台大型网络数据库,如 sql server,oracle 等。在应用程序中,可以使用结构化查询语 言 sql 数据标准,直接访问服务器上的数据库,并提供了简单的 面向对象的库操作指令和多用户数据库访问的加锁机制和网络数 据库的 sql 的编程技术,为单机上运行的数据库提供了 sql 网络 接口,以便在分布式环境中快速而有效地实现客户/服务器 (client/server)方案。 动态数据交换(dde) 利用动态数据交换(dynamic data

20、exchange)技术,可以把 一种应用程序中的数据动态地链接到另一种应用程序中,使两种 完全不同的应用程序建立起一条动态数据链路。当原始数据变化 时,可以自动更新链接的数据。visual basic 提供了动态数据交 换的编程技术,可以在应用程序中与其他 windows 应用程序建立 动态数据交换,在不同的应用程序之间进行通信。 对象的链接与嵌入(ole) 对象的链接与嵌入(ole)将每个应用程序都看作是一个对象 (object),将不同的对象链接(link)起来,再嵌入(embed)某个 应用程序中,从而可以得到具有声音、影像、图像、动画、文字 等各种信息的集合式的文件。ole 技术是 m

21、icrosoft 公司对象技 术的战略,它把多个应用程序合为一体,将每个应用程序看作是 一个对象进行链接和嵌入,是一种应用程序一体化的技术。利用 ole 技术,可以方便地建立复合式文档(compound document),这 种文档由来自多个不同应用程序的对象组成,文档中的每个对象 都与原来的应用程序相联系,并可执行与原来应用程序完全相同 的操作。 动态链接库(dll) visual basic 是一种高级程序设计语言,不具备低级语言的 功能,对访问机器硬件的操作不太容易实现。但它可以通过动态 链接库技术将 c/c+或汇编语言编写的程序加入到 visual basic 应用程序中,可以像调用

22、内部函数一样调用其他语言编写的函数。 此外,通过动态链接库,还可以调用 windows 应用程序接口(api)函 数,实现 sdk 所具有的功能 第四章 系统需求分析 从目前 it 业界比较流行的数据库开发、管理软件来看,对 于比较简单的中小型数据库,vb 和 windows 2000 server 以及 microsoft access 2000 的结合无疑是在实际应用中较为成功的 一种解决方案。为用户提供了业界软件开发一直坚持的非常友好、 操作简单的用户界面、完善强大的数据库操作功能和简洁明了的 数据库接口。所以技术实行起来相对会容易。 4.1 经济可行性分析 本系统开发简单但要耗去一定的

23、时间,所用的开发工具和软 件都差不多是免费的。而且,由于系统能够在未来较长的一段时 期内稳定地发挥作用,这对于企业的办公自动化管理,节省企业 的人力、物力资源等都有很大的帮助。由此可见在,开发此系统 在经济上是完全可行的。 4.2 操作可行性分析 如今的计算机已经走进千家万户,硬件成本的下降,导致计 算机购买成本的降低.我的这套系统是利用自己的计算机加微软 的集成开发环境 microsoft visual basic6.0 作为软件的开发平 台,使开发出来的系统有友好的用户界面、有良好的安全性设置、 有详细的操作说明书,这样更使各类用户很快地掌握系统的使用 方法,操作友好因此在操作上是可行的.

24、 4.3 技术可行性分析 可行性分析是系统分析阶段的第二项活动,可行性分析能 使新系统达到 以最小的开发成本取得最佳的经济效益。可行性分析的目的, 是根据开发管理信息系统的请求,通过初步调查,对要开发的管 理信息系统从技术上、经济上、资源上和管理上进行是否可行的 研究分析。这是一项保证资源合理使用、避免失误和浪费的重要 工作。 1、经济上的可行性。 2、技术上的可行性。 3、资源上的可行性。 4、管理上的可行性。 4.4 系统的安全性分析 安全系统的需求定义: 系统提供用户登录功能(进行用户身份验证),并且用户名 和用户编号是唯一的。用户在登录界面上填写任意的用户名和用 户密码(中文或英文);

25、系统提供登录过程中的出错处理机制和 操作成功处理机制。 系统对非法用户具有警告功能,例:单用户表中不存在的用 户企图登录系统,系统应该要求用户输入合法用户名和用户密码, 并警告用户的操作。 4.4 系统逻辑模型的提出 为了实现管理信息系统的计算机化,仅仅用文字来描述信 息的流动和存储还远远不够,还要进一步调查分析舍去物质流, 抽象出信息流,绘制出数据流程图,并对各种数据的属性和各项 处理功能进行详细分析。系统分析的主要成果是系统的逻辑模型。 本系统主要是以数据流图、数据字典和 e-r 图为主要描述工具来 勾画系统的概貌。 数据流图(dfd,data flow diagram)是描述数据处理过程

26、 的有力工具。数据流图从数据传递和加工的角度,以图形的方式 刻画数据流从输入到输出的移动变换过程。 数据流图的基本图形元素有 4 种: 为了使数据流图便于在计算机上输入和输出,免去画曲线、 斜线和圆的因难,现在将会用另一种比较合理及更清晰的方法进 行分析。 4.5 数据词典 数据词典(data dictionary ,dd)是结构化分析方法 的另一个工具,它与数据流图配合,能清楚地表达数据处理的要 求。数据流图给出系统组成及其内部各元素相互间的关系,但未 说明数据元素的具体含意。数据词典的任务是对于数据流图中出 现的所有命名元素,包括数据流、加工、数据文件,以及数据的 源、汇点等,在数据词典中

27、作为一个词条加以定义,使得每一个 图形元素的名字都有一个确切的解释。 首先说明各符号的代表的意义: = 被定义为; + 与 ; (如,x = a + b ,表示 x 由 a 和 b 组 成) .|. 或 ; (如, x = a , b,x = a | b,表 示 x 由 a 或由 b 组成) . 重复;(如,x = a,表示 x 由 0 个或多个 a 组成) 如列举用户登录模块的定义如下: 用户登录模块 用户登录的定义格式: 用户名 = 字母,数字 用户 = 管理员 密 码 = 字母,数字 用户验证表 =用户名+密码 另一种方式是以 e-r 图来描述数据之间的关联. 如系统用户表的 e-r 图

28、如下: 系统管理 id 编 号 用户名密码 系统用户表 e-r 图 第五章 系统的详细设计 管理信息系统设计阶段的主要目的是将系统分析阶段所 提出的反映了用户信息需求的系统逻辑方案转换成可以实施的基 于计算机与通信系统的物理(技术)方案。 本次设计我主要负责选择题的出题考试设计,现将设计过程 分析如下: 5.1 系统设计的依据 1、系统分析的成果 2、现行技术 3、现行信息管理和信息技术的标准、规范和有关法律 制度 4、用户需求 5、系统运行环境 5.2 系统总体结构设计 按照结构化的系统设计方法,考试管理系统从功能上可以划 分为以下几个子系统: 考试管理系统 身份验证 学生考试 教师管理 信

29、 息 查 询 开 始 考 试 生 成 试 卷 浏 览 试 卷 修 改 试 卷 试 题 管 理 评 判 试 卷 查 询 结 果 5.3 系统的详细设计 5.3.1 数据库设计 数据库设计是要在一个给定的应用环境(dbms)中,通过合 理的逻辑设计和有效的物理设计,构造较优的数据库模式、子模 式,建立数据库和设计应用程序,满足用户的各种信息需求。 概念结构设计 在数据库设计中,先要对系统分析所得的数据字典中的数据 存储进行分析,然后得出系统的关系模式,可以采用实体联 系图(简称 er 图)的方法进行数据结构的描述。er 图 由实体、属性、联系三部分组成。er 图的有关符号说明如下: 实体 属性 根

30、据数据字典的内容,得到本系统的实体联系图如下: 科目(win) 考场编 号 日期 时间 姓名 学号 成绩 科目 e-r 图 试题库 编号 科目 题型难易 程度 章节 答 案 题 目 试题库 e-r 图 资料 标题 类型 来源 内容 评价 资料 e-r 图 试题库管理系统中所涉及的主要实体集及其属性如下: 科目(win) 考场编号,学号,姓名,成绩,考试日期,考试时间 试题库科目,章节,编号,题型,难易程序,题目,答案 资料标题,类型,来源,内容,评价等. 数据库的结构设计 数据库结构设计的原则如下: (1)尽可能的减少数据冗余和重复。 (2)结构设计与操作设计相结合。 (3)数据结构具有相对的

31、稳定性。 基于以上设计原则,本系统中相关数据库表结构设计举例如 下: 科目表 win 字段名类型是否为空长度 考场编号字符型 not null4 学号字符型 not null2 姓名字符型 null6 成绩数值型 null3 考试日期日期型 null8 考试时间字符型 null8 试题库表 字段名类型是否为空长度 编号字符型 not null10 科目字符型 not null50 题型字符型 null10 题目字符型 null4 章节备注型 null50 答案字符 not null50 难易程度字符型 null4 资料表 字段名类型是否为空长度 类型字符型 not null10 标题字符型 n

32、ot null100 内容备注型 null4 来源字符型 null10 评价字符型 null10 数据库的安全性、完整性、并发控制和恢复 信息数据是企业中非常重要的资源,因此保证数据库的安 全可靠、正确有效是非常重要的问题。一般的数据库管理系统 (dbms)都有提供了一定的数据保护功能。数据库保护也称为数 据控制,主要包括数据的安全性、完整性、并发控制和数据库的 恢复等。 (1)数据库的安全性 数据库的安全性是指保护数据库以防止不合法的使用所 造成的数据泄露、更改或破坏。由于数据库系统中存放着大量的 数据,且为许多用户所共享,因此安全性问题是必须首先要解决 的。一般计算机系统中的安全措施是按照

33、“用户标识和鉴别”、 “dbms 存取控制”、“os 级安全控制”、“db 密码存储”来一 级一级设置的。 在现在流行的数据库系统中一般都提供以下两种控制:用户 标识和鉴别、数据存取控制。 (2)数据完整性 为了保证数据库数据的正确性和相容性,数据库管理系统 (dbms)都提供了一种机制来检查数据库中的数据,看它是否满 足语义的规定条件,dbms 称这种机制为“数据完整性检查”。一 般的 dbms 中是通过完整性约束和数据库触发器来实现这一机制 的。 (3)并发控制 在多用户数据库环境中,多个用户程序可并行存取数据库中 的数据,为了以正确的方式调度该并发操作,避免造成“丢失修 改”、“不能重读

34、”、“读脏数据”等不一致的情况,dbms 引入 了“并发控制”这一机制。 并发控制的主要方法是采用封锁机制,一般采用两种封锁机 制:共享机制和排它机制来实现。 (4)数据库后备与恢复 主要使用转储、日志等方法进行数据库的恢复。 5.3.2 用户界面设计 用户界面是指软件系统与用户之间交互的接口,通常包括输 出,输入,人机对话的界面与方式等。由于本系统的最终用户是 那些对计算机技术并不算很精通的管理人员,因此本系统采用了 基于菜单选择,填写表格和简单的问答选择等友好的用户界面交 互方式。 系统安全性验证用户界面设计 用户登录窗口界面是用户看到的第一幅画面,也是进入系统 之前必须经过的一道“关口”

35、。因此,简洁、实用、友好、安全 是设计时应当考虑到的风格。 用户登录本系统,开始登录画面为: 当进度条加载完成后出现登录提示窗体如下: 系统主画面屏幕区域设计 进行系统的主画面屏幕区域设计时,是将整个屏幕划分为三 个区域,如下图所示: 主 菜 单 区 工 作 区 状 态 信 息 区 登录窗体的源代码设计如下 private sub cmdok_click() if txtusername.text = then msgbox 请输入姓名, vbcritical, 登录失败 txtusername.setfocus exit sub end if if txtpassword.text = th

36、en msgbox 请输入口令, vbcritical, 登录失败 txtpassword.setfocus exit sub end if select case utypes.listindex case 0 testuser.log txtusername, txtpassword, student case 1 testuser.log txtusername, txtpassword, teacher case 2 testuser.log txtusername, txtpassword, administrator end select if not testuser.logfa

37、il then unload me else msgbox 无法登录, 请重试!, vbcritical, 用 户登录 txtusername.setfocus sendkeys home+end end if end sub 5.4 各模块的主要设计 5.4.1 学生考试模块的设计 如图所示,学生考试主要是从题库中抽取教师出的题,从数据 库中读取出来,给学生考试,其源程序设计如下: 界面上的工具栏跟交卷的功能设计如下: private sub cmdfirst_click() if not answerset then setanswer end if icount = 1 prepareq

38、uestion (icount) end sub private sub cmdlast_click() if not answerset then setanswer end if icount = qpaper.questionnum preparequestion (icount) end sub private sub cmdnext_click() if not answerset then setanswer end if if icount 1 then icount = icount - 1 preparequestion (icount) end if end sub pri

39、vate sub cmdsubmit_click() if not answerset then setanswer end if unload me end sub 5.4.2 学生考试成绩查询模块的设计 在该模块中,学生在进行考试交卷后,在后台由老师评评卷, 给出评分,评分后,学生可以进行查询.其查询的代码设计如下: private sub form_load() dim t as single, p as single txts1.text = qpaper.oscore txts2.text = qpaper.objectivescore txto1.text = qpaper.ssc

40、ore txto2.text = qpaper.subjectivescore t = csng(txts2.text) + csng(txto2.text) txttotal.text = cstr(t) p = csng(txts1.text) + csng(txto1.text) txtpercent = format(t / p, #.0%) end sub 5.4.3 教师管理模块的设计 在该模块中一共有 6 个子模块,现将各个子模块分别介绍如 下: 5.4.3.1 教师命题的设计: 从图可以看出,教师可以进行命题的题型为填空题,判断题, 单选题,多选题以及问题题,通过窗体中间的选入

41、按钮完成试卷的 命题,并且生成报表.其报表及生成试题的实现源代码如下: private sub cmdreport_click() me.hide dbrs.close qpaper.reporttofile varfile.tmp frmreport.filename = varfile.tmp kill varfile.tmp frmreport.show vbmodal dbrs.open me.show vbmodal end sub private sub delq_click() if qstlist.listindex 0 then msgbox 请选择要删减的题目, vbcri

42、tical, 错 误 exit sub end if dim s as string dim p as integer dim rcount as long s = qstlist.text p = instr(s, .) rcount = val(left(s, p - 1) qpaper.delquestion rcount qstlist.removeitem qstlist.listindex end sub private sub form_load() qname(1) = 填空题 qname(2) = 判断题 qname(3) = 单选题 qname(4) = 多选题 qname

43、(5) = 问答题 mainframe.caption = 试题选择 set dbrs = dataenv.rsfillingq dbrs.open set datalib.datasource = dbrs datalib.refresh optfill.value = true ttype = 1 listqst end sub private sub form_unload(cancel as integer) dbrs.close set dbrs = nothing end sub private sub optessayq_click() dbrs.close set dbrs =

44、 dataenv.rsessayq dbrs.open set datalib.datasource = dbrs datalib.refresh lbltestlib.caption = 问答题题库 ttype = 5 end sub private sub optfill_click() dbrs.close set dbrs = dataenv.rsfillingq dbrs.open set datalib.datasource = dbrs datalib.refresh lbltestlib.caption = 填空题题库 ttype = 1 end sub private sub

45、 optmulsel_click() dbrs.close set dbrs = dataenv.rsmultiselq dbrs.open set datalib.datasource = dbrs datalib.refresh lbltestlib.caption = 多选题题库 ttype = 4 end sub private sub optrorw_click() dbrs.close set dbrs = dataenv.rsrorwq dbrs.open set datalib.datasource = dbrs datalib.refresh lbltestlib.capti

46、on = 判断题题库 ttype = 2 end sub private sub optsglsel_click() dbrs.close set dbrs = dataenv.rssingleselq dbrs.open set datalib.datasource = dbrs datalib.refresh lbltestlib.caption = 单选题题库 ttype = 3 end sub 修改和浏览试卷是在上一模块,命题的基础上进行试卷的修 改与查看,故不作重点描述. 5.4.3.2 试题管理的设计 试题管理模块进行试题的添加,删除,修改及查询操作.其设 计窗体如下: 添加按钮代

47、码: private sub cmdadd_click() datalibs.visible = false framechoice.enabled = false frameopt.enabled = false cmdok.visible = true cmdcancel.visible = true cmdtype = 1 dim i as integer for i = 0 to 7 txtfields(i).text = next end sub 删除按钮代码: private sub cmddel_click() if not dbrs is nothing then if not

48、 dbrs.bof and not dbrs.eof then dbrs.delete adaffectcurrent end if end if end sub 修改按钮代码: private sub cmdupdate_click() on error resume next datalibs.visible = false framechoice.enabled = false frameopt.enabled = false cmdok.visible = true cmdcancel.visible = true cmdtype = 2 txtfields(0).text = dbr

49、s.fields(teacherid) txtfields(1).text = dbrs.fields(score) txtfields(2).text = dbrs.fields(question) if cmbtype.listindex = 3 or cmbtype.listindex = 4 then txtfields(3).text = dbrs.fields(choice1) txtfields(4).text = dbrs.fields(choice2) txtfields(5).text = dbrs.fields(choice3) txtfields(6).text = d

50、brs.fields(choice4) end if txtfields(7).text = dbrs.fields(answer) end sub 5.4.3.3 评判试卷的设计 评判试卷的设计是用来实现教师对学生考试答题的评分,学 生考试交试卷后,教师方可进行评卷,其运行界面如下: 将数据库中的参考答案与学生答题答案进行比较,得出评分, 确定后提交到数据中,以供学生进行信息查询. 其源程序设计如下: private sub cmdcheck_click() dim qtype as questiontype qtype = qpaper.gettype(qserial) if qtype

51、blacks and qtype essayquestion then exit sub end if dim s as single dim str as string dataenv.rsqstpaper.open dataenv.rsqstpaper.filter = paperserial = & cstr(qserial) s = dataenv.rsqstpaper.fields(score) str = inputbox(输入分数值(应得分数 & cstr(s) & ), 评分, s) if isnumeric(str) then s = csng(str) dataenv.rs

52、qstpaper.fields(commence) = s dataenv.rsqstpaper.update dataenv.rsqstpaper.filter = end if dataenv.rsqstpaper.close end sub 评分完成后进行结果的查询,其查询窗体与学生考试信息查 询窗体一至,重不重复介绍.在下一章中将进行菜单的设计与源程 序的编译与执行. 第六章 菜单的设计及系统的编译实现 6.1 主菜单的设计 在实际的系统设计中,菜单可分为两种类型,即下拉式菜单和 弹出式菜单,下拉式菜单系统中,一般有一个主菜单,其中包括若 干个选择项.主菜单单的每一项又可下拉出下一级子菜单.这样用 一个个的窗口的形式弹出在屏幕上,它是通过菜单编辑器建立,其 步骤如下: 选取要建立菜单的窗体 从“工具”菜单中,选取“菜单编辑器”建立如下图所示的 系统主菜单: 可以看出菜单系统的建立比较直观,因此不作重点描述 6.2 系统的编译 一个典型的数据库应用程序由数据结构,操作界面,查询选 项和报表打印等组成。在设计应用程序时,应仔细考虑每个组件 提供的功能以及与其他组件之间的关系。设计好的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论