顯示物件 DisplayObject 與顯示物件容器 DisplayObjectContainer
 - 顯示物件 (
DisplayObject) 
 - 指可在畫面上顯示內容的物件。所有的顯示物件類別都是 
DisplayObject 類別的子類別,也就是 DisplayObject 類別是顯示物件的最上層類別 (基底類別 base class) 。 
 - 顯示清單 (Display Lists)
 
 - 由畫面上可顯示的物件所組成的樹狀階層結構。「舞台」 (
Stage) 是顯示清單的根 (最外層 / 最高階),而加入「舞台」或是其子系的所有顯示物件,就形成顯示清單,物件須加入顯示清單,才能真正顯示在畫面。 
 - 顯示物件容器 (
DisplayObjectContainer) 
 - 可作為容器一般,通常用來包含子顯示物件,屬於特殊類型的顯示物件。舞台 (
Stage) 算是典型的 DisplayObjectContainer 物件。 
DisplayObject 家族 - 核心 DisplayObject classes
 - DisplayObject
                
                 - StaticText
 - Shape
 - MorphShape
 - Bitmap
 - Video
 - AVM1Movie
 - InteractiveObject
                  
 
 
DisplayObject 類別與物件 - flash.display 套件
DisplayObject 的屬性與方法
 DisplayObject 繼承 EventDispatcher 
 - [屬性]
 
 - 
  
   - x
 
   - 
    
- 物件相對於父輩物件 (容器) 區域的 x 軸座標,以物件註冊點為基準,父物件的左上角座標為 (0,0) 。
 - x:Number [讀寫]
 dis.x=50 //定義 dis 物件的 x 座標為 50 px 。
    
   - y
 
   - 
    
- 物件相對於父輩物件 (容器) 區域的 y 軸座標,以物件註冊點為基準,父物件的左上角座標為 (0,0) 。
 - y:Number [讀寫]
 dis.y=50 //定義 dis 物件的 y 座標為 50 px 。
    
   z 
   - 
    
- 物件相對於 3D 父輩物件 (容器) 空間的 
z 軸座標。數值越大像似距離螢幕越遠,以父物件 3D 透視空間為新座標, x 和 y 座標當然是重新計算。要指出物件的屬性 transform 物件的屬性 matrix3D 物件,應先指定具體的 z 值 。 z:Number [讀寫]。dis.z=50 //定義 dis 物件的 z 座標為 50  。
    
   - rotation
 
   - 
    
- 物件旋轉角度。 0 至 180 之間的數值順時針方向旋轉;0 至 -180 之間的數值逆時針方向旋轉;超過此範圍的值會自動被減去或加上 360 的倍數來計算。
 - rotation:Number [讀寫]
 dis.rotation=-30 //定義 dis 物件逆時針旋轉 30 度。
    
   - rotationX
 
   - 
    
- 物件相對於 3D 父輩物件 (容器) 空間 x 軸的旋轉角度。
 - rotationX:Number [讀寫]
 dis.rotationX=30 //定義 dis 物件依 x 軸順時針旋轉 30 度。
    
   - rotationY
 
   - 
    
- 物件相對於 3D 父輩物件 (容器) 空間 y 軸的旋轉角度。
 - rotationY:Number [讀寫]
 dis.rotationY=30 //定義 dis 物件依 y 軸順時針旋轉 30 度。
    
   - rotationZ
 
   - 
    
- 物件相對於 3D 父輩物件 (容器) 空間 z 軸的旋轉角度。
 - rotationZ:Number [讀寫]
 dis.rotationZ=30 //定義 dis 物件依 z 軸順時針旋轉 30 度。
    
   - scaleX
 
   - 
    
- 物件水平縮放的倍數,以物件註冊點為基準。
 - scaleX:Number [讀寫]
 dis.scaleX=1.2 //定義 dis 物件水平縮放 120% 。
    
   - scaleY
 
   - 
    
- 物件垂直縮放的倍數,以物件註冊點為基準。
 - scaleY:Number [讀寫]
 dis.scaleY=0.8 //定義 dis 物件垂直縮放 80% 。
    
   - scaleZ
 
   - 
    
- 物件深度縮放的倍數,以物件註冊點為基準。
 - scaleZ:Number [讀寫]
 dis.scaleZ=0.5 //定義 dis 物件深度縮放 50% ,視覺上有遠離效果。
    
   - alpha
 
   - 
    
- 物件的透明度。以 0 (完全透明) 到 1 (完全不透明) 的數值表示。
 - alpha:Number [讀寫] ,預設值 1 。
 dis.alpha=0.75 //定義 dis 物件透明度 75% 。
    
   - height
 
   - 
    
- 物件的高度,以像素計算。初始高度一般就是物件的內容的總範圍,無內容物件的高度自動強制為 0 。
 - height:Number [讀寫]
 dis.height=250 // dis 物件高度改變為 250 像素。
    
   - width
 
   - 
    
- 物件的寬度,以像素計算。初始寬度一般就是物件的內容的總範圍,無內容物件的寬度自動強制為 0 。
 - width:Number [讀寫]
 dis.width=250 // dis 物件寬度改變為 250 像素。
    
   - visible
 
   - 
    
- 指出物件是否顯示。不顯示的物件會失去互動功能。
 - visible:Boolean [讀寫] ,預設值為 true 。
 dis.visible=false //定義 dis 物件不顯示。
    
   - stage
 
   - 
    
- 取得物件所在的舞台物件。物件須加入顯示清單才會有舞台。
 - stage:Stage [唯讀]
 dis.x=dis.stage.stageWidth/2 // dis 物件的 x 座標為舞台寬度的一半。
    
   - root
 
   - 
    
- 取得顯示清單結構的最上層物件。
 - root:DisplayObject [唯讀]
 dis.root.x=20 //指定 dis 物件的根物件的 x 座標 20 px 。
    
   - parent
 
   - 
    
- 取得包含此物件的父物件容器。
 - parent:DisplayObjectContainer [唯讀]
 this.parent.parent.alpha=0.8 //指定目前物件的上兩層物件的透明度為 80%。
    
   - mask
 
   - 
    
- 指出物件的遮色片物件,依據 mask 物件的透明度遮蔽物件 (支援半透明遮蔽) 。 mask 物件須加入顯示清單才有效果,一個 mask 物件只能對應一個顯示物件有效。
 - mask:DisplayObject [讀寫]
 dis.mask=mk //指定 mk 物件作為 dis 物件的遮色片。
    
   name 
   - 
    
- 指出實體的名稱,同一層級裡允許兩個物件有相同的名稱,官方文件沒有明確禁止。
 name:String [讀寫]dis.name="plane" //指定 dis 物件的名稱為 plane 。
    
   - mouseX
 
   - 
    
- 取得滑鼠在物件中的 x 軸座標,單位為像素。
 - mouseX:Number [唯讀]
 dis.x=dis.stage.mouseX //以滑鼠在舞台的 x 座標作為 dis 物件的 x 座標。
    
   - mouseY
 
   - 
    
- 取得滑鼠在物件中的 y 軸座標,單位為像素。
 - mouseY:Number [唯讀]
 dis.y=dis.stage.mouseY //以滑鼠在舞台的 y 座標作為 dis 物件的 y 座標。
    
   - scale9Grid
 
   - 
    
- 指出物件九宮格縮放模式所依據的 Rectangle 物件。 Rectangle 物件所定義的矩形區域,會將物件劃分為九宮格來縮放變形,這會保持四個角 (如圓角) 不會因縮放而扭曲。
 - scale9Grid:Rectangle [讀寫]
 dis.scale9Grid=rect // dis 物件依據 rect 物件定義的矩形區域做縮放。
    
   scrollRect- 
    
- 指出物件的矩形顯示區域,以 
Rectangle 物件表示矩形範圍,像加了矩形的遮色片。物件只會在指定區域內顯示,超出的部分可由指定 Rectangle 物件的 x 或 y 屬性值,讓物件像似在矩形區域內捲動出來。 scrollRect:Rectangle [讀寫]dis.scrollRect=rect; // dis 物件裁剪至 rect 物件的矩形範圍內顯示。
    
  
  
 - [方法]
 getBounds()- 取得表示物件四周區域的矩形,以 
Rectangle 物件的位置及寬高表示,位置是由 targetCoordinateSpace 參數指定的物件作為座標參照。 public function getBounds(targetCoordinateSpace:DisplayObject):Rectangledis.getBounds(stage); // 取得 dis 物件相對於舞台的矩形區域座標。
getRect()- 取得表示物件四周區域的矩形,但是不包含越出路徑的筆畫,以 
Rectangle 物件的位置及寬高表示,位置是由 targetCoordinateSpace 參數指定的物件作為座標參照。 public function getRect(targetCoordinateSpace:DisplayObject):Rectangledis.getRect(stage); // 取得 dis 物件相對於舞台的矩形區域座標,但排除越出路徑的筆畫。
hitTestObject()- 判斷物件的矩形範圍是否與參數 
obj 物件的矩形範圍相交 (重疊) 。 public function hitTestObject(obj:DisplayObject):Booleanif(dis.hitTestObject(target)){/*do something*/}; // 判斷 dis 物件是否與 target 物件的矩形範圍重疊。
hitTestPoint()- 判斷物件是否與參數 
x, y 指定的座標點相交 (重疊) 。 x, y 的座標空間為舞台。 public function hitTestPoint(x:Number,y:Number,shapeFlag:Boolean=false):BooleanshapeFlag : 預設值為 false ,以物件矩形範圍作為重疊判斷; true 以物件實際輪廓 (不一定是矩形) 作為判斷。
if(dis.hitTestPoint(100,0,true)){/*do something*/}; // 判斷 dis 物件實際輪廓是否有涵蓋座標點 (100,0) 。
localToGlobal()- 將參數 
point 指定的座標點,由相對於顯示物件 (呼叫此方法) 換算出相對於舞台的座標位置。 public function localToGlobal(point:Point):Pointdis.localToGlobal(pt); //將 pt 於 dis 物件的座標算出舞台的座標。
globalToLocal()- 將參數 
point 指定的座標點,由相對於舞台換算出相對於顯示物件 (呼叫此方法) 的座標位置。 public function globalToLocal(point:Point):Pointdis.globalToLocal(pt); //將 pt 於舞台的座標換算出 dis 物件的座標。
 
InteractiveObject 類別與物件 - flash.display 套件
InteractiveObject 的屬性與方法
 InteractiveObject 繼承 DisplayObject 
 - [屬性]
 
 - 
  
   mouseEnabled 
   - 
    
- 指出物件是否接受使用者滑鼠操作或鍵盤輸入。指定不接受時,物件就不能成為事件目標。此定義不會影響物件的子系物件。
 mouseEnabled:Boolean [讀寫],預設值為 true 。ia.mouseEnabled=false //指定 ia 物件不接受使用者滑鼠操作及鍵盤輸入。
    
  
  
DisplayObjectContainer 類別與物件 - flash.display 套件
DisplayObjectContainer 的屬性與方法
 DisplayObjectContainer 繼承 InteractiveObject 
 - [屬性]
 
 - 
  
   numChildren 
   - 
    
- 取得物件內的子 (系) 物件數量。
 numChildren:int [唯讀]n=con.numChildren // con 物件的子物件數量指定給 n 物件。
    
   mouseChildren 
   - 
    
- 指出物件的所有子系物件是否接受使用者滑鼠操作或鍵盤輸入。指定不接受時,子系物件都不能為事件目標。
 mouseChildren:Boolean [讀寫],預設值為 true 。dis.mouseChildren=false //指定 con 物件的子系物件不接受使用者滑鼠操作或鍵盤輸入。
    
  
  
 - [方法]
 
 - 
  
   - addChild()
 
   - 
    
- 將實體 (參數 child) 加入物件內,成為顯示清單中此物件的子物件,新加入的子物件會在父物件中的最前面 (上方) 。同一個實體當然只能在清單中出現一次,因此,也可用來將一個子物件轉到不同的父物件容器。
 - public function addChild(child:DisplayObject):DisplayObject
 con.addChild(tf) // con 容器物件內加入 tf (實體) 作為子物件。
    
   - addChildAt()
 
   - 
    
- 將實體 (參數 child) 加入物件內,成為顯示清單中此物件的子物件,並可指定以 0 為起始的索引數字 (參數 index) 表示前後位置,數值愈大代表愈前面 (上方) 。
 - public function addChildAt(child:DisplayObject, index:int):DisplayObject
 con.addChildAt(tf,0) // con 容器物件內加入 tf (實體) 作為子物件,並位在最後面。
    
   - removeChild()
 
   - 
    
- 將子物件實體 (參數 child) 從顯示清單移走,不再是該物件的子物件。注意,實體仍存在,並非被刪除,而只是不在顯示清單內。
 - public function removeChild(child:DisplayObject):DisplayObject
 con.removeChild(tf) // 移走 con 容器物件內 tf 子物件。
    
   - removeChildAt()
 
   - 
    
- 將指定索引數字 (參數 index) 的子物件實體 (參數 child) 從顯示清單移走,不再是該物件的子物件。注意,實體仍存在,並非被刪除,而只是不在顯示清單內。
 - public function removeChildAt(index:int):DisplayObject
 con.removeChildAt(0) // 移走 con 容器物件內位置為 0 的子物件。
    
   - getChildAt()
 
   - 
    
- 取得指定索引數字 (參數 index) 的子物件實體。
 - public function getChildAt(index:int):DisplayObject
 con.getChildAt(0).alpah=0.5 // 將 con 容器物件內位置為 0 的子物件透明度定為 0.5 。
    
   - getChildByName()
 
   - 
    
- 取得已有指定 name 屬性名稱 (參數 name) 的子物件實體。此方式執行速度會較 getChildAt() 來得慢。
 - public function getChildByName(name:String):DisplayObject
 tf.name="mail";con.getChildByName("mail").alpha=0.5 // 將 con 容器物件內名稱為 mail 的子物件透明度定為 0.5 。
    
   - getChildIndex()
 
   - 
    
- 取得子物件實體 (參數 child) 的索引數字 (位置) 。
 - public function getChildIndex(child:DisplayObject):int
 var i:int=con.getChildIndex(tf) // 將 con 容器物件內 tf 子物件的索引位置指定給 i 物件。
    
   - setChildIndex()
 
   - 
    
- 設定子物件 (參數 child) 的索引數字 (參數 index) 。
 - public function setChildIndex(child:DisplayObject, index:int):void
 con.setChildIndex(tf,con.numChildren-1) // 將 con 容器物件內 tf 子物件的索引位置改為最前面 (子物件總數 - 1) 。
    
   - swapChildren()
 
   - 
    
- 互換二個子物件 (參數 child1, child2) 的索引數字。
 - public function swapChildren(child1:DisplayObject, child2:DisplayObject):void
 con.swapChildren(c1,c2) // 將 con 容器物件內 c1 及 c2 子物件的索引位置互換。
    
   - swapChildrenAt()
 
   - 
    
- 依據二個索引數字 (參數 index1, index2) 互換子物件位置。
 - public function swapChildrenAt(index1:int, index2:int):void
 con.swapChildrenAt(0,2) // 將 con 容器物件內索引數字為 0 及 2 的子物件互換位置。
    
   contains() 
   - 
    
- 判斷容器物件是否包含參數 child 子物件 (包括顯示清單所有後代) ;參數也可為容器物件本身,不過不論有否加入顯示清單,結果均為 
true (這點有點讓人匪夷所思?) 。 public function contains(child:DisplayObject):Booleanif(con.contains(cd)){/*do something*/} // 判斷 con 容器物件內是否有 cd 子系物件已加入顯示清單。
    
   getObjectsUnderPoint() 
   - 
    
- 取得容器物件內有涵蓋到參數 
point 座標點的子系物件 (所有後代) 陣列。 public function getObjectsUnderPoint(point:Point):Arrayvar onPt:Array=con.getObjectsUnderPoint(pt); // 取得 con 容器物件內有涵蓋到 pt 座標點的子系物件陣列,並指定給 onPt 物件。