成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用Flex組件開發那些事

開發 后端
本文向大家介紹一下如何使用Flex組件開發,在Flex應用程序中ActionScript的最主要的用處大概就是使用可視化的控件和容器來開發了。

在學習Flex的過程中,你可能會遇到使用Flex組件開發問題,這里和大家分享一下,為了在ActionScript中使用Flex組件,我們一般要在MXML標簽中給組件定義一個id屬性。

使用Flex組件開發

在Flex應用程序中ActionScript的最主要的用處大概就是使用可視化的控件和容器來開發了。Flex提供了幾種技術來完成這樣工作,包括了用ActionScript引用Flex控件以及操控控件和容器的實例的屬性。

引用Flex組件

為了在ActionScript中使用組件,我們一般要在MXML標簽中給組件定義一個id屬性。例如,下面的代碼中,我們設置了Button控件的id屬性為”myButton”:

  1. <mx:Buttonidmx:Buttonid="myButton"label="ClickMe"/> 

如果你并不像通過使用ActionScript來操控這個組件,那么這個屬性是可有可無的。

這段代碼使得MXML編譯器自動生成一個包含了Button實例的引用的名字為myButton的公共變量。你可以在ActionScript中通過使用這個自動生成的變量來操控Flex組件。你可以在任意的ActionScript類或代碼塊中通過組件的id來明確的引用Button控件的實例。通過引用組件的實例,你可以修改組件的屬性并且調用組件的方法。

例如,下面的ActionScript代碼塊中,當用戶點擊了按鈕的時候,程序就會改變Button控件的label屬性的值:

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <!--usingas/ButtonExample.mxml--> 
  4.  
  5. <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> 
  6.  
  7. <mx:Script><![CDATA[  
  8.  
  9. privatefunctionsetLabel():void{  
  10.  
  11. if(myButton.label=="ClickMe"){  
  12.  
  13. myButton.label="Clicked";  
  14.  
  15. }else{  
  16.  
  17. myButton.label="ClickMe";  
  18.  
  19. }  
  20.  
  21. }  
  22.  
  23. ]]></mx:Script> 
  24.  
  25. <mx:Buttonidmx:Buttonid="myButton"label="ClickMe"click="setLabel();"/> 
  26.  
  27. </mx:Application> 
  28.  

 所有的MXML組件的id屬性,無論它們嵌套的有多深,生成的都是已經定義好的組件的公共變量。因此,在文檔中所有的id屬性必須是***的。這也意味著,如果你指定了組件實例的id屬性,你就可以在程序的任意地方來操控組件:函數,外部的類文件,導入的ActionScript文件,或者內嵌代碼。

◆如果Flex組件并沒有id屬性,你可以通過使用組件的容器的一些方法來引用該組件。比如getChildAt()和getChildByName()方法。

你可以參照目前內附文件或者當前對象來使用這樣的關鍵字。

你也可以通過使用跟組件名稱一樣的字符來引用組件。要在程序中使用對象,你可以通過使用方括號,方括號內存放的就是跟組件名稱一樣的字符串。這樣你就得到了該對象的引用。

下面的例子中,通過使用字符串來獲取對象的引用,然后改變每個Button控件的樣式:

 

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <!--usingas/FlexComponents.mxml--> 
  4.  
  5. <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> 
  6.  
  7. <mx:Script><![CDATA[  
  8.  
  9. privatevarnewFontStyle:String;  
  10.  
  11. privatevarnewFontSize:int;  
  12.  
  13. publicfunctionchangeLabel(s:String):void{  
  14.  
  15. s="myButton"+s;  
  16.  
  17.  
  18. if(this[s].getStyle("fontStyle")=="normal"){  
  19.  
  20. newFontStyle="italic";  
  21.  
  22. newFontSize=18;  
  23.  
  24. }else{  
  25.  
  26. newFontStyle="normal";  
  27.  
  28. newFontSize=10;  
  29.  
  30. }  
  31.  
  32. this[s].setStyle("fontStyle",newFontStyle);  
  33.  
  34. this[s].setStyle("fontSize",newFontSize);  
  35.  
  36. }  
  37.  
  38. ]]></mx:Script> 
  39.  
  40. <mx:Buttonidmx:Buttonid="myButton1" 
  41.  
  42. click="changeLabel('2')" 
  43.  
  44. label="ChangeOtherButton'sStyles" 
  45. /> 
  46.  
  47. <mx:Buttonidmx:Buttonid="myButton2" 
  48.  
  49. click="changeLabel('1')" 
  50.  
  51. label="ChangeOtherButton'sStyles" 
  52.  
  53. /> 
  54.  
  55. </mx:Application> 


