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

Flex 3教程中AS2和AS3可視元素的轉換

開發 后端
本文向大家簡單介紹一下Flex 3教程中AS2和AS3可視元素的轉換,主要包括主要機制變化和主要的可視化元素類介紹兩大部分內容。

Flex3有很多值得學習的地方,本文和大家重點討論一下Flex 3教程中AS2和AS3可視元素的轉換,在AS3種,可視元素有很大的變化,在flash.display包中,包含了33個類/接口,比起AS2時代的MovieClip,Button,TextField等簡單幾個類來說,是復雜并強大了不少。

Flex 3教程中AS2和AS3可視元素的轉換

1.主要機制的變化

在AS3種,可視元素有很大的變化,在flash.display包中,包含了33個類/接口,比起AS2時代的MovieClip,Button,TextField等簡單幾個類來說,是復雜并強大了不少。(注:下面有的地方簡稱可視元素為元件)
AS3的可視元素使用方法和AS2不同,AS2時代,創建一個可視元素必須通過MovieClip.createEmptyMovie(),MovieClip.createTextField()方法來創建,不方便不說,更重要的是,一個元件從創建時,就被加到了舞臺上,從舞臺上移出后,這個元件就不可用了。而AS3中,你可用new來創建任何可視元素,在需要用的時候把它加到舞臺上,不用的時候移除下來,等到再用的時候,還可以再放上去就是。因此非常方便。由于這個特點,不同swf里面的元件可以相互使用了,比如你在swf1的library里面做了一個圖標,綁定的類是Icon1,你可以把swf1加載到swf2中,然后通過newIcon1()創建一個那個圖標,然后通過addChild()方法把它加到swf2的舞臺上。也許你已經意識到,我們再也不需要蹩腳的共享庫(SharedLibrary)了。

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

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

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

Sprite:最常用的元件,他繼承自DisplayObjectContainer,所以通常用它來做容器或者用來實現可交互的元件。
MovieClip:繼承自Sprite,增加了時間軸(幀的設定)。這個類在AS2時代是使用最多的可視元件類型了,但是到了AS3,它被使用的頻率將會大大減少,因為通常很多元件是不需要時間軸的,Sprite基本上取代了它的重要位置。

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

3.使用注意

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

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

【編輯推薦】

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

 

 

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

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正則表達式

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

單元格可視化語法

2010-07-27 09:37:44

Flex

2009-07-16 14:09:24

Flex3到Flex4

2021-06-26 06:29:14

Vue 2Vue 3開發

2012-05-10 10:55:03

CSS

2012-01-06 13:48:59

flash

2010-08-02 12:44:01

Flex3Flex4

2009-07-03 08:58:22

Flex教程Flex程序

2014-06-30 09:24:48

數據可視化
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区成人 | 一级一级毛片免费看 | 免费观看一级毛片视频 | 中文欧美日韩 | 国内精品久久精品 | 99国内精品久久久久久久 | 亚洲午夜精品久久久久久app | 毛片国产 | 国产亚洲一区精品 | 99热这里有精品 | 成人网视频 | 欧美成人h版在线观看 | 欧美一级全黄 | 免费h视频 | 日本精品一区二区 | 91九色在线观看 | 91tv在线观看 | 精品91久久 | 欧美毛片免费观看 | 亚洲视频二区 | 精品亚洲一区二区三区四区五区高 | 日韩精品久久久久 | 国产精品美女www | 日韩一区三区 | 一区二区av | 91精品国产91久久久久久最新 | 久久草视频 | www.夜夜草| 成人精品久久日伦片大全免费 | 成人午夜精品一区二区三区 | 亚洲视频欧美视频 | 91一区二区三区 | 亚洲午夜电影 | 第四色播日韩第一页 | 精品久久久久久久人人人人传媒 | 国产欧美一区二区三区在线看 | a级黄色毛片免费播放视频 国产精品视频在线观看 | 一区二区成人在线 | 久久国产精品72免费观看 | 日韩中文在线视频 | 久久久久久久久久久久久91 |