多媒体课件制作之填空题课件(AN)

针对不同帧实现不同效果,需要逐步添加代码

图片仅为展示,具体操作见后文实验步骤

 

 实验步骤

一、元件制作

1、新建一个flash文档,保存为“***填空题型课件”。在文档属性中设置文档属性。

2、制作“背景”。将图层1的名称更名为背景,利用绘图工具和文本工具制作课件的背景和标题。如图所示:

  1. 制作底板元件。按快捷键Ctrl+F8新建一个名为“底板”的影片剪辑元件,在元件的编辑场景中制作一个长方形,并为其填充半透明色,用作题目的底板。

4、制作“对号”元件。按快捷键Ctrl+F8新建一个名为“对号”的影片剪辑元件,在元件的编辑场景中利用遮罩技术制作一个画对号的简单动画。再添加一个图层,在第1帧的【动作】面板上添加“stop();”语句。这个元件用于填空正确的反馈。

5、制作“问号”元件。按快捷键Ctrl+F8新建一个名为“问号”的影片剪辑元件,在元件的编辑场景中制作一个问号左右摇摆的简单动画。再添加一个图层,在第1帧的【动作】面板上添加“stop();”语句。这个元件用于填空错误的反馈。

6、制作“k1”元件。按快捷键Ctrl+F8新建一个名为“k1”的影片剪辑元件,元件的第1帧插入空白关键帧,第2帧利用文本输入第1个填空的答案“答案1”。在第1帧和第2帧的【动作】面板上添加“stop();”语句。这个元件用于给学生提示。制作完成的“k1”元件如下图所示。用同样的方法制作“k2”、“k3”、和“k4” ,输入的答案分别为“答案2”、“答案3”和“答案4” 。

7、制作“OK”按钮。按快捷键Ctrl+F8新建一个名为“OK” 的按钮,每个填空完成后通过单击OK按钮提交答案判断正误。

二、场景布置

8、回到主场景,在“背景”图层上添加一个图层并命名为“底板”,从库中导入“底板”元件,并调整位置。

9、新建一图层并命名为“文本”,在这个图层上输入填空题目,空出需要填空的位置。在空出的位置下面画出横线,在横线上放置4个输入文本,并将文本实例命名为“t1”、“t2”、“t3”、“t4”。如例所示:

  1. 新建一图层并命名为“提示”。把库中的元件“k1”、“k2”、“k3”和“k4”放在每个填空处的适当位置。将它们的实例名同样命名为“k1”、“k2”、“k3”和“k4”。
  2. 在“文本”图层上添加2个图层并命名为“按钮”和“反馈”。选择“按钮”图层,把库中的OK按钮放到场景中的适当位置。选择“反馈”图层,把“对号”和“问号”元件放到场景中的适当位置,它们的实例名为“duile”和“cuowu”。

三、添加代码

12、新建一个图层并命名为“action”,选择第1帧,打开动作【面板】,添加如下代码:

var cuo1 = 0;

var cuo2 = 0;

var cuo3 = 0;

var cuo4 = 0;  //声名4个变量,用来记录每个空的填写错误次数。

var jilu = 0; //声名记录变量,记录正在填写第几个空 。

t1.maxChars = 2;

t2.maxChars = 2;

t3.maxChars = 4;

t4.maxChars = 2;

//设置4个输入文本最多可输入的字符数

13、继续为主场景添加代码。

addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler);

 function fl_EnterFrameHandler(event:Event):void{//以SWF文件的帧频重复调用下面代码

   t1.addEventListener(FocusEvent.FOCUS_IN,a1);

 //当“t1”文本字段接收键盘焦点时调用

   function a1(event){

      jilu = 1;

      }

   t2.addEventListener(FocusEvent.FOCUS_IN,a2);

   function a2(event){

      jilu = 2;

      }

t3.addEventListener(FocusEvent.FOCUS_IN,a3);

    function a3(event){

      jilu = 3;

      }

t4.addEventListener(FocusEvent.FOCUS_IN,a4);

   function a4(event){

      jilu = 4;

      }

}

这段代码的作用是时刻检查第几个空正在被填写,当鼠标单击第1个输入文本时为变量jilu赋值为1,鼠标单击第2个输入文本时为变量jilu赋值为2,以此类推。这样用变量jilu的值得变化就可以反映出正在填写第几个空。

14、选中OK按钮,添加事件处理函数及代码。

button_1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void

{

if (jilu == 1) { //如果变量的值为1

      if (t1.text == “答案1”) { //如果文本“t1”的内容为“答案1”

            duile.gotoAndPlay(2); //正确的反馈对号播放

             } else {

              cuowu.gotoAndPlay(2); //错误的反馈问号播放

              t1.text = “”; //把文本的内容设置为空

              cuo1++; //记录错误次数的变量加1

            }

              if (cuo1 == 3) {//如果第1个空填写了3次错误答案

           k1.gotoAndStop(2); //“k1”跳转到第2帧,显示提示答案

           }

    }

if (jilu == 2) {

       if (t2.text == "答案2") {

           duile.gotoAndPlay(2);

       } else {

           cuowu.gotoAndPlay(2);

           t2.text = "";

           cuo2++;

       }

       if (cuo2 == 3) {

           _k2.gotoAndStop(2);

       }

    }

if (jilu == 3) {

       if (t3.text == "答案3") {

           duile.gotoAndPlay(2);

       } else {

           cuowu.gotoAndPlay(2);

           t3.text = "";

           cuo3++;

       }

       if (cuo3 == 3) {

           k3.gotoAndStop(2);

       }

     }

if (jilu == 4) {

       if (t4.text == "答案4") {

           duile.gotoAndPlay(2);

       } else {

           cuowu.gotoAndPlay(2);

           t4.text = "";

           cuo4++;

       }

       if (cuo4 == 3) {

           k4.gotoAndStop(2);

       }

     }

}

四、测试影片

15、按“Ctrl+Enter”键测试影片。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值