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

用ActionScript創(chuàng)建可視化的Flex組件

開發(fā) 后端
用ActionScript創(chuàng)建可視化的Flex組件的方法你是否了解,這里和大家分享一下,用同樣的方式你也可以創(chuàng)建任何ActionScript類的實例。

本文和大家重點討論一下用ActionScript創(chuàng)建可視化的Flex組件,當創(chuàng)建Flex組件完成后,你可以使用標準的賦值語句來重新設置Flex組件的屬性的值。

用ActionScript創(chuàng)建可視化的Flex組件

通過使用ActionScript中的new操作符你可以程序化的創(chuàng)建可視化的Flex組件,用同樣的方式你也可以創(chuàng)建任何ActionScript類的實例。創(chuàng)建后的Flex組件的屬性都有默認的值,但是Flex組件此時并沒有父類和子類(包含各式各樣的DisplayObject),而且此時Flex組件并不在FlashPlayer或AdobeAIR的顯示列表中,因此無法在界面看到該Flex組件。當創(chuàng)建Flex組件完成后,你可以使用標準的賦值語句來重新設置Flex組件的屬性的值。

◆如果你要把新創(chuàng)建的Flex組件添加到容器中去,必須使用容器的addChild()和addChildAt()方法,通過這種方法可以使得Flex組件變成Flex程序的顯示層級的一部分。當Flex組件***次被添加到容器的時候,F(xiàn)lex組件的子實例就被創(chuàng)建了。在Flex組件的生命周期子實例創(chuàng)建的時候比較晚,因此你可以在子實例創(chuàng)建完成后設置它的屬性。

當創(chuàng)建可視化組建的時候,你必須導入合適的包。在大多數(shù)情況下,這些包基本都在mx.controls包中,具體的你可以查閱AdobeFlexLanguageReference

下面的例子中,創(chuàng)建了一個Button控件并田間到HBox中去:

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <!--usingas/ASVisualComponent.mxml--> 
  4.  
  5. <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> 
  6.  
  7. <mx:Script><![CDATA[  
  8.  
  9. importmx.controls.Button;  
  10.  
  11. publicvarbutton2:Button;  
  12.  
  13.  
  14.  
  15. publicfunctioncreateObject():void{  
  16.  
  17. button2=newButton();  
  18.  
  19. button2.label="ClickMe";  
  20.  
  21. hb1.addChild(button2);  
  22.  
  23. }  
  24.  
  25. ]]></mx:Script> 
  26.  
  27. <mx:HBoxidmx:HBoxid="hb1"> 
  28.  
  29. <mx:Buttonlabelmx:Buttonlabel="CreateObject"click="createObject()"/> 
  30.  
  31. </mx:HBox> 
  32.  
  33. </mx:Application> 
  34.  

 Flex容器中新創(chuàng)建的元素將會排在容器的***。如果你并不像讓新創(chuàng)建的元素排在容器的***,可是使用addChildAt()方法來改變元素的順序。你也可以在調用addChild()方法后使用setChildIndex()方法來實現(xiàn),不過這樣做的話效率會降低。

你應該為每個動態(tài)創(chuàng)建的Flex組件定義實例變量并且將新創(chuàng)建的Flex組件的實例存儲在變量里,就像當你為Flex組件的實例標簽設置了id屬性的時候MXML編譯器所做的那樣。然后你就可以訪問你剛才動態(tài)創(chuàng)建的Flex組件。

◆如果要在程序中移除一個Flex組件,你需要使用removeChild()或removeChildAt()方法。你也可以使用removeAllChildren()方法來移除容器的所有Flex組件。調用這些方法并不是真正的刪除這些對象。如果你在程序沒有這些對象的任何引用,那么FlashPlayer的垃圾回收機制就會在將來的某個時間點進行回收。如果在程序中存儲了該對象的引用,那么系統(tǒng)將會不從內存中移除該對象。

在有些情況下,你是通過使用MXML標簽來定義Flex組件的。你可以設置容器的creationPolicy屬性為none來延遲容器中Flex組件的實例化。為了創(chuàng)建那些用標簽定義了但沒有實例化的Flex組件,你可以使用createComponentFromDescriptor()和createComponentsFromDescriptors()方法。使用這些方法可以讓你程序化的創(chuàng)建Flex組件而不是聲明化的。

