ActionScript3.0學習筆記(1)

1、函數定義:

function 函數名(參數:類型):返回類型{

  //函數體定義

}
 

如:

function add(a:int,b:int):int{

 return a+b;

}
 

錯誤寫法:

function add(var a:int,var b:int):int{

 return a+b;

}
 

 

2、事件處理

實力名稱.addEventListener(事件類型,回調函數);

如:

//打開瀏覽器
function goToBai(event:MouseEvent):void{
	var target:URLRequest = new URLRequest("http://www.baidu.com");
	navigateToURL(target);
}
//goHome是我在舞臺上創建的一個按鈕的實例名
goHome.addEventListener(MouseEvent.CLICK,goToBai)

給舞臺增加一個鍵盤監聽器:

//keyLocation爲按鍵的位置,比如shift:左邊是1,右邊是2
function keyDownListener(event:KeyboardEvent){
	trace(event.charCode+"-------"+event.keyLocation);
}

//stage是頂級的舞臺對象
this.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDownListener);
 

3、類定義

//包名可不寫,如果寫的話,需要在用的地方寫:import 包名.類名;
package 包名{
  public class 類名{
      public function 方法名(參數:類型):返回類型{
         //方法定義
      }
  }
}

 如:

package{
	
	public class MyClass{
		public function add(a:int,b:int):int
		{
			return a+b;
		}
		
		public function getTime():String{
			var date:Date = new Date();
			var year = date.fullYear;
			var month = date.month;
			var day = date.day;
			var h = date.hours;
			var min = date.minutes;
			var sec = date.seconds;
			
			return year+"年"+convert(month+1)+"月"+convert(day)+"日"+convert(h)+":"+convert(min)+":"+convert(sec);
		}
		public function convert(num:int):String{
			if(num<10){
				return "0"+num;
			}else{
				return num.toString();
			}
		}
	}
	
}

 4、一個簡單的及時器例子:

var myclass:MyClass = new MyClass();
var result = myclass.add(10,29);

//相當於System.out.println("dd");
trace(result);

trace(myclass.getTime());

function setTimeListener(event:TimerEvent){
	trace(myclass.getTime());
        
       //time是我在舞臺上創建的文本框
	time.text=myclass.getTime();
}

//Timer中游兩個參數new Timer(時間間隔,重複次數)
var timer:Timer = new Timer(1000);

//增加監聽器
timer.addEventListener(TimerEvent.TIMER,setTimeListener);

//Timer開始
timer.start();

 5、全屏模式切換:

//正常顯示stage.displayState需要測試影片,否則是null
//需要導入相應的包
/*
import fl.controls.LabelButton;
import flash.events.MouseEvent;
import flash.display.StageDisplayState;
*/
/*
如果導入報找不到相應的類,在組件中添加相應的類到舞臺,然後刪除即可;
*/
public function drawBtn(stage):void{
			trace(stage);
			var labelBtn:LabelButton = new LabelButton();
			labelBtn.label="全屏模式";
			labelBtn.width=100;
			labelBtn.height=50;
			labelBtn.x=75;
			labelBtn.y=210.5;
			
			labelBtn.addEventListener(MouseEvent.CLICK,function(event:MouseEvent){
				//trace(this.stage.displayState);
				if(stage.displayState == StageDisplayState.FULL_SCREEN){
					trace("推出全屏");
					stage.displayState = StageDisplayState.NORMAL;
					labelBtn.label="全屏模式";
				}else{
					trace("全屏");
					labelBtn.label="退出全屏";
					stage.displayState = StageDisplayState.FULL_SCREEN;
				}																				 	
			});
			stage.addChild(labelBtn);
		}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章