自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Flex事件機(jī)制中事件注冊(cè)通道和觸發(fā)方法

開(kāi)發(fā) 后端
本文向大家介紹一下Flex事件機(jī)制的使用問(wèn)題,F(xiàn)lex事件可以看作是一種觸發(fā)機(jī)制,當(dāng)滿(mǎn)足了一定的條件后,會(huì)觸發(fā)這個(gè)Flex事件。

你對(duì)Flex事件機(jī)制的使用是否了解,本文和大家重點(diǎn)討論一下,F(xiàn)lex事件可以看作是一種觸發(fā)機(jī)制,當(dāng)滿(mǎn)足了一定的條件后,會(huì)觸發(fā)這個(gè)Flex事件。比如MouseEvent就是指的當(dāng)鼠標(biāo)進(jìn)行操作之后觸發(fā)的一系列的Flex事件。

Flex事件機(jī)制介紹

1.什么是Flex事件機(jī)制

Flex事件可以看作是一種觸發(fā)機(jī)制,當(dāng)滿(mǎn)足了一定的條件后,會(huì)觸發(fā)這個(gè)Flex事件。比如MouseEvent就是指的當(dāng)鼠標(biāo)進(jìn)行操作之后觸發(fā)的一系列的Flex事件。很多控件中都有clickFlex事件,這個(gè)Flex事件就是一個(gè)MouseEvent的實(shí)例,當(dāng)點(diǎn)擊鼠標(biāo)后,系統(tǒng)會(huì)自動(dòng)拋出一個(gè)名稱(chēng)為click的MouseEventFlex事件(這種方法我們將在后面介紹到)。如果此時(shí)在click上注冊(cè)一個(gè)方法,那么觸發(fā)該Flex事件時(shí)就會(huì)執(zhí)行這個(gè)方法。

Flex主應(yīng)用的mxml代碼

  1. <mx:Script> 
  2. <![CDATA[  
  3. importmx.controls.Alert;  
  4. privatefunctionclickHandler(e:MouseEvent){  
  5. Alert.show(e.currentTarget.toString());  
  6. }  
  7. ]]> 
  8. </mx:Script> 
  9. <mx:Buttonidmx:Buttonid="testBtn"click="clickHandler(event)"label="測(cè)試"> 
  10. </mx:Button> 
  11.  

 在我們寫(xiě)代碼時(shí),編輯器的代碼補(bǔ)全提示列表中,有很多不同的圖標(biāo)。

那些帶有閃電的就是Flex事件,三個(gè)小塊的就是樣式,空心圓圈的是屬性,實(shí)心圓點(diǎn)的是公有方法,還有一個(gè)是效果。

我們能在這個(gè)列表中看到的Flex事件,我把它稱(chēng)之為Flex事件注冊(cè)通道。(官方仍然稱(chēng)它為Flex事件,但是它又和普通的Flex事件含義不同。關(guān)于Flex事件注冊(cè)通道會(huì)再下面講述到)

2.Flex事件機(jī)制中事件注冊(cè)通道

上面說(shuō)到了,這些通道是只能在mxml的代碼提示中可以看到的,他的作用就是給mxml組件提供Flex事件觸發(fā)時(shí)所執(zhí)行的方法的注冊(cè)通道,而且能在代碼提示中可見(jiàn),這樣給組件提供了很大的抽象的好處,我們可以很清楚的告訴組件的使用者,組件里包含哪些Flex事件給你調(diào)用。
為什么把他區(qū)別對(duì)待?除了代碼提示外,他還有一些實(shí)現(xiàn)上的不同。

Button的clickFlex事件是繼承自核心類(lèi)InteractiveObject,遺憾我們看不到他的源碼,但是說(shuō)明了“Flex事件注冊(cè)通道”是可以繼承的。

我們會(huì)在自定義Flex事件中講述到如何聲明“Flex事件注冊(cè)通道”。

3.Flex事件機(jī)制中事件觸發(fā)方法

注冊(cè)通道中如果填入了函數(shù),那么就代表觸發(fā)該Flex事件時(shí),會(huì)執(zhí)行這個(gè)方法。

  1. click="clickHandler(event)" 

我們看到這個(gè)方法有一個(gè)event對(duì)象作為參數(shù)傳入,新人可能會(huì)問(wèn)到,這個(gè)event對(duì)象哪里來(lái)的?我也沒(méi)聲明這個(gè)變量啊。他實(shí)際上是注冊(cè)通道傳給他的,默認(rèn)變量名就是event。我們?nèi)绻朐贔lex事件觸發(fā)時(shí)傳其他的參數(shù),可以通過(guò)自定的Flex事件對(duì)象來(lái)實(shí)現(xiàn)。

這個(gè)對(duì)象就是這個(gè)組件分發(fā)的Flex事件對(duì)象,即type為“click”的MouseEvent的一個(gè)實(shí)例。

這個(gè)event對(duì)象包含了觸發(fā)該Flex事件時(shí)的各種信息,比如觸發(fā)Flex事件對(duì)象是哪個(gè),監(jiān)聽(tīng)對(duì)象是哪個(gè),觸發(fā)時(shí)鼠標(biāo)點(diǎn)在哪里等等,不同的event類(lèi)會(huì)包含不同的屬性,比如KeyboardEvent包含了鍵盤(pán)點(diǎn)擊了哪個(gè)鍵。我們也可以通過(guò)自定義一個(gè)Flex事件類(lèi),來(lái)傳遞我們自己想要的各種信息。

【編輯推薦】

  1. Flex事件機(jī)制用法揭秘
  2. FlexBuilder4十大新特性閃亮登場(chǎng)
  3. Flex框架中Cairngorm和Mate的優(yōu)點(diǎn)大比拼
  4. FlexBuilder3.0與Eclipse3.4的完美結(jié)合
  5. 解析Flex應(yīng)用開(kāi)發(fā)步驟 新特性和技術(shù)框架 
責(zé)任編輯:佚名 來(lái)源: accptech.com
相關(guān)推薦

2010-08-13 14:05:24

Flex事件機(jī)制

2010-08-09 09:47:34

Flex事件機(jī)制

2010-08-06 10:03:42

Flex事件

2010-08-09 11:06:01

Flex事件機(jī)制

2010-08-04 13:52:53

Flex事件機(jī)制

2010-08-12 15:35:44

Flex事件機(jī)制

2010-08-06 09:45:50

Flex事件機(jī)制

2010-07-29 10:33:59

Flex鍵盤(pán)事件

2010-08-04 14:07:59

Flex事件機(jī)制

2010-08-13 13:56:02

Flex事件機(jī)制

2010-08-06 10:24:56

Flex事件分發(fā)

2010-08-12 13:59:37

FlexList控件

2010-08-04 14:02:08

Flex事件機(jī)制

2017-12-21 15:42:08

iOS傳遞機(jī)制

2010-08-09 11:14:36

Flex事件處理

2010-08-04 13:23:29

Flex事件

2010-08-02 14:04:29

Flex4教程

2009-08-31 09:20:37

C#事件注冊(cè)和注銷(xiāo)

2023-11-02 08:10:13

框架Spring程序事件

2010-08-12 16:10:44

Flex應(yīng)用程序
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)