按钮中的八个动作有什么区别?
解决思路
在【影片剪辑控制】集合中还有一个与我们制做flash密切相关的on命令。这个命令是专门为按钮设计的,它提供了八种按钮的事件。分别是按下,滑过,释放,滑离,外部释放,拖过,拖离和按键。最后一种是定义键盘的事件。这八种时间在我们平时的制作中经常可以用到,每一种时间都有不同的效果,下面我们就结合事例给大家分析一下。
具体步骤
首先我们制作一个简单的移动渐变动画。为了直观地说明按钮的功能,我们在第1帧加入as:stop():。如图3.2.52所示。
图3.2.52???制作一个简单的动画
然后我们新建一层制作一个按钮,或者单击【窗口】|【其他面板】|【公用库】|【按钮】命令,打开公用库按钮面板,从里面选择一个按钮拖放到图层2的第1帧。如图3.2.53所示。
图3.2.53?拖放按钮到舞台中
最后,也是非常重要的一点就是必须要在选中按钮的状态下,打开as面板。双击【全局变量】|【影片剪辑控制】中的on命令,此命令就会自动添加到右侧的输入栏里面。如图3.2.54所示。
图3.2.54???on动作命令
下面我们就具体地向大家介绍一下这八种事件的使用。
1、press?在鼠标指针经过按钮时按下鼠标按钮。单击press,然后选择动作语句,双击【全局函数】|【时间轴控制】中的play?命令。
完整的action是:
on(press){?????//设定鼠标事件为按下,然后执行大括号里面的语句。
play();???????//按钮响应后执行play(播放)动作
}
如图3.2.55所示。
图3.2.55?????press动作
当然,在大括号里面还可以用其他的语句,比如说,gotoAndPlay(yourframe);??//点击按钮后,就会从你设置的帧播放。
我们参考源文件on—1,体会一下它的效果。
1、??release?在鼠标指针经过按钮时释放鼠标按钮。单击选择release然后与第一个事件相同加入play命令。完成的语句如下:
on(release){????//当鼠标按下释放的时候,执行下面的语句动作。
play();????????//按钮响应后执行play(播放)动作。
}
如图3.2.56所示。
图3.2.56?????release动作
我们参考一下源文件on—2,可以看到,当鼠标左键按下按钮的时候,并没有激发播放动作,而是当鼠标左键放开的时候,执行了播放动作。这也是与“press”事件不同的地方。
3、releaseOutside?当鼠标指针在按钮之内时按下按钮后,将鼠标指针移到按钮之外,此时释放鼠标按钮。?添加语句的方法同上。完整的语句如下:
on?(releaseOutside)?{?????//当鼠标在按钮外部释放的时候执行下面的语句。
play();??????????????????//按钮响应后执行播放动作。
}
如图3.2.57所示。
图3.2.57????releaseOutside动作
通过这个例子我们知道,当鼠标左键在按钮上按住并移动到按钮以外的地方放开后,触发了按钮的动作。这是一个具有非常想象力的事件,大家可以利用on的这个事件来制作游戏。
参看源文件on—3。
4、rollOut?鼠标指针滑出按钮区域。制作方法同上,完整的as语句为:
on(rollover){?????//当鼠标滑动到按钮上时执行下面的动作。
play();??????????//按钮执行播放动作。
}
如图3.2.58所示。
图3.2.58?????rollOver动作
当鼠标指针从按钮上滑过的时候,动画就开始执行播放动作了,而不需要点击它。我们可以利用on的这个特点来制作一些图示板,非常简单有效。参看源文件on—4。
5、rollOver?鼠标指针滑过按钮。制作方法同上,完整的as语句为:
on(rollOut){?????//当鼠标滑动到按钮上并离开时执行下面动作。
Play():??????????//按钮响应播放动作。
}
如图3.2.59所示。
图3.2.59????rollOut动作
滑离与滑过并不是相同的,滑离是指鼠标滑动到按钮上并离开以后开始响应,而滑过是指只要鼠标滑到按钮上,就开始执行动作。参看源文件on—5。
6、dragOut?在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮区域。完整的as是:
on(Drag?Out){?????//当鼠标拖过的时候执行下面的动作。
??????????????????play();????????????//执行播放动作。
???????????????????}
如图3.2.60所示。
图3.2.60??????dragOver动作
拖过的效果是在按钮上点击并按住鼠标不放,移出按扭区,再移回按钮上释放的事件。注重:此例中是一个文字按钮,在做文字按钮的时候,应在文字的下方用一透明方块,以增加按钮的反应区域,或者在按钮的第4帧绘制一个矩形来增加反映区。参看源文件on—6。
7、dragOver?在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮,再滑回此按钮。完整的as是:??????????on?(dragOut)?{?????????//当鼠标拖离按钮时执行下面的动作。
??????????????????????play();???????????????????//执行播放动作
}
如图3.2.61所示。
图3.2.61???dragOut动作
拖离与拖过有所不同,只要在按钮上按住鼠标左键然后移动到按钮外就会相应。他于滑离的区别在于拖离需要按住鼠标左键。我们可以参考一下源文件on—7来体会一下。
8、keyPress?("key")?按下指定的键。对于此参数的?key?部分,需指定键控代码或键常量。?
我们在(“key”)中键入“k”。完整地as语句为:
on?(keyPress?"z")?{????????//当按下键盘中的“z”健时执行下面的动作。
?????????????????play();?????????????????????//执行播放动作
}
如图3.2.62所示。
图3.2.62?????keyPress动作
参看源文件on—8。
注??意?——在给动画作品添加按钮的时候应该放到单独一层,这样便于修改。
提??示?——on为按钮上的动作,所以我们必须首先要选中按钮,以后才可以添加on语句。有的朋友在论坛里面提问,“为什么我的on为灰色不可选状态?”原因就是你没有选中按钮。
技??巧?——在一般flash作品中,大家不会有意区分这些on的功能的,一般采用默认的语句。假如没有非凡说明,你使用了拖离,滑离等事件来制作“replay”按钮,会让人们摸不着头脑的。
试一试?——我们了解了on得这么多的功能,利用这些功能可以轻易的制作出flash课件,flash游戏里面的效果,大家不妨试一试。
?分??析——on语句的功能与按钮息息相关,有按钮的地方一定会有on语句的使用。而有flash作品的地方,就会有按钮的出现,所以说on的重要作用不可忽视。今天向大家具体地介绍了on的各种功能,我们就可以结合按钮自身的特点,发挥他们的功能。
非凡提示
on—1至on—8范例源文件中没有使用公用库中的按钮,目的在于让大家习惯自己制作按钮。按钮时一部完整的flash作品中不可缺少的部分,所以,同样需要我们来精心制作。
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |