Animate如何制作答题课件(1)

2025-09-25 07:10:01

1、打开制作软件,新建AS3文档。

Animate如何制作答题课件(1)

2、我们制作几个简单的计算题和答案的连线,同学们也可以自己发挥。

在舞台上放8个文本框,左右各四个,如图所示,写好算式和答案。

Animate如何制作答题课件(1)

3、新建一个图层,并用鼠标拖到算式层的下面。

Animate如何制作答题课件(1)

4、自行制作影片剪辑,拖动8个分别放到8个算式下方,注意,这8个影片剪辑要在新建的图层。

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

5、给左边的影片剪辑从上到下依次设置实例名为,a0,a1,a2,a3

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

6、右边的影片剪辑实例名设置时要注意,按左边算式答案的顺序依次设置为b0,b1,b2,b3

Animate如何制作答题课件(1)

7、在主时间轴加下代码:

var shape:Shape=new Shape();//用于画线

shape.graphics.lineStyle(2,0xFF0000);//第一个参数是线的粗细,第二个参数是线的颜色

this.addChild(shape);//把画线的容器放到舞台上

var a_id:int=-1;//用于存储算式已经选择的索引

var b_id:int=-1;//用于存储答案已经选择的索引

var l_count:int=4;//连线数量

var right_count:int=0;//记录连线正确的数量

initSence();

function initSence():void

{

shape.graphics.clear();

shape.graphics.lineStyle(2,0xFF0000);//第一个参数是线的粗细,第二个参数是线的颜色

for(var i:int=0;i<l_count;i++)

{

this["a"+i].alpha=0.5;//设置按钮颜色,这样可以区分点的是哪个

this["b"+i].alpha=0.5;//设置按钮颜色,这样可以区分点的是哪个

this["a"+i].addEventListener(MouseEvent.CLICK,ClickAEvent);//点击算式事件

this["b"+i].addEventListener(MouseEvent.CLICK,ClickBEvent);//点击答案事件

this["a"+i].isRight=false;//记录状态,如果算式已经连线,则不让点击

this["b"+i].isRight=false;

}

}

function ClickAEvent(e:MouseEvent):void

{

var obj:Object=e.currentTarget;

var t:int=int(obj.name.slice(1));

if(obj.isRight==true)

{

return;

}

if(right_count==l_count)

{

return;//如果连线完成,则不允许操作

}

if(a_id==t)//判断是否点的是同一个算式

{

a_id=-1;

obj.alpha=0.5;

return;

}

if(b_id==-1)//判断有没有选择答案

{

if(a_id!=-1)

{

this["a"+a_id].alpha=0.5;

}

a_id=t;

obj.alpha=1;

}

else

{

if(b_id==t)//判断是不是选择正确

{

shape.graphics.moveTo(obj.x,obj.y);

shape.graphics.lineTo(this["b"+b_id].x,this["b"+b_id].y);

obj.isRight=true;

this["b"+b_id].isRight=true;

this["b"+b_id].alpha=0.5;

b_id=-1;

a_id=-1;

right_count++;

}

else

{

this["b"+b_id].alpha=0.5;

b_id=-1;

a_id=-1;

}

}

}

function ClickBEvent(e:MouseEvent):void

{

var obj:Object=e.currentTarget;

var t:int=int(obj.name.slice(1));

if(obj.isRight==true)

{

return;

}

if(right_count==l_count)

{

return;//如果连线完成,则不允许操作

}

if(b_id==t)//判断是否点的是同一个答案

{

b_id=-1;

obj.alpha=0.5;

return;

}

if(a_id==-1)//判断有没有选择算式

{

if(b_id!=-1)

{

this["b"+b_id].alpha=0.5;

}

b_id=t;

obj.alpha=1;

}

else

{

if(a_id==t)//判断是不是选择正确

{

shape.graphics.moveTo(obj.x,obj.y);

shape.graphics.lineTo(this["a"+a_id].x,this["a"+a_id].y);

obj.isRight=true;

this["a"+a_id].isRight=true;

this["a"+a_id].alpha=0.5;

b_id=-1;

a_id=-1;

right_count++;

}

else

{

this["a"+a_id].alpha=0.5;

b_id=-1;

a_id=-1;

}

}

}

Animate如何制作答题课件(1)

Animate如何制作答题课件(1)

8、运行成功后可以进行连线操作。这里只讲简单的实现过程,比如全部连完后如何重置,还要自行思考。

Animate如何制作答题课件(1)

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