偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

FlexBuilder教程教你如何創(chuàng)建自定義控件

開發(fā) 后端
本文FlexBuilder教程教你如何創(chuàng)建自定義組件,在創(chuàng)建組件之前需要做的一個(gè)首要決定是,使用as還是mxml。由你需要開發(fā)應(yīng)用程序來(lái)決定你需要使用什么樣的組件。

本文和大家重點(diǎn)討論一下FlexBuilder教程如何創(chuàng)建自定義組件,主要從三個(gè)方面向大家介紹,在創(chuàng)建組件之前需要做的一個(gè)首要決定是,使用as還是mxml。

創(chuàng)建自定義組件

1、Flex是由as類結(jié)構(gòu)實(shí)現(xiàn)的。

FlexBuilder教程中類結(jié)構(gòu)包含了組件類,管理類,數(shù)據(jù)服務(wù)類,和其他用來(lái)實(shí)現(xiàn)flex功能的類。下圖展示的是類結(jié)構(gòu)中flex可視化組件的一部分,關(guān)于控制和容器的部分:

 

所有的可視化組件繼承自UIComponentas類。Flex中非可視化組件也是依靠as類結(jié)構(gòu)來(lái)實(shí)現(xiàn)的。大部分的非可視化組件都是Validator,F(xiàn)ormatter,或者是Effect類。

通過(guò)使用mxml和as語(yǔ)言擴(kuò)展Flex類結(jié)構(gòu)來(lái)創(chuàng)建自定義的組件。組件都繼承了父類的屬性,方法,行為,風(fēng)格和效果。

通過(guò)as創(chuàng)建一個(gè)flex組件時(shí),必須繼承自一個(gè)flex類。類的名稱必須和類文件的名稱相同。子類繼承了父類的所有屬性的和方法。在mxml中使用這個(gè)組件時(shí),通過(guò)使用類名稱的標(biāo)簽來(lái)引用。例如,類名稱是myASButton,文件名則為myASButton.as,在mxml中使用<myASButton>標(biāo)簽來(lái)使用組件。

在通過(guò)mxml創(chuàng)建一個(gè)組建時(shí),flex編譯器將自動(dòng)的生成一個(gè)as類。mxml文件的名稱必須和as類名稱相同。同樣,在mxml中使用這個(gè)名稱標(biāo)簽來(lái)使用這個(gè)組件。

下圖展示了分別通過(guò)as和mxml創(chuàng)建的FlexButton組件的自定義組件:Button.as

 

  1. MyASButton.as  
  2.  
  3. package  
  4. {  
  5. publicclassMyASButtonextendsButton  
  6. {  
  7.  
  8. //Overrideinheritedmethodsandproperties.  
  9. //Definenewmethodsandproperties.  
  10. //DefinecustomlogicinActionScript.  
  11.  
  12. }  
  13. }  
  14.  
  15. <mx:Button> 
  16.  
  17. <ms:Script> 
  18. //Overrideinheritedmethodsandproperties.  
  19. //Definenewmethodsandproperties.  
  20. //DefinecustomlogicinActionScript.  
  21. </mx:Script> 
  22.  
  23. <!--AddMXMLcode.--> 
  24. </mx:Button> 
  25.  

 上面的兩種實(shí)現(xiàn)方法都生成了一個(gè)Button類的子類。同樣的繼承了所有的屬性,方法和button類的所有元素。都可以重寫類的屬性,方法和邏輯。

注意:父類中的變量是不能被覆蓋,但是可以覆蓋通過(guò)setter和getter方法實(shí)現(xiàn)的屬性。你可以重新設(shè)置這些變量的值。

另外,如果使用mxml創(chuàng)建組建,flex編譯器完成了創(chuàng)建一個(gè)組件的子類的大部分工作,因此使用mxml創(chuàng)建組件比用as創(chuàng)建組件更加容易。


2、決定是使用mxml還是as創(chuàng)建組件

FlexBuilder教程中在創(chuàng)建組件之前需要做的一個(gè)首要決定是,使用as還是mxml。由你需要開發(fā)應(yīng)用程序來(lái)決定你需要使用什么樣的組件。

下面是一些基本的指導(dǎo)方針:

