您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“如何使用Flex組件開(kāi)發(fā)”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“如何使用Flex組件開(kāi)發(fā)”這篇文章吧。
使用Flex組件開(kāi)發(fā)
在Flex應(yīng)用程序中ActionScript的最主要的用處大概就是使用可視化的控件和容器來(lái)開(kāi)發(fā)了。Flex提供了幾種技術(shù)來(lái)完成這樣工作,包括了用ActionScript引用Flex控件以及操控控件和容器的實(shí)例的屬性。
引用Flex組件
為了在ActionScript中使用組件,我們一般要在MXML標(biāo)簽中給組件定義一個(gè)id屬性。例如,下面的代碼中,我們?cè)O(shè)置了Button控件的id屬性為”myButton”:
<mx:Buttonidmx:Buttonid="myButton"label="ClickMe"/>
如果你并不像通過(guò)使用ActionScript來(lái)操控這個(gè)組件,那么這個(gè)屬性是可有可無(wú)的。
這段代碼使得MXML編譯器自動(dòng)生成一個(gè)包含了Button實(shí)例的引用的名字為myButton的公共變量。你可以在ActionScript中通過(guò)使用這個(gè)自動(dòng)生成的變量來(lái)操控Flex組件。你可以在任意的ActionScript類或代碼塊中通過(guò)組件的id來(lái)明確的引用Button控件的實(shí)例。通過(guò)引用組件的實(shí)例,你可以修改組件的屬性并且調(diào)用組件的方法。
例如,下面的ActionScript代碼塊中,當(dāng)用戶點(diǎn)擊了按鈕的時(shí)候,程序就會(huì)改變Button控件的label屬性的值:
<?xmlversionxmlversion="1.0"?> <!--usingas/ButtonExample.mxml--> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script><![CDATA[ privatefunctionsetLabel():void{ if(myButton.label=="ClickMe"){ myButton.label="Clicked"; }else{ myButton.label="ClickMe"; } } ]]></mx:Script> <mx:Buttonidmx:Buttonid="myButton"label="ClickMe"click="setLabel();"/> </mx:Application>
所有的MXML組件的id屬性,無(wú)論它們嵌套的有多深,生成的都是已經(jīng)定義好的組件的公共變量。因此,在文檔中所有的id屬性必須是***的。這也意味著,如果你指定了組件實(shí)例的id屬性,你就可以在程序的任意地方來(lái)操控組件:函數(shù),外部的類文件,導(dǎo)入的ActionScript文件,或者內(nèi)嵌代碼。
◆如果Flex組件并沒(méi)有id屬性,你可以通過(guò)使用組件的容器的一些方法來(lái)引用該組件。比如getChildAt()和getChildByName()方法。
你可以參照目前內(nèi)附文件或者當(dāng)前對(duì)象來(lái)使用這樣的關(guān)鍵字。
你也可以通過(guò)使用跟組件名稱一樣的字符來(lái)引用組件。要在程序中使用對(duì)象,你可以通過(guò)使用方括號(hào),方括號(hào)內(nèi)存放的就是跟組件名稱一樣的字符串。這樣你就得到了該對(duì)象的引用。
下面的例子中,通過(guò)使用字符串來(lái)獲取對(duì)象的引用,然后改變每個(gè)Button控件的樣式:
<?xmlversionxmlversion="1.0"?> <!--usingas/FlexComponents.mxml--> <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script><![CDATA[ privatevarnewFontStyle:String; privatevarnewFontSize:int; publicfunctionchangeLabel(s:String):void{ s="myButton"+s; if(this[s].getStyle("fontStyle")=="normal"){ newFontStyle="italic"; newFontSize=18; }else{ newFontStyle="normal"; newFontSize=10; } this[s].setStyle("fontStyle",newFontStyle); this[s].setStyle("fontSize",newFontSize); } ]]></mx:Script> <mx:Buttonidmx:Buttonid="myButton1" click="changeLabel('2')" label="ChangeOtherButton'sStyles" /> <mx:Buttonidmx:Buttonid="myButton2" click="changeLabel('1')" label="ChangeOtherButton'sStyles" /> </mx:Application>
以上是“如何使用Flex組件開(kāi)發(fā)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。