用Flash制作选择题模板.docx
《用Flash制作选择题模板.docx》由会员分享,可在线阅读,更多相关《用Flash制作选择题模板.docx(10页珍藏版)》请在冰豆网上搜索。
用Flash制作选择题模板
用Flash制作选择题模板
用Flash制作选择题模板
如果用Flash制作课件中的选择题,每次都要打开Flash源文件进行修改,或者重新设计编辑。
其实我们可以在Flash中
把选择题做成一个模板,每次打开源文件,用文本编辑器编辑选择题的题目、标准答案等,然后直接调用即可。
先来看看完工后的选择题模板的时间轴的结构和界面(图中的序号?
~?
是为了下面的叙述方便而加上去的)。
整个
动画分为三层:
放置按钮的层(Buttons)、放置静态文本及动态文本框的层(Texts)、放置动作代码的层(Actions)
,下面按动画的层次具体谈谈选择题模板的制作方法。
1、静态文本及动态文本框的层(Texts)
全部文本及文本框放在第11帧。
在这一层的上方放上静态文本"选择题(共有题,每题分)",在其中的两个空格
里放上两个动态文本框(图中的?
和?
),文本变量分别为mylength和fen,用来读取题库中的题目总数及每题所占的分
数;右上角有一个动态文本框(图中的?
)显示最后的得分,文本变量为zongfen;左上方的动态文本框(图中的?
)文
本变量为tiqi,用来显示题次;图中标示为?
的动态文本框用来显示题目,文本变量为i;图中标示为?
的动态文本框用
来显示解答者所选答案,文本变量为answer;图中分别标示为?
、?
、?
、?
的动态文本框用来显示选择题的四个选项
,文本变量分别为a、b、c、d。
2、动作代码的层(Actions)这一层有4个关键帧:
分别是第1、10、11、12帧。
第1帧代码如下:
(1)
loadVariablesNum("timu.txt",0);//读入题目
loadVariablesNum("each.txt",0);//读入每题所占的分数变量
loadVariablesNum("dan0.txt",0);//读入标准答案
//下面初始化数组与变量
num=newArray();file:
//题目数组num0=newArray();
file:
//标准答案数组
youchoice=newArray();
file:
//解答者所选答案数组tiqi=1;//tiqi为显示题次
zongfen="";//zongfen为显示总分j=0;
//j为判断是否做完全部题目而设n=0;
//n为数组变量
第10帧代码如下:
(2)
num=timu.split("#");
//建立题目数组
mylength=num.length/5;file:
//获取总题目数
num0=dan0.split("#");//建立标准答案数组
fen=Number(each);
file:
//获取每小题所占分数值(3)第11帧代码如下:
//判断题库中是否还有题目,是否继续下一题
if(j〉=mylength){stop();
}else{
//获取题目
i=num[5*n];
a=num[5*n+1];
b=num[5*n+2];
c=num[5*n+3];
d=num[5*n+4];
}
(4)第12帧代码为:
stop();
3、按钮层(Buttons)按钮全部放在第11帧,按钮层里共有8个按钮:
[开始]、[上一题]、[下
一题]、[完成]按钮以及[A]、、[C]、[D]4个选择按钮,他们的Actions代码分别如下:
(1)[开始]按钮
on(release){gotoAndPlay
(1);
}
(2)[上一题]按钮
if(j〉0&&j~=mylength+1){
youchoice[n]=answer;
file:
//把之前所选答案写入数组tiqi=tiqi-1;
file:
//题次减1,返回前一题n=n-1;
j=j-1;
answer=youchoice[n];
file:
//显示答案数组的前一项的值}
gotoAndPlay(11);
}
(3)[下一题]按钮
on(release){if(j〈mylength-1){youchoice[n]=answer;
//把操作者选择答案写入数组n++;
tiqi++;
j++;
answer=youchoice[n];
file:
//显示在当前题目所选答案gotoAndPlay(11);
}else{
stop();
}
}
(4)[完成]按钮
on(release){if(j〈=mylength){zongfen=0;
youchoice[n]=answer;
//把操作者最后所选答案写入数组for(m=0;m〈mylength;m++){if(youchoice==num0){
zongfen=zongfen+Number(each);//判断选择是否正确,并计算总分}
}
n++;
j=mylength+1;
answer="";//清空所选答案
}else{
stop();
}
}
(5)[A]、、[C]、[D]4个选择按钮
代码分别如下:
on(release){answer="A";
}
on(release){answer="B";
}
on(release){answer="C";
}
on(release){answer="D";
}
4、编辑选择题文本
到这如果用Flash制作课件中的选择题,每次都要打开Flash源文件进行修改,或者重新设计编辑。
其实我们可以在
Flash中把选择题做成一个模板,每次打开源文件,用文本编辑器编辑选择题的题目、标准答案等,然后直接调用即可。
先来看看完工后的选择题模板的时间轴的结构和界面(图中的序号?
~?
是为了下面的叙述方便而加上去的)。
整个
动画分为三层:
放置按钮的层(Buttons)、放置静态文本及动态文本框的层(Texts)、放置动作代码的层(Actions)
,下面按动画的层次具体谈谈选择题模板的制作方法。
1、静态文本及动态文本框的层(Texts)
全部文本及文本框放在第11帧。
在这一层的上方放上静态文本"选择题(共有题,每题分)",在其中的两个空格
里放上两个动态文本框(图中的?
和?
),文本变量分别为mylength和fen,用来读取题库中的题目总数及每题所占的分
数;右上角有一个动态文本框(图中的?
)显示最后的得分,文本变量为zongfen;左上方的动态文本框(图中的?
)文
本变量为tiqi,用来显示题次;图中标示为?
的动态文本框用来显示题目,文本变量为i;图中标示为?
的动态文本框用
来显示解答者所选答案,文本变量为answer;图中分别标示为?
、?
、?
、?
的动态文本框用来显示选择题的四个选项
,文本变量分别为a、b、c、d。
2、动作代码的层(Actions)
这一层有4个关键帧:
分别是第1、10、11、12帧。
(1)第1帧代码如下:
loadVariablesNum("timu.txt",0);//读入题目
loadVariablesNum("each.txt",0);//读入每题所占的分数变量
loadVariablesNum("dan0.txt",0);//读入标准答案
//下面初始化数组与变量
num=newArray();file:
//题目数组num0=newArray();
file:
//标准答案数组
youchoice=newArray();
file:
//解答者所选答案数组tiqi=1;//tiqi为显示题次
zongfen="";//zongfen为显示总分j=0;
//j为判断是否做完全部题目而设n=0;
//n为数组变量
(2)第10帧代码如下:
num=timu.split("#");//建立题目数组
mylength=num.length/5;file:
//获取总题目数num0=dan0.split("#");//建立标准答案数组
fen=Number(each);
file:
//获取每小题所占分数值(3)第11帧代码如下:
//判断题库中是否还有题目,是否继续下一题
if(j〉=mylength){stop();
}else{
//获取题目
i=num[5*n];
a=num[5*n+1];
b=num[5*n+2];
c=num[5*n+3];
d=num[5*n+4];
}
(4)第12帧代码为:
;stop()
3、按钮层(Buttons)按钮全部放在第11帧,按钮层里共有8个按钮:
[开始]、[上一题]、[下
、[完成]按钮以及[A]、、[C]、一题]
[D]4个选择按钮,他们的Actions代码分别如下:
(1)[开始]按钮
on(release){gotoAndPlay
(1);
}
(2)[上一题]按钮
if(j〉0&&j~=mylength+1){
youchoice[n]=answer;
file:
//把之前所选答案写入数组tiqi=tiqi-1;
file:
//题次减1,返回前一题n=n-1;
j=j-1;
answer=youchoice[n];
file:
//显示答案数组的前一项的值}
gotoAndPlay(11);
}
(3)[下一题]按钮
on(release){if(j〈mylength-1){youchoice[n]=answer;
//把操作者选择答案写入数组n++;
tiqi++;
j++;
answer=youchoice[n];
file:
//显示在当前题目所选答案gotoAndPlay(11);
}else{
stop();
}
}
(4)[完成]按钮
on(release){
〈=mylength){if(j
zongfen=0;
youchoice[n]=answer;
//把操作者最后所选答案写入数组for(m=0;m〈mylength;m++){if(youchoice==num0){
zongfen=zongfen+Number(each);//判断选择是否正确,并计算总分}
}
n++;
j=mylength+1;
answer="";//清空所选答案}else{
stop();
}
}
(5)[A]、、[C]、[D]4个选择按钮代码分别如下:
on(release){answer="A";
}
on(release){answer="B";
}
on(release){answer="C";
}
on(release){answer="D";
}
4、编辑选择题文本
到这里,剩下的工作就是编辑题目(Timu.txt)、标准答案(Dan0.txt)和每
个题目所占分数(Each.txt)三个文本文件了。
要注意前两个文本的格式:
文本的开头先写"变量=",文本中题目与题目之间、题目与题目选项之间、题目选项
与题目选项之间用"#"隔开。
如题目文本(Timu.txt)的格式是:
timu=计算机中专门用于计算的设备是()#主板#中央处理器#内存#硬盘#如果需要扫描相片,你需要购置()#扫描
仪#数码相机#数码摄像机#显卡
标准答案(Dan0.txt)文本的格式是:
dan0=B#A
每个题目所占分数(Each.txt)文本的格式是:
each=6
修改each的值即可改变每个题目所占分数。
最后需要注意的是:
把刚才的三个文本文件保存在与Flash文件相同的目录下。
里,剩下的工作就是编辑题目(Timu.txt)、标准答案(Dan0.txt)和每个题目所占分数(Each.txt)三个文本文件了
。
要注意前两个文本的格式:
文本的开头先写"变量=",文本中题目与题目之间、题目与题目选项之间、题目选项
与题目选项之间用"#"隔开。
如题目文本(Timu.txt)的格式是:
timu=计算机中专门用于计算的设备是()#主板#中央处理器#内存#硬盘#如果需要扫描相片,你需要购置()#扫描
仪#数码相机#数码摄像机#显卡
标准答案(Dan0.txt)文本的格式是:
dan0=B#A
每个题目所占分数(Each.txt)文本的格式是:
each=6
修改each的值即可改变每个题目所占分数。
最后需要注意的是:
把刚才的三个文本文件保存在与Flash文件相同的目
录下。