您好,登錄后才能下訂單哦!
小編給大家分享一下Flex應(yīng)用程序中事件和行為怎么用,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Flex應(yīng)用程序中事件和行為的使用
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)。
◆Flex應(yīng)用程序中當(dāng)事件被觸發(fā)時(shí)修改組件的屬性
對某個(gè)組件以編程方式進(jìn)行操作時(shí),為了對某個(gè)事件作出反應(yīng),必須首先要引用它,這時(shí)你就需要賦予它一個(gè)ID值,如下所示:
<mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"y="24">
隨后你就可以將行為/behavior添加到應(yīng)用程序上,當(dāng)某個(gè)事件被觸發(fā)時(shí)改變組件的屬性值,就象這樣:
<mx:Buttonlabelmx:Buttonlabel="Close"right="30"bottom="40"click="myPanel.visible=false"/>
當(dāng)按鈕被單擊時(shí),面板的可見屬性值被設(shè)置為false。
◆Flex應(yīng)用程序中使用ActionScript功能函數(shù)
你也可以通過編寫ActionScript功能函數(shù),并在事件中調(diào)用它來達(dá)到相同的目的,在這種情況下,按鈕組件的單擊事件如下所示:
<?xmlversionxmlversion="1.0"encoding="utf-8"?> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute"> <mx:Stylesourcemx:Stylesource="styles.css"/> <mx:Script> <![CDATA[ publicfunctionclose():void{ myPanel.visible=false; } ]]> </mx:Script> <mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"y="24"> <mx:TextAreatextmx:TextAreatext="SayhellotoFlex!"top="10"bottom="70"left="10"right="30"/> <mx:Buttonlabelmx:Buttonlabel="Close"right="30"bottom="40"click="close();"/> </mx:Panel> </mx:Application>
ActionScript功能函數(shù)是在MXML文件里的<mx:Script>塊中進(jìn)行定義的,然后引用到按鈕的單擊事件上。
◆單獨(dú)的ActionScript代碼
為了從MXML文件中更好地分離出ActionScript代碼,你可以將它們放到單獨(dú)的ActionScript文件中而不是作為函數(shù),然后再將它們導(dǎo)入到MXML文件里,如下所示:
<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ā)器):
<mx:Fadeidmx:Fadeid="myFade"/> <mx:Panelidmx:Panelid="myPanel"layout="absolute"width="80%"height="80%" hideEffect="{myFade}">
當(dāng)關(guān)閉按鈕被單擊時(shí),面板組件淡出而不是消失。
觸發(fā)器和效果還可以組合到更為復(fù)雜的行為中,其被稱之為變換/transitions。
以上是“Flex應(yīng)用程序中事件和行為怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。