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

深入剖析Flex應(yīng)用程序中事件和行為的使用

開發(fā) 后端
本文向大家介紹一下Flex應(yīng)用程序中事件和行為的使用,HTML應(yīng)用程序的原理是由客戶端發(fā)出請求,并從服務(wù)器端得到反應(yīng),而Flex應(yīng)用程序是基于事件的/event-based。

你對Flex應(yīng)用程序中事件和行為的使用是否了解,這里和大家分享一下,F(xiàn)lex應(yīng)用程序是基于事件的/event-based,比如當(dāng)用戶單擊一個按鈕時,便會觸發(fā)一個事件,下面請看本文詳細(xì)介紹。

Flex應(yīng)用程序中事件和行為的使用

HTML應(yīng)用程序的原理是由客戶端發(fā)出請求,并從服務(wù)器端得到反應(yīng)。與之不相同的是,F(xiàn)lex應(yīng)用程序是基于事件的/event-based。舉個例子,當(dāng)用戶單擊一個按鈕時,便會觸發(fā)一個事件。應(yīng)用程序本身,不是指服務(wù)器,包含了識別事件的邏輯并采取相應(yīng)的行動。

◆Flex應(yīng)用程序中當(dāng)事件被觸發(fā)時修改組件的屬性

對某個組件以編程方式進(jìn)行操作時,為了對某個事件作出反應(yīng),必須首先要引用它,這時你就需要賦予它一個ID值,如下所示:
 

  1. <mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"y="24"> 

隨后你就可以將行為/behavior添加到應(yīng)用程序上,當(dāng)某個事件被觸發(fā)時改變組件的屬性值,就象這樣:
 

  1. <mx:Buttonlabelmx:Buttonlabel="Close"right="30"bottom="40"click="myPanel.visible=false"/> 

當(dāng)按鈕被單擊時,面板的可見屬性值被設(shè)置為false。

◆Flex應(yīng)用程序中使用ActionScript功能函數(shù)

你也可以通過編寫ActionScript功能函數(shù),并在事件中調(diào)用它來達(dá)到相同的目的,在這種情況下,按鈕組件的單擊事件如下所示:
 

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2. <mx:Applicationxmlns:mxmx:Applicationxmlns:
  3. mx="http://www.adobe.com/2006/mxml"layout="absolute"> 
  4. <mx:Stylesourcemx:Stylesource="styles.css"/> 
  5.  
  6. <mx:Script> 
  7. <![CDATA[  
  8. publicfunctionclose():void{  
  9. myPanel.visible=false;  
  10. }  
  11. ]]> 
  12. </mx:Script> 
  13.  
  14. <mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"y="24"> 
  15. <mx:TextAreatextmx:TextAreatext="SayhellotoFlex!"top="10"bottom="70"left="10"right="30"/> 
  16. <mx:Buttonlabelmx:Buttonlabel="Close"right="30"bottom="40"click="close();"/> 
  17. </mx:Panel> 
  18. </mx:Application> 
  19.  

 ActionScript功能函數(shù)是在MXML文件里的<mx:Script>塊中進(jìn)行定義的,然后引用到按鈕的單擊事件上。

◆單獨(dú)的ActionScript代碼

為了從MXML文件中更好地分離出ActionScript代碼,你可以將它們放到單獨(dú)的ActionScript文件中而不是作為函數(shù),然后再將它們導(dǎo)入到MXML文件里,如下所示:

  1. <mx:Scriptsourcemx:Scriptsource="myFunctions.as"/> 

◆運(yùn)用行為和變換增強(qiáng)豐富的視覺互動性

Flex應(yīng)用程序是事件驅(qū)動的,這就意味著你可以在程序運(yùn)行時使用事件去添加豐富的視覺互動性。為了實(shí)現(xiàn)它,你使用了一個事件觸發(fā)器,用其來描述一個行為。
在前面的例子中,面板組件的visible屬性值被設(shè)置為false因而不可見。你還可以通過使用行為來制造出更強(qiáng)的視覺效果。

下面的例子創(chuàng)建了一個行為,該行為首先創(chuàng)建好一種效果,然后把它綁定到組件的hideEffect屬性上(觸發(fā)器):
 

  1. <mx:Fadeidmx:Fadeid="myFade"/> 
  2. <mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%"  
  3. hideEffect="{myFade}"> 

當(dāng)關(guān)閉按鈕被單擊時,面板組件淡出而不是消失。
觸發(fā)器和效果還可以組合到更為復(fù)雜的行為中,其被稱之為變換/transitions。

【編輯推薦】

  1. 解析Flex數(shù)據(jù)綁定的幾種方式
  2. Flex應(yīng)用程序設(shè)計界面布局的實(shí)現(xiàn)方式
  3. Flex應(yīng)用程序組成元素和開發(fā)步驟解析
  4. 全面認(rèn)識Flex應(yīng)用程序模型
  5. Flex數(shù)據(jù)綁定及其使用頻繁的幾種情況 
責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-08-04 09:43:28

Flex應(yīng)用程序

2010-08-04 13:52:53

Flex事件機(jī)制

2010-01-25 17:14:44

Android應(yīng)用程序

2010-08-04 08:42:28

Flex和Flash

2010-08-10 13:58:00

Flex性能測試

2010-08-12 15:52:34

Flex應(yīng)用程序

2010-08-06 15:20:25

Flex Builde

2011-12-03 20:25:53

2010-12-15 15:19:24

2009-11-23 19:52:55

ibmdwFlex

2010-08-04 14:15:43

Flex應(yīng)用程序

2010-08-11 09:36:12

Flex組件

2010-08-12 15:44:25

Flex應(yīng)用程序

2010-08-03 16:21:54

FlexFlash

2010-08-11 13:28:46

Flex行為

2010-08-03 13:47:26

Flex程序員

2010-08-12 16:20:57

Flex應(yīng)用程序

2010-02-01 14:05:03

2010-08-06 10:03:42

Flex事件

2010-08-09 16:01:37

Flex字體
點(diǎn)贊
收藏

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