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

Flex 3教程中AS2和AS3可視元素的轉(zhuǎn)換

開(kāi)發(fā) 后端
本文向大家簡(jiǎn)單介紹一下Flex 3教程中AS2和AS3可視元素的轉(zhuǎn)換,主要包括主要機(jī)制變化和主要的可視化元素類介紹兩大部分內(nèi)容。

Flex3有很多值得學(xué)習(xí)的地方,本文和大家重點(diǎn)討論一下Flex 3教程中AS2和AS3可視元素的轉(zhuǎn)換,在AS3種,可視元素有很大的變化,在flash.display包中,包含了33個(gè)類/接口,比起AS2時(shí)代的MovieClip,Button,TextField等簡(jiǎn)單幾個(gè)類來(lái)說(shuō),是復(fù)雜并強(qiáng)大了不少。

Flex 3教程中AS2和AS3可視元素的轉(zhuǎn)換

1.主要機(jī)制的變化

在AS3種,可視元素有很大的變化,在flash.display包中,包含了33個(gè)類/接口,比起AS2時(shí)代的MovieClip,Button,TextField等簡(jiǎn)單幾個(gè)類來(lái)說(shuō),是復(fù)雜并強(qiáng)大了不少。(注:下面有的地方簡(jiǎn)稱可視元素為元件)
AS3的可視元素使用方法和AS2不同,AS2時(shí)代,創(chuàng)建一個(gè)可視元素必須通過(guò)MovieClip.createEmptyMovie(),MovieClip.createTextField()方法來(lái)創(chuàng)建,不方便不說(shuō),更重要的是,一個(gè)元件從創(chuàng)建時(shí),就被加到了舞臺(tái)上,從舞臺(tái)上移出后,這個(gè)元件就不可用了。而AS3中,你可用new來(lái)創(chuàng)建任何可視元素,在需要用的時(shí)候把它加到舞臺(tái)上,不用的時(shí)候移除下來(lái),等到再用的時(shí)候,還可以再放上去就是。因此非常方便。由于這個(gè)特點(diǎn),不同swf里面的元件可以相互使用了,比如你在swf1的library里面做了一個(gè)圖標(biāo),綁定的類是Icon1,你可以把swf1加載到swf2中,然后通過(guò)newIcon1()創(chuàng)建一個(gè)那個(gè)圖標(biāo),然后通過(guò)addChild()方法把它加到swf2的舞臺(tái)上。也許你已經(jīng)意識(shí)到,我們?cè)僖膊恍枰磕_的共享庫(kù)(SharedLibrary)了。

2.主要的可視元素類介紹

這里簡(jiǎn)單介紹一下Flex 3教程中主要的可視元素,它們各自的特點(diǎn)和用途。
DisplayObject:所有可視元素都繼承自DisplayObject類,DisplayObject包含了一系列基本的屬性、方法和事件,比如坐標(biāo)x,y,透明度alpha等,有好些屬性和方法和AS2的MovieClip/Button/TextField類似,但是有的是有區(qū)別的,比如alpha的取值范圍就不是0到100,而是0到1,在使用的時(shí)候注意查看文檔,不要犯小錯(cuò)誤。
InteractiveObject:所有可交互的可視元素都繼承自InteractiveObject類,InteractiveObject包含了一系列可交互屬性、方法和事件,比如是否可點(diǎn)擊mouseEnabled,是否可Tab接收焦點(diǎn)tabEnabled等,InteractiveObject自身增加的屬性和方法不多,主要是交互事件上的增加。關(guān)于事件將在下一章講解。

Bitmap:表示一個(gè)位圖,可以和BitmapData很好的結(jié)合使用。
Shape:表示一個(gè)矢量圖型,可以用其graphics屬性代碼繪制圖形。
DisplayObjectContainer:可視元件的容器,可以在其中放置其他可視元件,Stage就是一個(gè)容器,所以可以向Stage中添加可視元素。DisplayObjectContainer繼承自InteractiveObject,但是不能直接構(gòu)造它的實(shí)例。

Sprite:最常用的元件,他繼承自DisplayObjectContainer,所以通常用它來(lái)做容器或者用來(lái)實(shí)現(xiàn)可交互的元件。
MovieClip:繼承自Sprite,增加了時(shí)間軸(幀的設(shè)定)。這個(gè)類在AS2時(shí)代是使用最多的可視元件類型了,但是到了AS3,它被使用的頻率將會(huì)大大減少,因?yàn)橥ǔ:芏嘣遣恍枰獣r(shí)間軸的,Sprite基本上取代了它的重要位置。