這個小技巧有著比較特殊的用處,當你在用Repeater控件或用ActionScript創建了一個對象的時候,你不必知道對象的名字你也可以在運行時來引用該對象。但是,當你用ActionScript實例化一個對象的時候,如果要添加該對象到應用程序的屬性數組(按本人的理解:該數組為應用程序的數組,包含程序中定義的組件的實例)中去,你必須定義該變量為public并且要在整個的類的作用域范圍定義,而不是在函數的內部定義。

【編輯推薦】

  1. 解析Flex數據綁定的幾種方式
  2. 解析重寫Flex組件中角色 規則和步驟
  3. 學習總結 在Flex中如何嵌入Flex字體
  4. 解析重寫Flex組件的原因和規則
  5. Flex數據綁定及其使用頻繁的幾種情況 

 

責任編輯:佚名 來源: chinaunix.net
相關推薦

2010-08-12 14:13:01

Flex開發者

2010-07-27 11:29:43

Flex

2010-08-09 13:20:36

Flex

2010-07-30 13:40:59

Flex開發

2010-07-30 13:52:17

Flex組件

2011-07-19 15:33:57

iPhone

2011-08-01 17:31:25

Xcode開發 Cocoa

2012-07-13 00:03:08

WEB前端開發WEB開發

2012-08-30 09:41:23

移動應用開發

2010-08-04 15:37:31

Flex圖表

2010-04-12 14:58:56

Meego開發

2017-05-15 21:50:54

Linux引號

2024-02-04 17:03:30

2011-05-19 16:47:50

軟件測試

2012-05-01 08:06:49

手機

2010-07-26 11:02:19

Perl模式匹配

2011-09-19 15:40:35

2015-09-14 09:16:17

iOS統計打點

2020-07-29 08:14:59

云計算云遷移IT

2009-07-29 10:36:04

北電收購
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美区在线 | 亚洲国产一区二区三区在线观看 | 中文字幕在线第二页 | av一区二区三区四区 | 国产精品久久午夜夜伦鲁鲁 | 依人成人| 国产成人av一区二区三区 | 国产精品69毛片高清亚洲 | 特一级毛片 | 狠狠色狠狠色综合系列 | 国产精品一区在线 | 久久久www成人免费无遮挡大片 | 国产成人高清成人av片在线看 | 天堂视频一区 | 日韩精品一区二区三区中文在线 | 欧洲视频一区 | 午夜视频在线免费观看 | 视频一区在线观看 | 日韩av在线免费 | 无码一区二区三区视频 | 免费一看一级毛片 | 成年视频在线观看 | 黄色片网站在线观看 | 日韩中文字幕 | 国产午夜精品一区二区三区在线观看 | 日本又色又爽又黄的大片 | 亚洲精品久久国产高清情趣图文 | 亚洲人成一区二区三区性色 | 日本三级线观看 视频 | 日韩欧美在线播放 | 日韩欧美国产精品一区二区三区 | 国产一区二区三区在线 | 毛片在线免费 | 一级片视频免费 | www.788.com色淫免费 | 国产精品免费观看视频 | 亚洲影音 | 天堂色区| 人人艹人人爽 | 日韩一区中文字幕 | 成人免费视频一区二区 |