Lua事件派發器

2021-09-29 18:40:51 字數 1132 閱讀 5353

--

----

----

----

----

----

----

----

----

-------

--author:hugh

--datetime:

2019-10

-30--describe:可用於遊戲內部所有的ui事件廣播通知

----

----

----

----

----

----

----

----

----

----

--框架自定義全域性類

cc.exports.eventmanager =

,--事件集合

}--所有的廣播列舉事件在此註冊(名字,值不要重複)

eventmanager.eventtype =

--觸發

function eventmanager.

eventbroadcast

(eventtype)

if eventmanager.eventlist[eventtype] then

eventmanager.eventlist[eventtype]()

endend--註冊

function eventmanager.

eventaddlistener

(eventtype,callback)

if eventmanager.eventlist[eventtype] then

print

("事件重複監聽,駁回監聽請求,事件型別:"

..eventtype..""

)return

endeventmanager.eventlist[eventtype]

= callback

end--銷毀

function eventmanager.

eventremovelinster

(eventtype)

eventmanager.eventlist[eventtype]

= nil

endreturn eventmanager

WebKit事件派發

一般在乙個網路應用系統中,都會一下幾類事件 網路事件,timer事件,以及裝置事件,裝置事件主要指滑鼠,按鍵,以及paint等訊息事件 webkit也不例外,小弟分析了一下32平台的實現,也無特殊之處 1.裝置事件 裝置事件仍然是通過win32平台的訊息迴圈來派發,訊息處理函式如下 expand s...

參考瀏覽器事件派發實現乙個同步事件流

同步事件流 在函式中可以終止該階段後續函式的執行,也可以終止整個流程 同步流程控制 function syncprocess hooks syncprocess.prototype.run function initdata,inithook var listeners this.listeners...

as3自定義事件和派發

自定義事件無法擁有as3系統事件的觸發效果,如單擊事件,滑鼠,鍵盤事件等,這些系統事件的派發是由編譯器生成建立和分發的 自定義事件只能由dispatchevent event 方法手動的分發。首先建立乙個自定義的事件類,繼承自事件的基類event類。package myform public ove...