
图一图二 2、在时间轴的第二帧处插入一空白关键帧,仍选择文本工具(A),在工作区中再输入第二页试题内容。(本例共3道题)。如图二
二、制作选项
3、选定第一帧,选择"窗口/组件"或CTRL+F7打开组件窗口。选择"RadioButton"组件拖到场景中,并更改其属性:将Lable设为A,GroupName 设为 question1,其余选择默认选项。同法可制作第一题的其它三个选项,只是将Lable分别设为"B"、"C"、"D";GroupName 都设为 question1。
4、同步骤3,可制作第二题、第三题的选项。只是将第二题中各选项的GroupName 改为 question2;将第三题中各选项的GroupName 改为 question3。
5、选择第二帧,从组件窗口中拖动"Push Button"按钮到场景的适当位置。并改变其属性:将Lable设为"检测";Click Hander设为 "onclick","实例名称"设为"jc"其余选择默认选择项。
三、制作导航按钮
6、选择"窗口/公用库/按钮"打开公用按钮库,单击"circle button",将"circle button-next"按钮拖到第一帧的适当位置。将"circle button-previous"、"circle button-stop"按钮拖到第二帧的适当位置。
7、在场景中选择"circle button-previous"按钮,然后选择"窗口/动作"命令,打开动作对话框,对该按钮进行动作设置,行为代码为:
on (release) { gotoAndPlay(1)}
8、同步骤6,可设置"circle button-stop"按钮的动作,其行为代码为:
on (release) {fscommand("quit");};第一帧上的"circle button-next"按钮的行为代码为:on (release) { gotoAndPlay(2)}。
9、选定"试题"图层第一帧,再选择"窗口/动作"命令,打开动作对话框,对该帧进行动作设置,行为代码为:stop(),同样第二帧的行为代码也是stop()。
四、制作显示结果
10、选定"试题"图层第二帧,选择文本工具(A),在场景中拖出一文本框。并更改其属性:将类型设为"动态文本",实例名称改为"result"。主要用此文本框来显示最终结果。
五、增加动作图层
11、插入新的图层,并命名为"动作",然后选定"动作"图层第一帧,再选择"窗口/动作"命令,打开动作对话框,对该帧进行动作设置,行为代码为:
// 设置:
right=0 // 用right记录答对题数量,
score=0 // score记录最后的得分
wrong=0 // wrong记录答错题数量,
n=5 // n为每题得分
// 对"检测"按钮用一个函数进行设置。
function onclick() { // 当单击检测按钮时的动作
// 判断第三题对错情况
result3=_root.question3.getValue(); // 取得你选择的结果
if (result3=="C"){ // 设置为C为正确答案
right=right+1
}
if (result3=="A"||result3=="B"||result3=="D"){ // 设置为A、B、D为错误答案
wrong=wrong+1
}
// 得分反馈情况
score=right*n
result.text="你做对了"+ right +"题;"+"做错了"+wrong+"题;"+"共得"+ score +"分"
jc.setEnabled(false); // 使"检测"按钮失效
}
12、上面第11步骤中,没有对第一帧的两题进行判断,原因是,在Flash 中,当帧跳转后,组件的值不被记忆,因此对于第一帧上的两题的判断,用第一帧中的"circle button-next"导航按钮来完成。
六、更改按钮动作
13、选择"试题"图层第一帧中"circle button-next"按钮,然后选择"窗口/动作"命令,打开动作对话框,将行为代码增加为:
on (release) { // 单击该按钮时进行的动作
// 判断第一题对错情况
result1=_root.question1.getValue();
if (result1=="B"){ // 设定第一题的正确答案为B
right=right+1
}
if (result1=="A"||result1=="C"||result1=="D"){ // 设定第一题的错误答案为A、C、D
wrong=wrong+1
}
// 判断第二题对错情况
result2=_root.question2.getValue();
if (result2=="A"){ // 设定第二题的正确答案为A
right=right+1
}
if (result2=="B"||result2=="C"||result2=="D"){ // 设定第二题的错误答案为B、C、D
wrong=wrong+1
}
gotoAndPlay(2); // 单击时跳到第二
}
七、查看效果
14、选择"控制/测试影片"命令,可查看效果。
15、最后通过"文件/发布"命令可发布为可执行文件。
八、特别说明
1、通过对向后翻页按钮的改进,可以统计本页题目正误情况,解决了当帧跳转时,Flash组件的值丢失的问题。
2、在动作图层的动作设置中 jc.setEnabled(false)语句的作用是:当按下检测按钮后,使检测按钮失去作用,避免了重复记分。
3、检测完成后,可返回到首页,重新开始测试,则重新记分。
下一篇:Flash动画:新年演唱会
共有 0 位网友发表了评论,平均得分: 0 查看完整内容