天天看點

flash事件偵聽器示例彙總

事件的偵聽器-廣播器模型與事件處理函數方法不同,它允許多個代碼片斷互不沖突地偵聽同一事件。

這麼說吧,就好像訂報紙,我們可以每隔5分鐘去看一次報紙到沒到,如果您的時間很充裕的話;也可以跟報刊店的老闆打聲招呼,告訴他報紙到了,就給送來。很明顯,後者的效率遠高于前者,在flash裡面前者就像這樣

this.onEnterFrame=function(){

    if(paperArrived){

        sendme();

    }

}

結果就是每一幀都得檢驗paperArrived是否為true,效率太低,但也能解決問題。

運用事件偵聽器-廣播器模型,就像這樣

var myObj=new Object();

myObj.onPaperArrived=function(){

    sendme();

}

me.addListerner(myObj);

隻要報紙一到,馬上執行sendme();這個程式,高效啊!

下面來看一下demo,這裡我沒有把stage列入,因為比較偏,平時用到的也不多。

demo

主要代碼(這裡以mouse為例):

this.createEmptyMovieClip("tmp_mc", this.getNextHighestDepth());

var myMouseObj = new Object();

myMouseObj.onMouseDown = function() {

    if (_xmouse>400 && _xmouse0 && _ymouse400 && _xmouse0 && _ymouse

[1b]源檔案下載下傳[/1b]:

[url=http://www.blueidea.com/articleimg/2006/08/3930/addListener.zip]

[color="#444444"]addListener.zip[/color]

[/url]

本文轉自:http://www.5uflash.com/flashjiaocheng/Flashaschengxu/180.html