mxml和as組件都定義了新的as類?;旧纤心苡胊s完成的自定義組件都可以通過(guò)mxml來(lái)實(shí)現(xiàn)。一般來(lái)說(shuō),對(duì)于簡(jiǎn)單的自定義組建,例如修改已有組建的一些屬性和方法,使用mxml要比使用as方便得多。當(dāng)你在新的組件中使用了別的組建,而且需要使用flexlayout容器來(lái)進(jìn)行多個(gè)組件的布局設(shè)置,那么需要使用mxml來(lái)定義。如果你想修改某一個(gè)組件的行為,例如一個(gè)容器中子元素的布局方式,則使用as。

如果你想通過(guò)創(chuàng)建UIComponent的子類來(lái)創(chuàng)建一個(gè)全新的可視化組件,則使用as。如果你想創(chuàng)建一個(gè)全新的非可視化組件,例如formatter,validator,或者effect,則使用as。注意:FlashProfessional8是不能開發(fā)AS3.0的組件的,如果要使用AS3.0開發(fā)Flex2組件,應(yīng)該使用FlexBuilderIDE。


3、組件部署

FlexBuilder教程中在部署你的mxml或as文件的自定義組件時(shí),一般將這些文件放置在你的應(yīng)用程序的子目錄內(nèi),或者一個(gè)定義好的as類路徑下。

為了保密,你可能不希望使用源碼的形式來(lái)部署你的源文件。因此你可以使用swc文件或者共享資源庫(kù)(RSL)作為用來(lái)部署的文件。

Swc文件是Flex組件的一種集合格式。使用swc文件可以方便的在開發(fā)人員之間進(jìn)行交流,這樣你使用使用一個(gè)文件,而不是很多mxml,as文件,或者圖片和其他資源。更重要的是,swc文件中的swf已經(jīng)被編譯了,這意味著你不用看著繁雜的代碼。

Swc文件可以包含多個(gè)組件,使用PKZip打包格式將其打包在一起。你可以使用winzip,jar或者任何打包工具來(lái)打開這個(gè)文件。但是,一般來(lái)說(shuō)不要直接在swc外部運(yùn)行打包在swc里面的swf文件。

創(chuàng)建swc文件,需要使用compc工具,該工具在flex安裝目錄下的bin目錄內(nèi)。compc工具可以將mxml文件,或as文件,或兩種文件一起,打包成swc文件。

要縮小你的swf格式的應(yīng)用程序的大小,有一種方式是將共享資源打包到文件外部,由client下載并保存在緩存中。這些外部職員可以在程序運(yùn)行的時(shí)候多次被使用,但是只需要從服務(wù)器傳輸?shù)絚lient端一次。這些文件就是共享資源庫(kù)(RSL)。

【編輯推薦】

  1. 解析Flexbuilder4十大新特性
  2. FlexBuilder教程中數(shù)據(jù)服務(wù)器訪問(wèn)的幾種方式
  3. Flex及FlexBuilder2.0開發(fā)環(huán)境詳解
  4. FlexBuilder3.0與Eclipse3.4的***結(jié)合
  5. 學(xué)習(xí)筆記 FlexBuilder2.0中如何使用基于Lists的控件 

 

責(zé)任編輯:佚名 來(lái)源: javaeye.com
相關(guān)推薦

2010-08-03 15:44:08

FlexBuilder

2009-08-05 17:03:37

C#自定義控件

2024-09-11 14:46:48

C#旋轉(zhuǎn)按鈕

2022-04-20 18:22:18

CSS拖拽預(yù)覽圖

2009-09-03 13:34:03

.NET自定義控件

2009-06-08 20:13:36

Eclipse自定義控

2013-04-19 10:14:24

2015-02-12 15:33:43

微信SDK

2010-08-02 13:47:47

FlexBuilder

2017-02-17 09:37:12

Android自定義控件方法總結(jié)

2022-08-04 18:30:59

DockerfileDocker 鏡像Linux

2021-06-17 06:52:37

C#自定義異常

2021-01-20 08:58:39

iOS 14桌面圖標(biāo)快捷指令

2009-08-03 13:34:06

自定義C#控件

2015-02-11 17:49:35

Android源碼自定義控件

2009-08-03 13:39:46

C#自定義用戶控件

2014-09-24 11:42:46

AndroidButton

2022-05-07 10:22:32

JavaScript自定義前端

2019-12-02 21:29:45

Keras神經(jīng)網(wǎng)絡(luò)TensorFlow

2022-04-14 06:20:25

GNOME桌面應(yīng)用
點(diǎn)贊
收藏

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