可以支持addChild()方法的Flex組件是UIComponent。換句話說,如果你創(chuàng)建了一個并不是mx.core.UIComponent的子類的對象,在你將該對象添加到容器之前你必須用UIComponent封裝該對象。下面的例子中,創(chuàng)建了并不是UIComponent子類的Sprite對象,在將該對象添加到Panel容器之前將對象添加為UIComponent的子對象:

  1. <?xmlversionxmlversion="1.0"?> 
  2.  
  3. <!--usingas/AddingChildrenAsUIComponents.mxml--> 
  4.  
  5. <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"> 
  6.  
  7. <mx:Script><![CDATA[  
  8.  
  9. importflash.display.Sprite;  
  10.  
  11. importmx.core.UIComponent;  
  12.  
  13. privatevarxLoc:int=20;  
  14.  
  15. privatevaryLoc:int=20;  
  16.  
  17. privatevarcircleColor:Number=0xFFCC00;  
  18.  
  19. privatefunctionaddChildToPanel():void{  
  20.  
  21. varcircle:Sprite=newSprite();  
  22.  
  23. circle.graphics.beginFill(circleColor);  
  24.  
  25. circle.graphics.drawCircle(xLoc,yLoc,15);  
  26.  
  27. varc:UIComponent=newUIComponent();  
  28.  
  29. c.addChild(circle);  
  30.  
  31. panel1.addChild(c);  
  32.  
  33. xLoc=xLoc+5;  
  34.  
  35. yLoc=yLoc+1;  
  36.  
  37. circleColor=circleColor+20;  
  38.  
  39. }  
  40.  
  41. ]]></mx:Script> 
  42.  
  43. <mx:Panelidmx:Panelid="panel1"height="250"width="300"verticalScrollPolicy="off"/> 
  44.  
  45. <mx:Buttonidmx:Buttonid="myButton"label="ClickMe"click="addChildToPanel();"/> 
  46.  
  47. </mx:Application> 
  48.  

【編輯推薦】

  1. 學習筆記 如何使用Flex組件進行開發(fā)
  2. AS方式重寫Flex組件常規(guī)步驟
  3. 技術前沿 看Flex客戶端緩存技術如何使用
  4. 解析Flex全屏模式設置方法
  5. Flex內存泄露解決方法和內存釋放優(yōu)化原則

 


 

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

2010-08-12 13:52:38

Flex組件

2010-07-30 13:52:17

Flex組件

2010-08-12 13:39:46

Flex組件

2021-09-27 08:31:01

數(shù)據(jù)可視化柱狀圖折現(xiàn)圖

2020-03-11 14:39:26

數(shù)據(jù)可視化地圖可視化地理信息

2010-08-09 10:39:14

FlexACtionSCrip

2021-11-19 08:30:39

H5-Dooring 可視化組件商店

2021-07-27 08:29:33

可視化組件商店H5-Dooring

2022-08-23 12:32:37

Python可視化圖表

2017-10-14 13:54:26

數(shù)據(jù)可視化數(shù)據(jù)信息可視化

2009-04-21 14:26:41

可視化監(jiān)控IT管理摩卡

2022-08-26 09:15:58

Python可視化plotly

2020-12-29 08:04:16

可視化地圖組件日歷組件

2022-09-21 23:29:15

Python點云數(shù)據(jù)

2017-09-05 08:35:09

Python可視化地圖

2017-09-01 19:49:50

Python工具地圖

2009-01-11 10:14:19

可視化服務器摩卡

2013-07-10 09:56:02

軟件定義網(wǎng)絡SDN

2015-08-20 10:06:36

可視化

2024-03-22 08:21:48

可視化搭建平臺組件商店H5-Dooring
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品欧美一区二区三区 | 久在线观看 | 国产91久久久久 | 欧一区二区 | 在线播放亚洲 | 91亚洲精选 | 亚洲国产欧美在线人成 | 国产一级片 | 久久人人网 | 欧美日韩国产不卡 | 日本中文在线 | 久久高清亚洲 | 一区二区免费 | 激情久久网 | 亚洲国产成人精品一区二区 | 日韩久久久久久久 | av在线一区二区 | 日韩快播电影网 | 成人国产免费视频 | 性做久久久久久免费观看欧美 | 久久久精品网站 | 99精品视频在线观看 | 国产精品免费一区二区三区四区 | 久久综合欧美 | 国产精品美女久久久久久久久久久 | 中文字幕在线免费 | 亚洲精品一区在线 | 国产日韩一区二区 | 91精品国产乱码久久蜜臀 | 日韩久久久一区二区 | 亚洲精品一区二区 | av色噜噜 | 欧美久久久久久 | 久久久国产一区二区三区 | 91久久国产综合久久 | 国产精品国色综合久久 | 日本不卡一区二区三区在线观看 | 999久久久久久久久6666 | 91看片在线观看 | 国产一区二区日韩 | 亚洲成人午夜电影 |