3.AS3.0中的事件模型和AS2.0大不一樣了。 簡而言之,就是“規(guī)范”。不再直接使用字符串來定義事件名稱了。又要講深一點了,都是使用了新的const型變量來定義事件字符串名稱,一旦定義,不能再更改。 如:
public static const MOVE:String = "move";
極大的避免了我們因為手誤,打錯字符串,而花上一個下午找bug。使用了這種模式,我們一旦打錯,編譯器立刻會發(fā)現(xiàn)并告訴我們。多好。 給出一些鼠標事件列表,大家可以替換上面源碼中的事件類型,自己試著玩兒。 如,你可以換成MouseEvent.MOUSE_OVER就變成了以前的onRollOver效果。
CLICK : String = "click"
[static] Dispatched when a user presses and releases the main button of the user's pointing device over the same InteractiveObject. MouseEvent
DOUBLE_CLICK : String = "doubleClick"
[static] Dispatched when a user presses and releases the main button of a pointing device twice in rapid succession over the same InteractiveObject when that object's doubleClickEnabled flag is set to true. MouseEvent
MOUSE_DOWN : String = "mouseDown"
[static] Dispatched when a user presses the pointing device button over an InteractiveObject instance in the Flash Player window. MouseEvent
MOUSE_LEAVE : String = "mouseLeave"
[static] Dispatched by the Stage object when the mouse pointer moves out of the Flash Player window area. Event
MOUSE_MOVE : String = "mouseMove"
[static] Dispatched when a user moves the pointing device while it is over an InteractiveObject. MouseEvent
MOUSE_OUT : String = "mouseOut"
[static] Dispatched when the user moves a pointing device away from an InteractiveObject instance. MouseEvent
MOUSE_OVER : String = "mouseOver"
[static] Dispatched when the user moves a pointing device over an InteractiveObject instance in the Flash Player window. MouseEvent
MOUSE_UP : String = "mouseUp"
[static] Dispatched when a user releases the pointing device button over an InteractiveObject instance in the Flash Player window. MouseEvent
MOUSE_WHEEL : String = "mouseWheel"
//支持鼠標滾輪嘍,霍霍。
指出一點,在我給出的例子中,使用了雙擊這個事件。這個有點特殊,在使用雙擊事件之前,要加上一句:
kingda_mc.doubleClickEnabled = true;
因為MovieClip對于雙擊事件默認是false,關(guān)閉的。
4.偵聽器的不同。 在AS2.0中我們通常要新建一個對象做偵聽器。也可以像我的例子中用function做偵聽器。但是,很可惜,由于AS2.0的設(shè)計缺陷,使得function中的this指向常常給我們帶來困擾。于是有了Delegate類來解決。 而如今,AS3.0中采用了優(yōu)秀的Traits Object架構(gòu)(唔,這個,就暫不解釋了),使得它能記住this的指向。所以,兄弟們,放心大膽使用Function作為偵聽器使用吧。
今天就寫這么多了,主要是Flash 9出來,我老人家激動了一下,一下子寫了這么多東東。希望對大家有所幫助,希望大家狂頂支持一把,不然沒動力,本系列教程會變成太監(jiān)貼!霍哈哈! ^_^ 快回帖支持!
本篇主要涉及了一下AS3.0中的事件模型部分,這是很重要的。以后會有更深入的教程來詳細介紹。本篇的目的就是讓大家使用一下Flash 9和AS3,消除陌生感。寫的淺了,還請包涵。
下一篇介紹非常實用的東東,類和MovieClip的綁定,和Flash 9中一大特色:Document Class。用來替代在時間軸寫代碼的好東東。
出處:藍色理想
責任編輯:moby
上一頁 與Flash9的一次親密接觸 [1] 下一頁
◎進入論壇Flash專欄版塊參加討論
|