package
{import flash.display.Shape;import flash.display.Sprite;import flash.events.Event;import flash.events.KeyboardEvent;import flash.events.MouseEvent;import flash.events.TimerEvent;import flash.utils.Timer;import mx.controls.Label;//窗體大小,繪制幀率[SWF(width="400", height="300", frameRate="60")]public class MyDemo extends Sprite{private var circle:Shape;private var label:Label;private var timer:Timer;public function MyDemo(){label = new Label();label.x = 30;label.y = 30;addChild(label);circle = new Shape();circle.x = 50;circle.y = 100;addChild(circle);circle.graphics.beginFill(0xee2f2f);circle.graphics.drawCircle(circle.x,circle.y,40);circle.addEventListener(Event.ENTER_FRAME,changePos);//每幀調用changePos函數stage.addEventListener(MouseEvent.CLICK,onClick); //舞臺上添加鼠標點擊監聽事件stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDown);//舞臺添加鍵盤監聽timer = new Timer(1000,5); //設置延遲時間是1秒,循環執行5次timerExcute()timer.addEventListener(TimerEvent.TIMER,timerExcute);timer.addEventListener(TimerEvent.TIMER_COMPLETE,timerComplete);//執行完成后調用timerCompletetimer.start();//啟動timer}public function changePos(event:Event):void{if(circle.y >= 300){circle.y = 1;}else if(0<circle.y && circle.y < 300){ circle.y+=5;}}//在點擊的地方產生綠色方形public function onClick(event:MouseEvent):void{var rect:Shape = new Shape();addChild(rect);rect.graphics.beginFill(0x11ff00);rect.graphics.drawRect(event.stageX,event.stageY,20,20);}public function keyDown(event:KeyboardEvent):void{var count:int = 0if(event.keyCode == 13) //監聽Enter鍵{ var rect:Shape = new Shape();addChild(rect);rect.graphics.beginFill(0x00f1f0);rect.graphics.drawRect(Math.random()*400,Math.random()*300,10,10);}}public function timerExcute(event:TimerEvent){var rect:Shape = new Shape();addChild(rect);rect.graphics.beginFill(0x0f11f0);rect.graphics.drawRect(Math.random()*400,Math.random()*300,10,10);}public function timerComplete(event:TimerEvent){var rect:Shape = new Shape();addChild(rect);rect.graphics.beginFill(0x000000);rect.graphics.drawRect(Math.random()*400,Math.random()*300,30,60);}}
}
桌面程序Air效果圖:
?