欢迎来到天天文库
浏览记录
ID:20489108
大小:60.00 KB
页数:4页
时间:2018-10-13
《通过实例学习flash as3.0》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、通过实例学习FlashAS3.0首先声明:本人大菜鸟一个,刚接触AS3不久,许多理念还没来得及灌输,这些case都是从网上doo,有4个按钮,当鼠标划过和移开时会呈现出不同的状态,单击后变成disabled,再点击其他的按钮时,之前disabled的按钮恢复,被点击的按钮失效。演示:as3_cases/municating/准备工作:打开源文件municating_final.fla,点击属性里的发布设置,点击Actionscript3旁边的设置,在最下面的classpath里,引入classes的文件
2、夹的路径,然后点击确定,前期工作就准备完了。代码:源文件里的代码很简单:importtodd.interactive.ButtonSet;varbuttons:ButtonSet=nec,tc,three_mc,four_mc]);addChild(buttons);导入ButtonSet类,实例化,然后调用里面的一个方法,最后将它放到舞台上。classes文件夹下面的todd->interactive文件夹里有两个as文件,其中一个就是刚刚调用的ButtonSet,来看看ButtonSet的源码:pa
3、ckagetodd.interactive{//其实只需载入display和events就可以了,不过多载入几个并不影响文件大小和效率importflash.display.*;importflash.events.*;importflash.filters.*;importflash..*;importflash.geom.*;importflash.ui.*;importflash.utils.*;importfl.transitions.*;importfl.transitions.easing.
4、*;publicclassButtonSetextendsMovieClip{publicvarbuttons:Array;publicfunctionButtonSet(){}publicfunctionaddButtons(buttonSet:Array):void{buttons=buttonSet;for(vari:int=0;i<buttons.length;i++){addChild(buttons[i]);}}}}一个类应该被放在一个package里面,就像钱应该被放到钱包里一样。p
5、ackage后面定义的是该类的路径。然后一系列常用的类。定义了一个全局变量buttons,在变量前面加一个public就可以了。这样就能在整个类中被访问到。类名应该和文件名一样(区分大小写),然后定义一个同名函数,这个函数会在类被初始化时调用,就像php4的类一样。这里只是搭了个架子,没有具体内容。然后定义了一个函数addButtons,它的作用就是将一些mc或者sprites放到自己的container里(addChild)。还有一个类:DisablingButton,也是位于todd->intera
6、ctive文件夹下,这也是这个案例的核心。对了,之前已经将RectButton的linkage里的baseClass设置为todd.interactive.DisablingButton。9731248:代码稍微有点长,且听我细细道来packagetodd.interactive{importflash.display.*;importflash.events.*;importtodd.interactive.ButtonSet;publicclassDisablingButtonextendsMovi
7、eClip{varlabels:Array;varthisParent:*;varthisIndex:int;publicfunctionDisablingButton(){labels=this.currentLabels;this.addEventListener(MouseEvent.CLICK,disableButton);this.addEventListener(MouseEvent.ROLL_OVER,over);this.addEventListener(MouseEvent.ROLL_
8、OUT,12下一页[感谢阅读这篇文章,..,]out);this.addEventListener(Event.ADDED,setParent);}functiondisableButton(event:MouseEvent):void{for(vari:int=0;i<labels.length;i++){if(labels[i].name=="disable"){this.gotoAndPlay("disable");}}this
此文档下载收益归作者所有