ActionScript 3.0 顯示物件(DisplayObject)與顯示物件容器(DisplayObjectContainer)
ActionScript 3.0 的顯示最上層是舞台(Stage),然後是文件類別的實體,往下是則可以顯示的顯示物件或者顯示物件容器,大致如圖一所示。顯示物件容器本身也是一種顯示物件,只不過它可以再包含其他的顯示物件在其中,而成為一個顯示物件列示(display list);而單純的顯示物件就無法再含有其他物件。例如:Shape 是顯示物件,MoiveClip、Sprite 是顯示物件容器。

任何顯示物都可以透過 stage 屬性來取得舞台物件。以下的程式範例:簡單說明如何使用顯示物件及顯示物件容器。
package jason.tutorial.actionscript
{
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.Shape;
/**
* @author JASON
*/
public class Document extends MovieClip // 這是文件類別
{
public function Document() //建構元
{
// 建立一個名為 container 的顯示物件容器
// 自建一個 Container Class 且必須先和一個已存在的影片片段結合
var container:Container=new Container();
addChild(container); //容器加到主影片成為子物件
container.x=(container.stage.stageWidth-container.width)/2; //在舞台居中
container.y=(container.stage.stageHeight-container.height)/2;
// 直接畫一個圓的形狀
var circle:Shape=new Shape();
container.addChild(circle); //加成容器的子物件
circle.graphics.clear();
circle.graphics.beginFill(0x551188);
circle.graphics.drawCircle(100,100, 50);
circle.graphics.endFill();
// 用已存在元件庫的影片片段生成 container 的子顯示物件
var star:Star=new Star();
container.addChild(star);
star.x=330;
star.y=120;
}
}
}
然後點下Flash 選單的控制/測試影片,就可看到類似以下的結果。

(圖二)
留言
張貼留言