Flash AS3.0中的事件處理詳解
ActionScript3.0使用單一事件模式來管理事件,所有的事件都位于flash.events包內(nèi),其中構(gòu)建了20多個Event類的子類,用來管理相關(guān)的事件類型。以下是由陽光網(wǎng)小編整理關(guān)于Flash AS3.0中的事件處理詳解的內(nèi)容,希望大家喜歡!
Flash AS3.0中的事件處理詳解
鼠標事件
在ActionScript3.0之前的語言版本中,常常使用on(press)或者onClipEvent(mousedown)等方法來處理鼠標事件。而在ActionScript3.0中,統(tǒng)一使用MouseEvent類來管理鼠標事件。在使用過程中,無論是按鈕還是影片事件,統(tǒng)一使用addEventListener注冊鼠標事件。此外,若在類中定義鼠標事件,則需要先引入(import)flash.events.MouseEvent類。
MouseEvent類定義了10中常見的.鼠標事件,具體如下:
CLICK:定義鼠標單擊事件 DOUBLE_CLICK:定義鼠標雙擊雙擊事件
MOUSE_DOWN:定義鼠標按下事件 MOUSE_MOVE:定義鼠標移動事件
MOUSE_OUT:定義鼠標移出事件 MOUSE_OVER:定義鼠標移過事件
MOUSE_UP:定義鼠標提起事件 MOUSE_WHEEL:定鼠標滾軸滾動觸發(fā)事件
ROLL_OUT:定義鼠標滑入事件 ROLL_OVER:定義鼠標滑出事件
鍵盤事件
鍵盤操作也是Flash用戶交互操作的重要事件。在ActionScript 3.0中使用KeyboardEvent類來處理鍵盤操作事件。它有兩種類型的鍵盤事件:KeyboardEvent.KEY_DOWN 和 KeyboardEvent.KEY_UP。
KeyboardEvent.KEY_DOWN:定義按下鍵盤時事件
KeyboardEvent.KEY_UP:定義松開鍵盤時事件
注意:在使用鍵盤事件時,要先獲得它的焦點,如果不想指定焦點,可以直接把stage作為偵聽的目標。
時間事件
在ActionScript3.0中使用Timer類來取代ActionScript之前版本中的setinterval()函數(shù)。而執(zhí)行對Timer類調(diào)用的事件進行管理的是TimerEvent事件類。要注意的是,Timer類建立的事件間隔要收到SWF文件的幀頻和Flash Player的工作環(huán)境(比如計算機的內(nèi)存的大小)的影響,會造成計算的不準確。
Timer類有兩個事件,分別為:
TimerEvent.TIMER:計時事件,按照設(shè)定的事件發(fā)出。
TimerEvent.TIMER_COMPLETE:計時結(jié)束事件,當計時結(jié)束時發(fā)出
幀循環(huán)ENTER_FRAME事件
幀循環(huán)ENTER_FRAME事件是ActionScript 3.0中動畫編程的核心事件。該事件能夠控制代碼跟隨Flash的幀頻播放,在每次刷新屏幕時改變顯示對象。
使用該事件時,需要把該事件代碼寫入事件偵聽函數(shù)中,然后在每次刷新屏幕時,都會調(diào)用Event. ENTER_FRAME事件,從而實現(xiàn)動畫效果。
flash as3.0 關(guān)于按鍵事件的運用
【Flash AS3.0中的事件處理詳解】相關(guān)文章: