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

深入探究Flex應(yīng)用程序使用

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

 本文和大家重點(diǎn)討論一下Flex應(yīng)用程序的概念,主要包括時(shí)間和行為的使用,在Flex應(yīng)用程序中如何添加多個(gè)頁面,以及如何使用Flex等內(nèi)容,希望本文的介紹能讓你有所收獲。

一、事件和行為的使用

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

當(dāng)事件被觸發(fā)時(shí)修改組件的屬性

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

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


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

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

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

使用ActionScript功能函數(shù)

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

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

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

單獨(dú)的ActionScript代碼

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

 

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

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

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

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

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

二、在應(yīng)用程序中添加多態(tài)頁面

有幾種方法在一個(gè)Flex應(yīng)用程序中創(chuàng)建多態(tài)頁面。你可以使用ViewStack組件、創(chuàng)建單獨(dú)的MXML文件、或者使用視圖狀態(tài)。視圖狀態(tài)可以被看作是一個(gè)組件或組件群構(gòu)成的預(yù)定義的用戶界面布局。你可以使用視圖狀態(tài)為程序表現(xiàn)出不同的視覺效果。每一種視圖狀態(tài)都是基于一種基礎(chǔ)的狀態(tài),并進(jìn)行繼承和擴(kuò)展。
在隨后的例子中,當(dāng)用戶在組件上滾動(dòng)鼠標(biāo)時(shí),基礎(chǔ)狀態(tài)發(fā)生變化。

當(dāng)一個(gè)視圖狀態(tài)被調(diào)用時(shí)(通過用戶的鼠標(biāo)在組件上滾動(dòng)時(shí)產(chǎn)生的事件),一種效果(或一種變換)改變了用戶界面的外觀。
使用視圖狀態(tài)方式、ViewStack方式還是MXML文件方式,取決于你想從一個(gè)頁面到另一個(gè)頁面進(jìn)行變化的范圍、用戶界面的復(fù)雜性、以及實(shí)現(xiàn)Flex程序的構(gòu)架。

三、開始使用Flex

現(xiàn)在,想必你對Flex的概念有了一個(gè)基礎(chǔ)的認(rèn)識(shí),讓我們開始創(chuàng)建Flex應(yīng)用程序吧。

◆使用FlexBuilder

通過使用新項(xiàng)目向?qū)?NewFlexProjectWizard創(chuàng)建一個(gè)Flex項(xiàng)目(File>New>FlexProject)。設(shè)計(jì),編譯,以及調(diào)試Flex應(yīng)用程序所需的所有工具,都被包括在FlexBuilder中了。

◆使用FlexSDK

創(chuàng)建一個(gè)文件名后綴為MXML的文本文件,在其中添加MXML文件的基本元素(上述例子中的頭兩行代碼),然后使用文檔資料(特別是AdobeFlex2LanguageReference)去研究各種組件的用法。編譯和調(diào)試工具是以命令行的方法提供的。

【編輯推薦】

  1. 解析Flexbuilder4十大新特性
  2. 從Flex Builder更名看Flash平臺(tái)戰(zhàn)略
  3. 探討Flex設(shè)計(jì)理念 如何為Flex應(yīng)用程序設(shè)計(jì)界面布局
  4. FlexBuilder3.0與Eclipse3.4的***結(jié)合
  5. 學(xué)習(xí)筆記 FlexBuilder2.0中如何使用基于Lists的控件 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-08-12 16:10:44

Flex應(yīng)用程序

2009-11-23 19:52:55

ibmdwFlex

2010-08-04 14:15:43

Flex應(yīng)用程序

2010-08-11 09:36:12

Flex組件

2010-02-06 14:19:26

ibmdwGoogleMap

2010-08-10 15:26:38

Flex應(yīng)用程序

2010-08-02 09:10:36

Flex模塊化

2010-08-12 15:52:34

Flex應(yīng)用程序

2010-08-12 16:20:57

Flex應(yīng)用程序

2010-09-29 09:54:09

J2ME應(yīng)用程序

2010-08-27 10:41:41

iPhone核心應(yīng)用程序

2010-01-25 17:14:44

Android應(yīng)用程序

2010-08-13 13:18:20

Flex應(yīng)用程序

2009-06-19 17:24:36

ibmdwMashupLotus

2011-12-03 20:25:53

2010-08-12 15:44:25

Flex應(yīng)用程序

2010-08-13 13:05:30

Flex應(yīng)用程序

2010-08-04 09:34:51

Flex設(shè)計(jì)

2010-08-12 15:59:23

Flex應(yīng)用程序

2011-02-22 10:23:43

點(diǎn)贊
收藏

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