基于XML与ActionScript3.0的题库型课件平台的设计

时间:2022-04-14 01:30:26

基于XML与ActionScript3.0的题库型课件平台的设计

【摘要】本文设计并实现了一种动态试题库课件平台,以方便教师检测学生学习情况。该课件平台的特点是:采用XML+ActionScript3.0技术,将试题信息存放在外部 XML文件中,程序运行时,通过ActionScript3.0读取XML文件中的数据,并呈现给用户。只需要修改XML文件就可以实现试题的更新与删减,大大减轻了后期维护与修改的工作量,从而提高平台的使用率。

【关键词】ActionScript3.0;XML;题库型课件;Flash

练习和测试用于检测学生学习情况,是教学活动中的重要环节之一。不仅能帮助学生有针对性地练习已学知识,达到全面、长久地掌握知识的目的,也是检验教学效果最直接最有效的手段。

相对于目前已有的教学实践中所使用的多媒体课件制作时间长 、耗费精力多、使用效率低的现状,本文讨论的是基于XML的FLASH动态题库型课件平台的设计。

一、为什么要使用XML

目前已有的FLASH试题库课件,是将所有的试题预先放置在主体文件中,一个课件就是一份试卷。在制作完成这些系统后,有些课程因为技术进步,知识点会不断变化更新,要经常性对系统中的试题进行变更,如果每次更新内容就要再重做一次相应的动画作品,工作量太大。

采用XML与ActionScript3.0技术相结合,动态题库型课件平台就具有读取外部XML文件的功能,从而实现题目文件与程序文件分离。

教师如果需要根据教学目标及时更新试题,不用掌握Flash基础知识,只需改变XML文件的相应内容即可。而XML文件为纯文本文件,所有能处理纯文本的软件都可以处理XML,使用电脑中的记事本就可以直接读取和修改。不仅省去大量重复的制作过程与时间,也提高了试题库的使用率。

二、FLASH动态题库型课件平台的设计

1.设计思路

采用题目文件与程序文件分离的方式,运用Actionscript3.0语言调用外部XML文件,使其在XML场景中的动态文本中进行动态显示。课件平台主要有三个模块:模块一为封面,主要用于显示题库的主标题内容;模块二为练习题显示模块,该页面将通过动态文本框动态显示题目内容;模块三为成绩统计模块,通过该模块,程序将采用动态文本将学生做练习的总分数情况进行动态显示。程序运行的三个模块界面显示效果如图1-3所示。

2.制作步骤

(1)编写XML文件

在本实例中,读者不需要专门学习 XML 语言,只要按照下面的格式创建一个 XML 文件即可。如果没有专门的XML 编辑器,可以用记事本来编写。

<?xml version="1.0" encoding="utf-8"?>

<questions>

<question>

<id>1</id>

<title>术语LAN指的是( )</title>

<keyA>网络操作系统</keyA>

<keyB>网卡</keyB>

<keyC>广域网</keyC>

<keyD>局域网</keyD>

<key>4</key>

</question>

</questions>

在这个XML文件中,第一行定义了XML文件的版本和编码。第一行以后就是XML的主体,<questions>是本XML 文件的根元素,一个 XML 文件只能有一个根元。在<questions>下面有多个<question>层级,每个<question>层级里面有<id>元素存放题目的编号;<title>元素存放试题;<keyA>、<keyB>、<keyC>、<keyD>分别存放四个选项;<key>存放正确答案。

图1

图2

图3

编写结束后,我们将文件以.xml作为扩展名保存为questions.xml,并在对话框中的“编码”项中选择 UTF-8,保存在与动画同一级目录下进行存放。

(2)试题的显示

创建好用户界面和数据文件,如何实现试题库最基本的任务,载入试题并将数据在FLASH中显示出来呢?这就要利用ActionScript3.0动作脚本实现程序逻辑结构了。

①首先,我们要在FLASH中加载XML文件。

和ActionScript2.0中加载XML不同,在ActionScript3.0中首先需要定义一个URLRequest对象,用以存储XML文件的路径信息,如:var xmlReq:URLRequest=new URLRequest(xmlUrl);然后建立一个URLLoader对象来加载相应的外部文件,以加载XML文件,如:var xmlLoader:URLLoader= new URLLoader(xmlReq)。

同时,添加事件监听器,以在XML数据导入完成后处理XML数据,使用xmlLoader.data来获取加载好的XML文件的内容,并将其类型转换问XML对象。代码如下:

xmlLoader.addEventListener(PLETE,xmlLoaded);

function xmlLoaded(event:Event):void{

questions_xml=new XML(xmlLoader.data);}

②然后,通过动态文本将题目显示出来。

当XML文件已经被加载,并转换成了questions_xml对象后,其中就包含了有关试题的完整的XML的信息,现在要在舞台的动态文本框中显示这些信息。

在questions_xml对象中,试题存放在<question>层级下的<title>元素节点上,且在<questions>下面有多个<question>层级,<question>层级是以数组的方式存在的,因此可以使用question[i].title获取该信息。如:title_txt.text=questions_xml.question[0].title;就可以将XML文件中的第一题显示在舞台的试题文本框中。同样的方式,可以读取试题选项及正确答案的相应信息。

(3)评分功能

测试完成后,在课件平台的成绩统计模块中,通过动态文本框呈现用户回答正确的题目数、错误的题目数及最终得分,实现评分功能。

首先,在测试页面,设置四个属同一个GroupName组中的单选按钮,对应单选题的四个选项,并且用数组将用户所选选项记录下来。当用户点击“下一题”按钮时,将记录的上一题的答案与正确选项进行比对,判断选项是否和标准答案一致。如果相同,则表示回答正确的变量加+1,不相同则表示回答错误的变量加+1。完成测试后,根据试题的数量,计算分数,最后反馈在成绩统计模块中。

三、结束语

本文所讨论的动态题库型课件平台采用外部的XML文档存放考试题目,实现了单项选择题的组卷和评分功能。由于采用外部文件加载的方式实现题目的显示,题目内容的更改不需要在Flash中进行,这大大提高了课件制作效率,也为教师根据教学需要及时更换题目内容提供了便利。

参考文献

[1]刘欢.Flash ActionScript3.0全站互动设计[M].北京:人民邮电出版社,2012.

[2]张靖.基于XML的FLASH动态展示平台的设计[J].科技通报,2013,6.

上一篇:电力系统自动化工程中PLC的应用 下一篇:刍议电力工程测绘技术在工程施工中的应用