Visual Foxpro 6.0在试题库管理系统中的应用

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Visual Foxpro 6.0在试题库管理系统

中的应用

一、问题的提出

目前,大多数学校在进行期末考试时,基本上是由任课教师自行手工出题,要求A、B 卷各一份,且付标准答案。对于教师而言,每次都要查找大量资料,精心选题,花费很多时间,重复做同样的工作,如果每门课都建立了试题库,能根据需要自动生成相应的试题和标准答案,这不但能减轻教师的负担,又为教考分离带来了更多的方便和公正。

Visual FoxPro 6.0作为XBASE数据库家族的新成员,由于具有强大的查询与管理功能,有多种命令和函数,提供了“项目管理器”并引入了数据库表的新概念,使自由表之间有了相互联系。同时它扩大了对SQL语言的支持(8种),大量使用可视化的界面操作工具,支持面向对象的程序设计,允许用户对“对象”和“类”定义并编写相应代码它还支持网络应用,可以与W及E在内的微软其它应用软件共享数据等优点。

所以用它来建立一些课程的数据库,的确很实用,本文主要论述它在小型试题库管理系统中的设计过程。

二、系统分析

试题库管理系统只少应包括以下几个方面的内容:

(一)统中建立各种题型的数据库。如填空题库、简答题库、计算题库、选择题库、分析题库等。

(二)利用本系统能完成如下操作:随机试卷自动生成;手工试卷抽取;试卷抽取后打印。

(三)系统对数据库中的数据的管理,包括浏览、添加、查询、插入、删除、修改、编辑、统计及打印等。

(四)试卷生成后,能够自动产生标准答案。

(五)试卷批改完后,据输入成绩,能够产生相关的数据分析和图表分析。

据以上分析,笔者画出了如下的试题库管理系统流程图,它概括了各个模块功能及作用,是进行设计的依据:

三、系统设计

(一)自由表的建立(.dbl表)

根据各学科的考核特点,编写相应的数据库,题型的种类即为数据库的个数,并且每个数据库的字段名、数据类型及长度如下:

TNO(题号)(C,5)NANDU(难度)(C,1)

XGXS(相关系数)(C,2)TIMU(题目)(M字段)

DAAN(答案)(M字段)

每类题库以TNO为普通索引,以TNO为升序排列,其中NANDU分为a、b、c、d 四种,XGXS的设置是防止相同内容在不同题型中出现。

(二)数据库表的建立

上述自由表之间无任何关系,应使之建成为数据库表,这对表单的建立有很大帮助,它可以提供表单运行的数据环境。具体方法是:单击菜单按钮,选择新建数据库,然后将各题库自由表添入数据库表中,并保存下来,取名为试题库.dbc。

(三)试题库管理系统各大模块程序设计

这其中包含了表单的设计、编程,报表的设计以及和总菜单项的结合。限于篇幅,现对主要模块简单介绍一下。

1.自动选题子模块。进入VFP6.0,新建一表单,添加入表单抽取试题的数据环境———数据库表:试题库,运用表单的操作工具,向表单元加入需要的文本框、组合框、命令按钮等。在每类的题型后面,添入“微调控件”,形如:“Spinner1”规定每类“微调控件”的属性范围,即每类题型相应规定的抽题量,点击每类微调控件,设置其属性的

Spinner High Value 和Spinner Low Value 的值,如填空题:Spinner High Value=20,Spinner Low Value =0,双击“Spinner1”按钮,进入编程过程“Click”事件。源程序略。相应的生成题目放在临时表Ls1.dbf中。(其它题型如选择题,简答题……分别放在临时表

Ls2.dbf,Ls3.dbf,……中),此表还有两个命令按钮:“试卷生成”、“取消”;其中“试卷生成”的Click命令源程序是把Ls1.dbf,Ls2.dbf,Ls3.dbf,……等全部临时表赋给新建临时表文件名为临时.dbf,为试卷打印做准备。“取消”按钮不进行任何操作,其“click”事件源程序为:Thisform .release (释放内存)。

建立完后,取名为:自动选题.scx并保存,该模块执行时将呈现出一表单,可以通过提示操作“数码器”设置各种题型的选择数量,设置完毕后,点击“试卷生成”按钮,即可生成一份试卷。点击“取消”按钮可退出本次操作。

2.试题库管理模块。充分利用VFP6.0提供的简单、有效的表单向导设计器,设计出管理各种题库的表单模块,具体操作可以参照有关书籍,例如填空题的表单设计:点击VFP6.0新建按钮,选择新建表单项,点击向导图标按钮,选择表单向导,再点击“确定”。进入步骤1,选择先前已建立的数据库表“试题库.dbf”,在其中选择如“填空题.dbf”,选择其全部字段,有题号,难度,相关系数,题目,答案;依次完成步骤2;步骤3;步骤4。建立完表单向导后,打开它,运用各种工具进行排版,使其美观化。

(1)字体为9号字,TIMU,NANDU字段后的列表框拉长,满足显示要求。

(2)单击属性框中“Picture”一项,插入一背景图。

(3)表单命令为:填空题管理.scx

该模块运行后呈现出一表单,其中包括“第一个”、“前一个”、“下一个”、“最后一个”共四个浏览记录的按钮,通过操作可清晰再现每道题的题号、相关系数、难度、题目内容及答案。还有“查找”、“打印”、“添加”、“编辑”、“删除”、“退出”等命令按钮,可实现对每个题型库的管理。

3.报表打印模块。主要用来打印整个试题库及答案,首先将六大题库合并为一个试题库,新建两个基本表,分别为试题.dbf和答案.dbf,以此两个表为基础,再与向导和类库结合,分别新建两个报表试题.frx和答案.frx,运行报表预览效果,也可进行打印输出。

4.菜单设计。新建一下拉式菜单,第一层主菜单有:选题,试题库管理,打印,成绩统计,帮助,退出,下面各层又有子菜单,具体菜单如下:

菜单和各个模块之间的链接是通过简单编程来实现的,现以选题菜单来说明,在菜单设计器窗口中选择菜单名称“选题”,在“结果”框中选择“子菜单”选项,并单击其右侧的“创建”按钮进入过程区,编程:Do Form C: \* * * \form\ 自动选题.scx。其它子菜单项类似,编程如下:

手工选题:Set default to c: \* * * \form

Do Form 手工选题.scx

打印试卷:Set default to c: \* * * \form

Do Form 打印试卷.scx

相关文档
最新文档