套件 | fl.controls.listClasses |
類別 | public class CellRenderer |
繼承 | CellRenderer LabelButton BaseButton UIComponent Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
實作 | ICellRenderer |
子類別 | ImageCell |
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
相關 API 元素
屬性 | 定義自 | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
對此 InteractiveObject 實體目前的輔助功能實作 (AccessibilityImplementation)。 | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
此顯示物件的目前輔助功能選項。 | DisplayObject | ||
alpha : Number
指出所指定物件的 Alpha 透明度值。 | DisplayObject | ||
autoRepeat : Boolean
會取得或設定 Boolean 值,指出當使用者以滑鼠按鈕按住組件時,是否要多次傳送 buttonDown 事件。 | BaseButton | ||
blendMode : String
來自 BlendMode 類別的值,會指定要使用何種混合模式。 | DisplayObject | ||
blendShader : Shader [唯寫]
設定用來混合前景和背景的著色器。 | DisplayObject | ||
buttonMode : Boolean
可指定此 sprite 的按鈕模式。 | Sprite | ||
cacheAsBitmap : Boolean
如果設定為 true,Flash 執行階段會快取顯示物件的內部點陣圖表示法。 | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
如果為非 null,當 cacheAsBitmap 設定為 true 時,這個 Matrix 物件會定義顯示物件的顯示方法。 | DisplayObject | ||
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
contextMenu : NativeMenu
指定與此物件有關聯的快顯選單。 | InteractiveObject | ||
data : Object
會取得或設定 Object,它代表與組件相關聯的資料。 | CellRenderer | ||
doubleClickEnabled : Boolean
會指定物件是否會收到 doubleClick 事件。 | InteractiveObject | ||
dropTarget : DisplayObject [唯讀]
指定要將 sprite 拖曳至或丟棄至哪個顯示物件上。 | Sprite | ||
enabled : Boolean [覆寫]
會取得或設定值,指出組件是否可以接受使用者輸入。 | BaseButton | ||
filters : Array
索引的陣列,其中包含目前和顯示物件相關的每個濾鏡物件。 | DisplayObject | ||
focusEnabled : Boolean
會取得或設定 Boolean 值,指出組件是否可以在使用者按一下之後成為焦點。 | UIComponent | ||
focusManager : IFocusManager
會取得或設定控制此組件及其同輩之焦點的 FocusManager。 | UIComponent | ||
focusRect : Object
會指定這個物件是否會顯示焦點矩形。 | InteractiveObject | ||
graphics : Graphics [唯讀]
指定屬於此 sprite 物件的 Graphics 物件,其中可能會產生向量繪圖命令。 | Sprite | ||
height : Number [覆寫]
會取得或設定組件的高度,以像素為單位。 | UIComponent | ||
hitArea : Sprite
指定用來當作 sprite 作用區域的另一個 sprite。 | Sprite | ||
label : String
會取得或設定組件的文字標籤。 | LabelButton | ||
labelPlacement : String
相對於指定圖示的標籤位置。 | LabelButton | ||
listData : ListData
會取得或設定套用至儲存格的清單屬性 (例如,index 和 selected 值)。 | CellRenderer | ||
loaderInfo : LoaderInfo [唯讀]
會傳回 LoaderInfo 物件,其中包含關於載入此顯示物件所屬之檔案的資訊。 | DisplayObject | ||
mask : DisplayObject
呼叫之顯示物件會以指定的 mask 物件遮蓋。 | DisplayObject | ||
metaData : Object
如果中繼資料是透過 PlaceObject4 標籤與 SWF 檔案中的這個 DisplayObject 實體一同儲存,則會取得 DisplayObject 實體的中繼資料物件。 | DisplayObject | ||
mouseChildren : Boolean
判斷物件的子系是否支援啟用滑鼠或使用者輸入裝置。 | DisplayObjectContainer | ||
mouseEnabled : Boolean
指定此物件是否接收滑鼠或其他使用者輸入及訊息。 | InteractiveObject | ||
mouseFocusEnabled : Boolean
會取得或設定值,指出組件是否可以在使用者按一下之後成為焦點。 | UIComponent | ||
mouseX : Number [唯讀]
指出滑鼠或使用者輸入裝置位置的 x 座標,以像素為單位。 | DisplayObject | ||
mouseY : Number [唯讀]
指出滑鼠或使用者輸入裝置位置的 y 座標,以像素為單位。 | DisplayObject | ||
name : String
指出 DisplayObject 的實體名稱。 | DisplayObject | ||
needsSoftKeyboard : Boolean
指定虛擬鍵盤 (螢幕上的軟體鍵盤) 是否應在此 InteractiveObject 實體接收到焦點時顯示。 | InteractiveObject | ||
numChildren : int [唯讀]
傳回此物件的子系數量。 | DisplayObjectContainer | ||
opaqueBackground : Object
會指定顯示物件是否不透明,並具有特定背景顏色。 | DisplayObject | ||
parent : DisplayObjectContainer [唯讀]
指出包含此顯示物件的 DisplayObjectContainer 物件。 | DisplayObject | ||
root : DisplayObject [唯讀]
對載入之 SWF 檔案的顯示物件而言,root 屬性就是該 SWF 檔案所呈現之顯示清單樹狀結構部分的最上層顯示物件。 | DisplayObject | ||
rotation : Number
指出 DisplayObject 實體的旋轉度數 (從該物件原本方向算起)。 | DisplayObject | ||
rotationX : Number
表示 DisplayObject 實體相對於 3D 父輩容器從原始方向旋轉的 x 軸旋轉 (以度數為單位)。 | DisplayObject | ||
rotationY : Number
表示 DisplayObject 實體相對於 3D 父輩容器從原始方向旋轉的 y 軸旋轉 (以度數為單位)。 | DisplayObject | ||
rotationZ : Number
表示 DisplayObject 實體相對於 3D 父輩容器從原始方向旋轉的 z 軸旋轉 (以度數為單位)。 | DisplayObject | ||
scale9Grid : Rectangle
目前產生效用的縮放格線。 | DisplayObject | ||
scaleX : Number [覆寫]
會將目前組件的寬度乘以縮放比例係數。 | UIComponent | ||
scaleY : Number [覆寫]
會將目前組件的高度乘以縮放比例係數。 | UIComponent | ||
scaleZ : Number
指出從物件註冊點套用的物件深度縮放 (百分比)。 | DisplayObject | ||
scrollRect : Rectangle
顯示物件的捲動矩形範圍。 | DisplayObject | ||
selected : Boolean [覆寫]
會取得或設定 Boolean 值,指出是否已選取目前的儲存格。 | CellRenderer | ||
softKeyboard : String
控制軟體鍵盤的外觀。 | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
定義顯示軟體鍵盤時,應保留於螢幕上的區域 (iOS 未提供)。 | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
控制此 Sprite 的聲音。 | Sprite | ||
stage : Stage [唯讀]
顯示物件的「舞台」。 | DisplayObject | ||
tabChildren : Boolean
判斷物件的子系是否支援啟用定位鍵。 | DisplayObjectContainer | ||
tabEnabled : Boolean
會指定這個物件是否在停駐點順序中。 | InteractiveObject | ||
tabIndex : int
會指定 SWF 檔中的物件停駐點順序。 | InteractiveObject | ||
textField : flash.text:TextField
組件內部文字欄位的參考。 | LabelButton | ||
textSnapshot : flash.text:TextSnapshot [唯讀]
傳回此 DisplayObjectContainer 實體的 TextSnapshot 物件。 | DisplayObjectContainer | ||
toggle : Boolean
會取得或設定 Boolean 值,指出是否可以切換按鈕。 | LabelButton | ||
transform : flash.geom:Transform
這是一個物件,具有和顯示物件的矩陣、顏色轉換和像素邊界有關的屬性。 | DisplayObject | ||
useHandCursor : Boolean
指示當指標滑入 Sprite,且其 buttonMode 屬性設為 true 時,是否要出現指示手掌 (手掌游標) 的 Boolean 值。 | Sprite | ||
visible : Boolean [覆寫]
會取得或設定值,指出目前組件實體是否為可見。 | UIComponent | ||
width : Number [覆寫]
會取得或設定組件的寬度,以像素為單位。 | UIComponent | ||
x : Number [覆寫]
會取得或設定 x 座標,代表組件在其父輩容器內的 x 軸位置。 | UIComponent | ||
y : Number [覆寫]
會取得或設定 y 座標,代表組件在其父輩容器內的 y 軸位置。 | UIComponent | ||
z : Number
表示 DisplayObject 實體相對於 3D 父輩容器的 z 座標位置 (沿著 z 軸)。 | DisplayObject |
方法 | 定義自 | ||
---|---|---|---|
建立新的 CellRenderer 實體。 | CellRenderer | ||
將 DisplayObject 子實體加入至此 DisplayObjectContainer 實體。 | DisplayObjectContainer | ||
將 DisplayObject 子實體加入至此 DisplayObjectContainer 實體。 | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
會在 EventDispatcher 物件註冊事件偵聽程式,以便讓偵聽程式收到事件的通知。 | EventDispatcher | ||
指出安全性限制是否會造成傳回的清單 (可用指定的 point 點呼叫 DisplayObjectContainer.getObjectsUnderPoint() 方法來取得) 省略任何顯示物件。 | DisplayObjectContainer | ||
從此組件實體刪除某種樣式屬性。 | UIComponent | ||
判斷指定的顯示物件是否為 DisplayObjectContainer 實體的子系,或為實體本身。 | DisplayObjectContainer | ||
會將事件傳送到事件流程。 | EventDispatcher | ||
會顯示或隱藏此組件上的焦點指示器。 | UIComponent | ||
會起始立即繪製作業,而不需像 invalidateNow 一樣使所有項目無效化。 | UIComponent | ||
傳回可定義顯示物件區域 (相對於 targetCoordinateSpace 物件的座標系統) 的矩形。 | DisplayObject | ||
傳回存在於指定索引位置的子顯示物件實體。 | DisplayObjectContainer | ||
傳回具有指定名稱的子顯示物件。 | DisplayObjectContainer | ||
傳回 child DisplayObject 實體的索引位置。 | DisplayObjectContainer | ||
會擷取目前成為焦點的物件。 | UIComponent | ||
傳回位於指定點底下,且屬於此 DisplayObjectContainer 實體之子系 (或孫系,以下類推) 的物件陣列。 | DisplayObjectContainer | ||
根據 targetCoordinateSpace 參數所定義的座標系統,並排除形狀上的任何筆畫,傳回可定義顯示物件邊界的矩形。 | DisplayObject | ||
會擷取在組件樣式查閱鏈中設定的樣式屬性。 | UIComponent | ||
[靜態]
會擷取目前組件的預設樣式對應。 | CellRenderer | ||
將 point 物件從「舞台」(全域) 座標轉換成顯示物件的 (區域) 座標。 | DisplayObject | ||
將二維點從「舞台」(全域) 座標轉換為三維顯示物件的 (區域) 座標。 | DisplayObject | ||
會檢查 EventDispatcher 物件是否有對特定的事件類型註冊偵聽程式。 | EventDispatcher | ||
指出物件是否有已定義的指定屬性。 | Object | ||
評估顯示物件的範圍框,看它是否與 obj 顯示物件的範圍框重疊或相交。 | DisplayObject | ||
評估顯示物件,看它是否與 x 和 y 參數所指定的點重疊或相交。 | DisplayObject | ||
會將屬性標示為無效,除非另有指定,否則會在下一個影格上重繪組件。 | UIComponent | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
將三維顯示物件的 (區域) 座標的三維點轉換為「舞台」(全域) 座標中的二維點。 | DisplayObject | ||
將 point 物件從顯示物件的 (區域) 座標轉換成「舞台」(全域) 座標。 | DisplayObject | ||
[靜態]
會將多種類別中的樣式合併為一個物件。 | UIComponent | ||
將組件移至其父輩內指定的位置。 | UIComponent | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
將指定的 child DisplayObject 實體從 DisplayObjectContainer 實體的子清單中移除。 | DisplayObjectContainer | ||
從 DisplayObjectContainer 子清單中的指定索引位置移除子 DisplayObject。 | DisplayObjectContainer | ||
將所有 child DisplayObject 實體從 DisplayObjectContainer 實體的子清單中移除。 | DisplayObjectContainer | ||
會從 EventDispatcher 物件移除偵聽程式。 | EventDispatcher | ||
升起顯示虛擬鍵盤。 | InteractiveObject | ||
變更顯示物件容器中現有子系的位置。 | DisplayObjectContainer | ||
將焦點設定到此組件。 | UIComponent | ||
經由 ActionScript 設定滑鼠狀態。 | BaseButton | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
[覆寫]
會指定顯示資料時要使用的尺寸。 | CellRenderer | ||
針對此組件實體設定樣式屬性。 | UIComponent | ||
讓使用者拖曳指定的 sprite。 | Sprite | ||
讓使用者將指定的 Sprite 拖曳至觸控裝置上。 | Sprite | ||
遞迴停止執行所有 MovieClips 的時間軸根源於此物件。 | DisplayObjectContainer | ||
結束 startDrag() 方法。 | Sprite | ||
結束觸控裝置使用的 startTouchDrag() 方法。 | Sprite | ||
替換兩個指定子物件的 z 順序 (深度階層,由前至後順序)。 | DisplayObjectContainer | ||
在子清單的兩個指定索引位置,替換子物件的 z 順序 (深度階層,由前至後順序)。 | DisplayObjectContainer | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會確認此物件之屬性和版面的有效性並加以更新,並在必要時重繪此物件。 | UIComponent | ||
會傳回指定之物件的基本值。 | Object | ||
檢查此 EventDispatcher 物件是否已註冊事件偵聽程式,或者此物件的任何祖系已為特定事件類型註冊事件偵聽程式。 | EventDispatcher |
樣式可分為一般樣式及與特定主題關聯的樣式兩種。如果是一般樣式,可以與任何主題搭配使用。如果是與特定主題關聯的樣式,只有在您的應用程式使用特定主題時才能使用該樣式。
樣式 | 說明 | 定義自 | ||
---|---|---|---|---|
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕處於停用狀態時,用來作為圖示的類別名稱. | LabelButton | |||
disabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且停用時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_disabledSkin 。 | CellRenderer | ||
disabledTextFormat | 類型: flash.text.TextFormat 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕停用時用來繪製組件標籤的 TextFormat 物件。 預設值為 null 。 | CellRenderer | ||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且按下滑鼠鈕時,用來作為圖示的類別名稱. | LabelButton | |||
downSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且按下滑鼠鈕時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_downSkin 。 | CellRenderer | ||
類型: Boolean 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 指出是否要使用內嵌的字體外框來呈現文字欄位. | LabelButton | |||
類型: Number 格式: Length 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 分開組件外邊框與焦點指示器的外邊緣的邊框 (以像素計). | UIComponent | |||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來顯示焦點指示器的外觀元素. | UIComponent | |||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕不是處於選取狀態並且滑鼠不是位於按鈕上方時,用來作為圖示的類別名稱. | LabelButton | |||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且滑鼠位於此組件上方時,用來作為圖示的類別名稱. | LabelButton | |||
overSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且滑鼠位於此組件上方時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_overSkin 。 | CellRenderer | ||
類型: Number 格式: Time 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 在傳送第二個 buttonDown 事件之前,第一個 buttonDown 事件傳送之後要等候的毫秒數. | LabelButton | |||
類型: Number 格式: Time 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 在發生以 repeatDelay 樣式指定的延遲之後,所傳送的 buttonDown 事件前後的間隔,以毫秒為單位. | LabelButton | |||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕處於選取狀態並且停用時,用來作為圖示的類別名稱. | LabelButton | |||
selectedDisabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕處於選取狀態並且停用時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_selectedDisabledSkin 。 | CellRenderer | ||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕處於選取狀態並且按下滑鼠鈕時,用來作為圖示的類別名稱. | LabelButton | |||
selectedDownSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕處於選取狀態並且按下滑鼠鈕時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_selectedDownSkin 。 | CellRenderer | ||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕處於選取狀態並且滑鼠位於此組件上方時,用來作為圖示的類別名稱. | LabelButton | |||
selectedOverSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕處於選取狀態並且滑鼠位於此組件上方時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_selectedOverSkin 。 | CellRenderer | ||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕處於選取狀態並且沒有按下滑鼠鈕時,用來作為圖示的類別名稱. | LabelButton | |||
selectedUpSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕處於選取狀態並且滑鼠不是位於組件上方時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_selectedUpSkin 。 | CellRenderer | ||
textFormat | 類型: flash.text.TextFormat 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來繪製組件標籤的 TextFormat 物件。 預設值為 null 。 | CellRenderer | ||
textPadding | 類型: Number 格式: Length 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 介於文字與組件邊緣之間的距離,以及介於文字與圖示之間的距離,以像素為單位。 預設值為 5 。 | CellRenderer | ||
類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當切換按鈕不是處於選取狀態並且滑鼠不是位於按鈕上方時,用來作為圖示的類別名稱. | LabelButton | |||
upSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕不是處於選取狀態並且滑鼠不是位於組件上方時,用來作為背景與邊框之外觀元素的類別名稱。 預設值為 CellRenderer_upSkin 。 | CellRenderer |
data | 屬性 |
data:Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定 Object,它代表與組件相關聯的資料。 設定此值時,就會儲存組件資料,而且包含的組件就會無效化。 接著,就會自動重新繪製無效的組件。
data 屬性代表在 DataProvider 中包含儲存格所代表之項目的物件。 一般而言,data 屬性包含標準屬性,並根據組件類型而定。 在 List 或 ComboBox 組件的 CellRenderer 中,資料包括 label、icon 和 data 屬性;TileList:label 和 source 屬性;DataGrid 儲存格則包含每一欄的值。 data 屬性也可以包含與特定儲存格相關的使用者指定資料。 使用者可以擴充組件的 CellRenderer,以在儲存格呈現中使用不同的資料屬性。
此外,您可以使用 labelField
、labelFunction
、iconField
、iconFunction
、sourceField
和 sourceFunction
元素,指定要使用哪些屬性來分別繪製標籤、圖示和來源。
實作
public function get data():Object
public function set data(value:Object):void
listData | 屬性 |
selected | 屬性 |
CellRenderer | () | 建構函式 |
public function CellRenderer()
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
建立新的 CellRenderer 實體。
getStyleDefinition | () | 方法 |
public static function getStyleDefinition():Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會擷取目前組件的預設樣式對應。 視組件使用的樣式而定,樣式對應會包含適用於組件的類型。 例如,disabledTextFormat
樣式會包含 null
值或 TextFormat 物件。 您可以使用這些樣式,並針對目前的組件呼叫 setStyle()
。 下列程式碼會覆寫指定組件上預設的 disabledTextFormat
樣式:
componentInstance.setStyle("disabledTextFormat", new TextFormat());
Object — 預設的樣式物件。
|
相關 API 元素
範例 ( 如何使用本範例 )
import fl.controls.*; import fl.containers.*; import fl.controls.listClasses.*; import fl.controls.dataGridClasses.*; import fl.controls.progressBarClasses.*; import fl.core.UIComponent; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem( { label: "BaseScrollPane", data:BaseScrollPane } ); dp.addItem( { label: "Button", data:Button } ); dp.addItem( { label: "CellRenderer", data:CellRenderer } ); dp.addItem( { label: "CheckBox", data:CheckBox } ); dp.addItem( { label: "ColorPicker", data:ColorPicker } ); dp.addItem( { label: "ComboBox", data:ComboBox } ); dp.addItem( { label: "DataGrid", data:DataGrid } ); dp.addItem( { label: "HeaderRenderer", data:HeaderRenderer } ); dp.addItem( { label: "ImageCell", data:ImageCell } ); dp.addItem( { label: "IndeterminateBar",data:IndeterminateBar } ); dp.addItem( { label: "Label", data:Label } ); dp.addItem( { label: "List", data:List } ); dp.addItem( { label: "NumericStepper", data:NumericStepper } ); dp.addItem( { label: "ProgressBar", data:ProgressBar } ); dp.addItem( { label: "RadioButton", data:RadioButton } ); dp.addItem( { label: "ScrollPane", data:ScrollPane } ); dp.addItem( { label: "Slider", data:Slider } ); dp.addItem( { label: "TextArea", data:TextArea } ); dp.addItem( { label: "TextInput", data:TextInput } ); dp.addItem( { label: "TileList", data:TileList } ); dp.addItem( { label: "UILoader", data:UILoader } ); dp.addItem( { label: "UIComponent", data:UIComponent } ); var cb:ComboBox = new ComboBox(); cb.move(10,10); cb.setSize(300,25); cb.prompt = "Select a component to view its styles"; cb.rowCount = 12; cb.dataProvider = dp; cb.addEventListener(Event.CHANGE, showStyleDefinition); addChild(cb); var dg:DataGrid = new DataGrid(); dg.setSize(425,300); dg.move(10,50); dg.columns = [ new DataGridColumn("StyleName"), new DataGridColumn("DefaultValue") ]; addChild(dg); function showStyleDefinition(e:Event):void { var componentClass:Class = e.target.selectedItem.data as Class; var styles:Object = componentClass["getStyleDefinition"].call(this); trace(styles.toString()); var styleData:DataProvider = new DataProvider(); for(var i:* in styles) { trace(i + " : " + styles[i]); styleData.addItem( { StyleName:i, DefaultValue:styles[i] } ); } styleData.sortOn("StyleName"); dg.dataProvider = styleData; }
setSize | () | 方法 |
若要執行範例,請遵循下列步驟:
- 將 TileList 組件加入元件庫。
- 建立名為 "BlueBackground" 的新元件,並在其元件屬性中核取「匯出給 ActionScript 使用」方塊。 保留類別名稱 "BlueBackground"。
- 建立名為 "OrangeBackground" 的新元件,並在其元件屬性中核取「匯出給 ActionScript 使用」方塊。 保留類別名稱 "OrangeBackground"。
- 建立名為 "GreenBackground" 的新元件,並在其元件屬性中核取「匯出給 ActionScript 使用」方塊。 保留類別名稱 "GreenBackground"。
- 在每個元件中建立寬 10 像素、高 10 像素的矩形,其顏色即元件名稱所指的顏色。 讓它留在 x 座標 0 和 y 座標 0 的位置上不動。
- 將此程式碼另存為 CellRendererExample.as,與 FLA 檔放在同一個目錄中。
- 將 FLA 檔中的 Document 類別設定為 CellRendererExample。
package { import fl.controls.TileList; import fl.core.UIComponent; import fl.data.DataProvider; import fl.events.ListEvent; import flash.display.Sprite; import flash.events.Event; public class CellRendererExample extends Sprite { public function CellRendererExample() { var dp:DataProvider = new DataProvider(); var totalEntries:uint = 42; var i:uint; for(i=0; i<totalEntries; i++) { dp.addItem( { label:"Item "+i } ); } var myTileList = new TileList(); myTileList.dataProvider = dp; myTileList.allowMultipleSelection = true; myTileList.columnWidth = 125; myTileList.rowHeight = 25; myTileList.columnCount = 3; myTileList.rowCount = 6; myTileList.move(10,10); myTileList.setStyle('cellRenderer', MyRenderer); myTileList.addEventListener(ListEvent.ITEM_CLICK, onClick); addChild(myTileList); } private function onClick(e:ListEvent):void { var cr:MyRenderer = e.target.itemToCellRenderer(e.item) as MyRenderer; trace(cr.customProperty); } } } import fl.controls.listClasses.CellRenderer; class MyRenderer extends CellRenderer { public var customProperty:String = "foo"; public function MyRenderer() { var originalStyles:Object = CellRenderer.getStyleDefinition(); setStyle("upSkin",BlueBackground); setStyle("downSkin",GreenBackground); setStyle("overSkin",OrangeBackground); setStyle("selectedUpSkin",originalStyles.selectedUpSkin); setStyle("selectedDownSkin",originalStyles.selectedDownSkin); setStyle("selectedOverSkin",originalStyles.selectedOverSkin); } }
Tue Jun 12 2018, 03:47 PM Z