小菜刚上手,写了三个flex里面已经有的效果。请大家不要见笑
package org.effect
{
/*
* 渐渐消失效果
*/
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class Fade
{
private var tdisplay:Sprite;
private var ttime:Number;
private var setTime:Timer;
public function Fade(display:Sprite,time:Number)
{
this.tdisplay=display;
this.ttime=time;
this.setTime=new Timer(this.ttime,30);
this.setTime.addEventListener(TimerEvent.TIMER,onClick);
this.setTime.addEventListener(TimerEvent.TIMER_COMPLETE,remove);
this.setTime.start();
}
private function onClick(event:TimerEvent):void{
this.tdisplay.alpha=(this.ttime-event.target.currentCount)/this.ttime;
}
private function remove(evt:TimerEvent):void{
this.tdisplay.parent.removeChild(this.tdisplay);
}
}
}
package org.effect
{
/*
* 移动离开效果
*/
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class Move
{
private var tdisplay:Sprite;
private var ttime:Number;
private var setTime:Timer;
public function Move(display:Sprite,time:Number)
{
this.tdisplay=display;
this.ttime=time;
this.setTime=new Timer(this.ttime,30);
this.setTime.addEventListener(TimerEvent.TIMER,onClick);
this.setTime.addEventListener(TimerEvent.TIMER_COMPLETE,remove);
this.setTime.start();
}
private function onClick(event:TimerEvent):void{
this.tdisplay.x=(event.target.currentCount/this.ttime)*2000;
}
private function remove(evt:TimerEvent):void{
this.tdisplay.parent.removeChild(this.tdisplay);
}
}
}
package org.effect
{
/*
* 转动消失效果
*/
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class Rotation
{
private var tdisplay:Sprite;
private var ttime:Number;
private var setTime:Timer;
public function Rotation(display:Sprite,time:Number)
{
this.tdisplay=display;
this.ttime=time;
this.setTime=new Timer(this.ttime,100);
this.setTime.addEventListener(TimerEvent.TIMER,onClick);
this.setTime.addEventListener(TimerEvent.TIMER_COMPLETE,remove);
this.setTime.start();
}
private function onClick(event:TimerEvent):void{
this.tdisplay.rotation=(event.target.currentCount/this.ttime)*180;
}
private function remove(evt:TimerEvent):void{
this.tdisplay.parent.removeChild(this.tdisplay);
}
}
}
其实三个效果都是同一个做法,就是用timer类,让 timer每隔一定时间,修改一下对象的属性。