Loader:加載器元件,你可以把可視內(nèi)容(圖片,swf等)東西加載到它里面,然后把它放入舞臺(tái)上的容器里從而顯示出來(lái),這比起AS2時(shí)代必須把東西加載到MovieClip要方便多了。
TextField:顯示/編輯文字的元件,它其實(shí)是在flash.text包里面的,由于也是非常重要的可視元素,所以這里一并講解。功能和AS2時(shí)代基本相同,在關(guān)于內(nèi)容尺寸計(jì)算方面有一些增強(qiáng),多了不少方法。鑒于AS3可視元素可以存在于舞臺(tái)之外的特點(diǎn),TextField因此可以說(shuō)功能大大增強(qiáng),當(dāng)你不使用一個(gè)TextField的時(shí)候,把它從舞臺(tái)上弄下來(lái),他的各項(xiàng)屬性仍然保留著,下次加上舞臺(tái)的時(shí)候,完璧歸趙,無(wú)任何損失。
Stage:舞臺(tái)類。在AS2時(shí)代,Stage可控的東西不多,而AS3中,Stage其實(shí)就是一個(gè)DisplayObjectContainer,并且還擁有其他一些屬性和方法。功能很強(qiáng)大。當(dāng)然,由于其特殊性,有的屬性和方法是不能使用的,詳見(jiàn)幫助文檔。
可視元素的繼承關(guān)系圖如下:

3.使用注意

Flex 3教程中在AS2中的全局變量_root已經(jīng)不存在了,因此要給舞臺(tái)上添加內(nèi)容,不是那么容易。每個(gè)DisplayObject都有一個(gè)root屬性,此屬性要在此元件被添加到舞臺(tái)上之后才有值,因此想直接通過(guò)root往舞臺(tái)上添加元件是不容易的。root屬性表示一個(gè)swf的根,如果你的影片只是一個(gè)swf,那么所有DisplayObject的root值除了null之外只可能是同一個(gè)值。但是如果你加載了另一個(gè)swf到影片里,那么就有了另一個(gè)root。

DisplayObject的stage屬性將會(huì)比較重要,stage表示flashplayer的播放舞臺(tái),因此不管你的影片加載了多少個(gè)swf,所有的DisplayObject的stage屬性除了null都將是同一個(gè)值。stage屬性在一個(gè)DisplayObject被添加到舞臺(tái)上時(shí)被自動(dòng)設(shè)置,從舞臺(tái)上移除后,自動(dòng)歸null,因此,它也是指示一個(gè)元件是否在舞臺(tái)上的一個(gè)標(biāo)志。
沒(méi)有了全局的root,并且stage也是被添加到舞臺(tái)后才被設(shè)置,那么如何往舞臺(tái)上添加元件呢。對(duì)于使用FlashIDE,制作的影片在播放的時(shí)候自動(dòng)會(huì)被放置到舞臺(tái)上,因此通過(guò)它,間接就可以訪問(wèn)到root和stage,因此就可以控制放置/移除到舞臺(tái)的操作了。對(duì)于使用Flex2編譯器的用戶,編譯的主文件/類必須是繼承自Sprite的類,生成的swf在播放時(shí)自動(dòng)會(huì)創(chuàng)建一個(gè)那個(gè)主類的實(shí)例然后放置到舞臺(tái)上成為root,因此通過(guò)它,你也可以控制舞臺(tái)了。只是,可能用起來(lái)不如AS2中直接控制_root來(lái)的方便。
 

【編輯推薦】

  1. 解析Flex3教程中AS2和AS3之間事件轉(zhuǎn)換
  2. Flex安全沙箱問(wèn)題解決方法
  3. 技術(shù)前沿 看Flex客戶端緩存技術(shù)如何使用
  4. 解析Flex全屏模式設(shè)置方法
  5. Flex內(nèi)存泄露解決方法和內(nèi)存釋放優(yōu)化原則

 

 

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

2010-08-02 10:41:06

Flex3教程

2010-08-02 10:18:06

Flex3教程

2010-08-02 10:35:19

Flex3教程

2010-07-28 11:12:19

Flex正則表達(dá)式

2010-08-02 10:50:55

Flex3

2010-08-02 14:04:29

Flex4教程

2010-05-25 16:23:04

安裝MySQL

2020-03-25 18:23:07

Vue2Vue3組件

2010-08-02 13:04:04

Flex3

2010-08-09 09:41:02

Flex3

2010-08-03 09:05:55

Flex3SDK

2022-08-01 08:02:25

單元格可視化語(yǔ)法

2010-07-27 09:37:44

Flex

2009-07-16 14:09:24

Flex3到Flex4

2021-06-26 06:29:14

Vue 2Vue 3開(kāi)發(fā)

2012-01-06 13:48:59

flash

2012-05-10 10:55:03

CSS

2010-08-02 12:44:01

Flex3Flex4

2009-07-03 08:58:22

Flex教程Flex程序

2014-06-30 09:24:48

數(shù)據(jù)可視化
點(diǎn)贊
收藏

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