套件 | fl.controls |
類別 | public class ComboBox |
繼承 | ComboBox UIComponent Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
實作 | IFocusManagerComponent |
語言版本: | 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 | ||
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 | ||
dataProvider : DataProvider
會取得或設定要檢視之項目清單的資料模型。 | ComboBox | ||
doubleClickEnabled : Boolean
會指定物件是否會收到 doubleClick 事件。 | InteractiveObject | ||
dropdown : List [唯讀]
會取得 ComboBox 組件所包含之 List 組件的參考。 | ComboBox | ||
dropdownWidth : Number
會以像素為單位,取得或設定下拉式清單的最大寬度。 | ComboBox | ||
dropTarget : DisplayObject [唯讀]
指定要將 sprite 拖曳至或丟棄至哪個顯示物件上。 | Sprite | ||
editable : Boolean
會取得或設定 Boolean 值,指出 ComboBox 組件為可編輯或是唯讀。 | ComboBox | ||
enabled : Boolean
會取得或設定值,指出組件是否可以接受使用者互動。 | UIComponent | ||
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 | ||
labelField : String
會取得或設定 dataProvider 物件中,要顯示為 TextInput 欄位及下拉式清單之標籤的欄位名稱。 | ComboBox | ||
labelFunction : Function
會取得或設定要用來取得項目標籤的函數。 | ComboBox | ||
length : int [唯讀]
會取得清單中項目的數量。 | ComboBox | ||
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 | ||
prompt : String
會取得或設定 ComboBox 組件的提示。 | ComboBox | ||
restrict : String
會取得或設定使用者可以在文字欄位中輸入的字元。 | ComboBox | ||
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 | ||
rowCount : uint
會取得或設定沒有捲軸的下拉式清單中所能顯示的最大列數。 | ComboBox | ||
scale9Grid : Rectangle
目前產生效用的縮放格線。 | DisplayObject | ||
scaleX : Number [覆寫]
會將目前組件的寬度乘以縮放比例係數。 | UIComponent | ||
scaleY : Number [覆寫]
會將目前組件的高度乘以縮放比例係數。 | UIComponent | ||
scaleZ : Number
指出從物件註冊點套用的物件深度縮放 (百分比)。 | DisplayObject | ||
scrollRect : Rectangle
顯示物件的捲動矩形範圍。 | DisplayObject | ||
selectedIndex : int
會取得或設定在單選清單中選取之項目的索引。 | ComboBox | ||
selectedItem : Object
會取得或設定下拉式清單中選取的項目值。 | ComboBox | ||
selectedLabel : String [唯讀]
會取得顯示於 ComboBox 組件之 TextInput 部分中的字串。 | ComboBox | ||
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 | ||
text : String
會取得或設定可編輯之 ComboBox 組件中,文字方塊所包含的文字。 | ComboBox | ||
textField : fl.controls:TextInput [唯讀]
會取得 ComboBox 組件所包含之 TextInput 組件的參考。 | ComboBox | ||
textSnapshot : flash.text:TextSnapshot [唯讀]
傳回此 DisplayObjectContainer 實體的 TextSnapshot 物件。 | DisplayObjectContainer | ||
transform : flash.geom:Transform
這是一個物件,具有和顯示物件的矩陣、顏色轉換和像素邊界有關的屬性。 | DisplayObject | ||
useHandCursor : Boolean
指示當指標滑入 Sprite,且其 buttonMode 屬性設為 true 時,是否要出現指示手掌 (手掌游標) 的 Boolean 值。 | Sprite | ||
value : String [唯讀]
會取得可編輯 ComboBox 組件中項目的標籤。 | ComboBox | ||
visible : Boolean [覆寫]
會取得或設定值,指出目前組件實體是否為可見。 | UIComponent | ||
width : Number [覆寫]
會取得或設定組件的寬度,以像素為單位。 | UIComponent | ||
x : Number [覆寫]
會取得或設定 x 座標,代表組件在其父輩容器內的 x 軸位置。 | UIComponent | ||
y : Number [覆寫]
會取得或設定 y 座標,代表組件在其父輩容器內的 y 軸位置。 | UIComponent | ||
z : Number
表示 DisplayObject 實體相對於 3D 父輩容器的 z 座標位置 (沿著 z 軸)。 | DisplayObject |
方法 | 定義自 | ||
---|---|---|---|
ComboBox()
建立新的 ComboBox 組件實體。 | ComboBox | ||
將 DisplayObject 子實體加入至此 DisplayObjectContainer 實體。 | DisplayObjectContainer | ||
將 DisplayObject 子實體加入至此 DisplayObjectContainer 實體。 | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
會在 EventDispatcher 物件註冊事件偵聽程式,以便讓偵聽程式收到事件的通知。 | EventDispatcher | ||
將某一項目附加至項目清單的結尾。 | ComboBox | ||
會將項目插入清單的指定索引位置。 | ComboBox | ||
指出安全性限制是否會造成傳回的清單 (可用指定的 point 點呼叫 DisplayObjectContainer.getObjectsUnderPoint() 方法來取得) 省略任何顯示物件。 | DisplayObjectContainer | ||
從此組件實體刪除某種樣式屬性。 | UIComponent | ||
關閉下拉式清單。 | ComboBox | ||
判斷指定的顯示物件是否為 DisplayObjectContainer 實體的子系,或為實體本身。 | DisplayObjectContainer | ||
會將事件傳送到事件流程。 | EventDispatcher | ||
會顯示或隱藏此組件上的焦點指示器。 | UIComponent | ||
會起始立即繪製作業,而不需像 invalidateNow 一樣使所有項目無效化。 | UIComponent | ||
傳回可定義顯示物件區域 (相對於 targetCoordinateSpace 物件的座標系統) 的矩形。 | DisplayObject | ||
傳回存在於指定索引位置的子顯示物件實體。 | DisplayObjectContainer | ||
傳回具有指定名稱的子顯示物件。 | DisplayObjectContainer | ||
傳回 child DisplayObject 實體的索引位置。 | DisplayObjectContainer | ||
會擷取目前成為焦點的物件。 | UIComponent | ||
會擷取位於指定索引的項目。 | ComboBox | ||
傳回位於指定點底下,且屬於此 DisplayObjectContainer 實體之子系 (或孫系,以下類推) 的物件陣列。 | DisplayObjectContainer | ||
根據 targetCoordinateSpace 參數所定義的座標系統,並排除形狀上的任何筆畫,傳回可定義顯示物件邊界的矩形。 | DisplayObject | ||
會擷取在組件樣式查閱鏈中設定的樣式屬性。 | UIComponent | ||
[靜態]
會擷取目前組件的預設樣式對應。 | ComboBox | ||
將 point 物件從「舞台」(全域) 座標轉換成顯示物件的 (區域) 座標。 | DisplayObject | ||
將二維點從「舞台」(全域) 座標轉換為三維顯示物件的 (區域) 座標。 | DisplayObject | ||
會檢查 EventDispatcher 物件是否有對特定的事件類型註冊偵聽程式。 | EventDispatcher | ||
指出物件是否有已定義的指定屬性。 | Object | ||
評估顯示物件的範圍框,看它是否與 obj 顯示物件的範圍框重疊或相交。 | DisplayObject | ||
評估顯示物件,看它是否與 x 和 y 參數所指定的點重疊或相交。 | DisplayObject | ||
會將屬性標示為無效,除非另有指定,否則會在下一個影格上重繪組件。 | UIComponent | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
會擷取字串,輸出器會根據 labelField 和 labelFunction 屬性所指定的資料物件顯示此字串。 | ComboBox | ||
將三維顯示物件的 (區域) 座標的三維點轉換為「舞台」(全域) 座標中的二維點。 | DisplayObject | ||
將 point 物件從顯示物件的 (區域) 座標轉換成「舞台」(全域) 座標。 | DisplayObject | ||
[靜態]
會將多種類別中的樣式合併為一個物件。 | UIComponent | ||
將組件移至其父輩內指定的位置。 | UIComponent | ||
開啟下拉式清單。 | ComboBox | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
從清單移除所有項目。 | ComboBox | ||
將指定的 child DisplayObject 實體從 DisplayObjectContainer 實體的子清單中移除。 | DisplayObjectContainer | ||
從 DisplayObjectContainer 子清單中的指定索引位置移除子 DisplayObject。 | DisplayObjectContainer | ||
將所有 child DisplayObject 實體從 DisplayObjectContainer 實體的子清單中移除。 | DisplayObjectContainer | ||
會從 EventDispatcher 物件移除偵聽程式。 | EventDispatcher | ||
會移除清單中的指定項目。 | ComboBox | ||
移除位於指定索引位置的項目。 | ComboBox | ||
會以另一個項目取代位於指定索引位置的項目。 | ComboBox | ||
升起顯示虛擬鍵盤。 | InteractiveObject | ||
變更顯示物件容器中現有子系的位置。 | DisplayObjectContainer | ||
將焦點設定到此組件。 | UIComponent | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
會將組件設定為指定的寬度和高度。 | UIComponent | ||
針對此組件實體設定樣式屬性。 | UIComponent | ||
會排序目前資料提供者的元素。 | ComboBox | ||
會依據目前資料提供者的一個或多個欄位,排序此資料提供者的元素。 | ComboBox | ||
讓使用者拖曳指定的 sprite。 | Sprite | ||
讓使用者將指定的 Sprite 拖曳至觸控裝置上。 | Sprite | ||
遞迴停止執行所有 MovieClips 的時間軸根源於此物件。 | DisplayObjectContainer | ||
結束 startDrag() 方法。 | Sprite | ||
結束觸控裝置使用的 startTouchDrag() 方法。 | Sprite | ||
替換兩個指定子物件的 z 順序 (深度階層,由前至後順序)。 | DisplayObjectContainer | ||
在子清單的兩個指定索引位置,替換子物件的 z 順序 (深度階層,由前至後順序)。 | DisplayObjectContainer | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會確認此物件之屬性和版面的有效性並加以更新,並在必要時重繪此物件。 | UIComponent | ||
會傳回指定之物件的基本值。 | Object | ||
檢查此 EventDispatcher 物件是否已註冊事件偵聽程式,或者此物件的任何祖系已為特定事件類型註冊事件偵聽程式。 | EventDispatcher |
事件 | 摘要 | 定義自 | ||
---|---|---|---|---|
[廣播事件] 當 Flash Player 或 AIR 應用程式取得作業系統焦點並成為作用中時傳送。 | EventDispatcher | |||
當顯示物件加入顯示清單中時傳送。 | DisplayObject | |||
會在顯示物件加入舞台上的顯示清單時,以直接或是透過加入包含該顯示物件之子樹狀結構的方式傳送。 | DisplayObject | |||
當使用者變更 ComboBox 組件中的選取項目時就會傳送,或者如果能編輯 ComboBox 組件,則使用者每次於文字欄位中輸入按鍵動作時都會傳送。 | ComboBox | |||
當使用者從文字快顯選單中選取「清除」(或「刪除」) 時傳送。 | InteractiveObject | |||
會當使用者在相同的 InteractiveObject 上方按下並放開使用者的指向裝置主按鈕時傳送。 | InteractiveObject | |||
當下拉式清單因為任何原因而關閉時傳送。 | ComboBox | |||
當使用者手勢在 AIR 應用程式中觸發與此互動式物件相關聯的快顯選單時傳送。 | InteractiveObject | |||
當使用者針對複製作業啟動平台特有的快速鍵組合或從文字快顯選單中選取「複製」時傳送。 | InteractiveObject | |||
當使用者針對剪下作業啟動平台特有的快速鍵組合或從文字快顯選單中選取「剪下」時傳送。 | InteractiveObject | |||
[廣播事件] 當 Flash Player 或 AIR 應用程式失去作業系統焦點並成為非作用中時傳送。 | EventDispatcher | |||
在 InteractiveObject 物件的 doubleClickEnabled 旗標設為 true 的情況下,當使用者在相同的物件上方連續兩次快速按下並放開指標裝置主要按鈕時傳送。 | InteractiveObject | |||
當 editable 屬性設定為 true,而且使用者在可編輯的文字欄位中輸入期間按下 Enter 鍵時傳送。 | ComboBox | |||
[廣播事件] 當播放磁頭進入新影格時傳送。 | DisplayObject | |||
[廣播事件] 當播放磁頭結束目前影格時傳送。 | DisplayObject | |||
當顯示物件取得焦點之後傳送。 | InteractiveObject | |||
當顯示物件失去焦點時傳送。 | InteractiveObject | |||
[廣播事件] 在影格顯示物件的建構函式執行之後,且影格指令碼執行之前傳送。 | DisplayObject | |||
當使用者沿著觸控面與 InteractiveObject 實體建立接觸點 (例如沿著 Apple TV 的 Siri Remote 觸控面點選),某些裝置可能也會將此接觸解譯為數個觸控事件的組合。 | InteractiveObject | |||
當使用在觸控裝置上的同一個 InteractiveObject 實體上按下兩個接觸點後送出 (例如在行動電話或平板電腦觸控螢幕的顯示物件上方,以兩支手指按下後鬆開)。 | InteractiveObject | |||
當使用者在觸控裝置上,將接觸點移動到 InteractiveObject 實體上方後傳送 (例如,在行動電話或平板電腦觸控螢幕的顯示物件上,由左向右移動手指)。 | InteractiveObject | |||
當使用者在 InteractiveObject 實體的接觸點上做出旋轉手勢後傳送 (例如兩指觸摸行動電話或平板電腦的觸控螢幕,然後手指在顯示物件上旋轉)。 | InteractiveObject | |||
當使用者在與 InteractiveObject 實體的某個接觸點上做出揮動手勢後傳送 (例如,三指併在一起觸碰行動電話或平板電腦的觸控螢幕,然後在顯示物件上快速平行移動手指)。 | InteractiveObject | |||
當使用者與 InteractiveObject 實體建立接觸點,然後在觸控裝置上點一下後送出 (例如,將多根手指放到行動電話或平板電腦觸控螢幕的顯示物件上以開啟選單,然後其中一根手點一下,選取選單項目)。 | InteractiveObject | |||
當使用者在 InteractiveObject 實體的某個接觸點上做出放大縮小手勢後傳送 (例如兩指併在一起觸摸行動電話或平板電腦的觸控螢幕,然後手指在顯示物件上快速張開)。 | InteractiveObject | |||
在組件的可見性從可見變更為隱藏之後傳送。 | UIComponent | |||
這個事件會送出至任何支援 IME 內嵌輸入的用戶端應用程式。 | InteractiveObject | |||
會定義 itemRollOut 事件物件的 type 屬性值。 | ComboBox | |||
會定義 itemRollOver 事件物件的 type 屬性值。 | ComboBox | |||
會當使用者按下按鍵時傳送。 | InteractiveObject | |||
當使用者嘗試使用鍵盤瀏覽變更焦點時傳送。 | InteractiveObject | |||
會當使用者放開按鍵時傳送。 | InteractiveObject | |||
當使用者在相同的 InteractiveObject 上方按下並放開使用者的指向裝置中間按鈕時傳送。 | InteractiveObject | |||
當使用者將指向裝置的中間按鈕移至 InteractiveObject 實體上方按下時傳送。 | InteractiveObject | |||
當使用者將指向裝置按鈕移至 InteractiveObject 實體上方放開時傳送。 | InteractiveObject | |||
當使用者將指向裝置按鈕移至 InteractiveObject 實體上方按下時傳送。 | InteractiveObject | |||
會當使用者嘗試使用指向裝置變更焦點時傳送。 | InteractiveObject | |||
會當指向裝置停在 InteractiveObject 上方的情況下使用者將其移動時傳送。 | InteractiveObject | |||
會當使用者將指向裝置移開 InteractiveObject 實體時傳送。 | InteractiveObject | |||
會當使用者將指向裝置移至 InteractiveObject 實體上方時傳送。 | InteractiveObject | |||
當使用者將指向裝置按鈕移至 InteractiveObject 實體上方放開時傳送。 | InteractiveObject | |||
當滑鼠滾輪在 InteractiveObject 實體上方轉動時傳送。 | InteractiveObject | |||
在移動組件之後傳送。 | UIComponent | |||
當使用者釋放手勢時,由拖曳初始程式 InteractiveObject 傳送。 | InteractiveObject | |||
已在目標 InteractiveObject 上放下拖曳的物件,而且已呼叫 DragManager.acceptDragDrop() 接受該放開的資料時,由此目標 InteractiveObject 傳送。 | InteractiveObject | |||
當手勢進入 InteractiveObject 的邊界時,由此 InteractiveObject 傳送。 | InteractiveObject | |||
當手勢離開 InteractiveObject 的邊界時,由此 InteractiveObject 傳送。 | InteractiveObject | |||
當拖曳手勢還留在 InteractiveObject 的邊界內,由此 InteractiveObject 持續傳送。 | InteractiveObject | |||
在呼叫 DragManager.doDrag() 進行拖曳作業初期,由指定做為拖曳初始程式的 InteractiveObject 傳送。 | InteractiveObject | |||
在呼叫 DragManager.doDrag() 進行拖曳作業期間,由指定做為拖曳初始程式的 InteractiveObject 傳送。 | InteractiveObject | |||
當使用者按一下下拉式按鈕以顯示下拉式清單時傳送。 | ComboBox | |||
當使用者針對貼上作業啟動平台特有的快速鍵組合或從文字快顯選單中選取「貼上」時傳送。 | InteractiveObject | |||
在使用者將作用中觸控筆往下移至超過螢幕鄰近偵測邊框時傳送。 | InteractiveObject | |||
在使用者將作用中觸控筆提到螢幕鄰近偵測邊框時傳送。 | InteractiveObject | |||
在使用者將作用中觸控筆移到螢幕上方,而其餘仍在鄰近偵測邊框內時傳送。 | InteractiveObject | |||
在使用者將作用中觸控筆移出這個 InteractiveObject 之外,而其餘仍在螢幕的鄰近偵測邊框內時傳送。 | InteractiveObject | |||
在使用者直接將作用中觸控筆移到這個 InteractiveObject 上方,而其餘仍在螢幕的鄰近偵測邊框內時傳送。 | InteractiveObject | |||
在使用者將作用中觸控筆移出這個 InteractiveObject 及其任一子系之外,而其餘仍在螢幕的鄰近偵測邊框內時傳送。 | InteractiveObject | |||
在使用者透過這個 InteractiveObject,從顯示清單中後代的物件樹狀結構之外移動作用中觸控筆時傳送 (而其餘仍在螢幕的鄰近偵測邊框內)。 | InteractiveObject | |||
當使用者第一次按下 InteractiveObject 實體上方的按鈕,然後將指向裝置滑出 InteractiveObject 實體之後即放開指向裝置上的按鈕時傳送。 | InteractiveObject | |||
會當顯示物件將要從顯示清單移除時傳送。 | DisplayObject | |||
會在顯示物件即將從顯示清單移除時,以直接或是透過移除包含該顯示物件之子樹狀結構的方式傳送。 | DisplayObject | |||
[廣播事件] 當顯示清單將要更新和顯示時傳送。 | DisplayObject | |||
在調整組件大小之後傳送。 | UIComponent | |||
當使用者在相同的 InteractiveObject 上方按下並放開使用者的指向裝置右邊按鈕時傳送。 | InteractiveObject | |||
當使用者將指向裝置按鈕移至 InteractiveObject 實體上方按下時傳送。 | InteractiveObject | |||
當使用者將指向裝置按鈕移至 InteractiveObject 實體上方放開時傳送。 | InteractiveObject | |||
會當使用者將指向裝置移開 InteractiveObject 實體時傳送。 | InteractiveObject | |||
會當使用者將指向裝置移至 InteractiveObject 實體上方時傳送。 | InteractiveObject | |||
當使用者捲動 ComboBox 組件的下拉式清單時傳送。 | ComboBox | |||
當使用者針對全選作業啟動平台特有的快速鍵組合或從文字快顯選單中選取「全選」時傳送。 | InteractiveObject | |||
在組件的可見性從隱藏變更為可見之後傳送。 | UIComponent | |||
升起顯示軟體鍵盤之後立即傳送。 | InteractiveObject | |||
升起顯示軟體鍵盤前立即傳送。 | InteractiveObject | |||
降下隱藏軟體鍵盤之後立即傳送。 | InteractiveObject | |||
在物件的 tabChildren 旗標值變更時傳送。 | InteractiveObject | |||
在物件的 tabEnabled 旗標變更時傳送。 | InteractiveObject | |||
在物件的 tabIndex 屬性值變更時傳送。 | InteractiveObject | |||
當使用者輸入一或多文字的字元時送出。 | InteractiveObject | |||
當使用者在第一次接觸觸控裝置後傳送 (例如手指觸摸行動電話或平板電腦的觸控螢幕)。 | InteractiveObject | |||
當使用者在觸控裝置上移除接觸點後傳送 (例如在行動電話或平板電腦觸控螢幕上移開手指)。 | InteractiveObject | |||
當使用者觸控裝置時傳送,並且連續不斷地傳送,直到接觸點移除為止。 | InteractiveObject | |||
當使用者在觸控裝置中,將接觸點移出 InteractiveObject 實體後送出 (例如在行動電話或平板電腦的觸控螢幕上,將手指從顯示物件移至另一個顯示物件)。 | InteractiveObject | |||
當使用者在觸控裝置中將接觸點移至 InteractiveObject 實體上方後送出 (例如在行動電話或平板電腦的觸控螢幕上,將手指從顯示物件外面的某一點,往顯示物件上方拖曳)。 | InteractiveObject | |||
當使用者在觸控裝置上,將接觸點從 InteractiveObject 實體移出後送出 (例如,在行動電話或平板電腦的觸控螢幕上,將手指從顯示物件上方拖曳到顯示物件以外)。 | InteractiveObject | |||
當使用者在觸控裝置中將接觸點移至 InteractiveObject 實體上方後送出 (例如在行動電話或平板電腦的觸控螢幕上,將手指從顯示物件外面的某一點,往顯示物件上方拖曳)。 | InteractiveObject | |||
當使用者在觸控裝置的同一個 InteractiveObject 實體上,在原先開始接觸點放開後送出 (例如在行動電話或平板電腦觸控螢幕上的顯示物件上方,以手指按下某個點後又鬆開)。 | InteractiveObject |
樣式可分為一般樣式及與特定主題關聯的樣式兩種。如果是一般樣式,可以與任何主題搭配使用。如果是與特定主題關聯的樣式,只有在您的應用程式使用特定主題時才能使用該樣式。
樣式 | 說明 | 定義自 | ||
---|---|---|---|---|
buttonWidth | 類型: Number 格式: Length 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用於讓組件右邊緣和表示所選項目之文字保持一段距離的空白,以像素為單位。 此按鈕是背景外觀元素的一部分。 預設值為 24 。 | ComboBox | ||
cellRenderer | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用於提供組件中每一個項目之儲存格輸出器的類別。 預設值為 fl.controls.listClasses.CellRenderer 。 | ComboBox | ||
contentPadding | 類型: Number 格式: Length 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 內容間邊框距離 (組件與捲軸) 與背景的外邊緣 (以像素計)。 預設值為 3 。 | ComboBox | ||
disabledAlpha | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當 enabled 屬性是 false 時,用來設定清單的 Alpha 值。
預設值為 0.5 。 | ComboBox | ||
disabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當 ComboBox 組件的 enabled 屬性是設為 false 時,用於提供出現在此組件中之背景的類別名稱。
預設值為 ComboBox_disabledSkin 。 | ComboBox | ||
類型: flash.text.TextFormat 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按鈕停用時用來繪製組件標籤的 TextFormat 物件. | UIComponent | |||
downArrowDisabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當捲軸的向下箭頭按鈕停用時,用來作為其外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowDown_disabledSkin 。 | ComboBox | ||
downArrowDownSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當您按一下捲軸的向下箭頭按鈕時,用來作為此箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowDown_downSkin 。 | ComboBox | ||
downArrowOverSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當滑鼠指標位於捲軸的向下箭頭按鈕上方時,用來作為此箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowDown_overSkin 。 | ComboBox | ||
downArrowUpSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來作為捲軸向下箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowDown_upSkin 。 | ComboBox | ||
downSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當按下滑鼠時,用於提供出現在 ComboBox 組件中之背景的類別名稱。 預設值為 ComboBox_downSkin 。 | ComboBox | ||
embedFonts | 類型: Boolean 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 指出是否要使用內嵌的字體外框來呈現文字欄位。 如果這個值為 true ,Flash Player 會使用內嵌的字體外框來呈現文字欄位。 如果這個值為 false ,Flash Player 會使用預設字體來呈現文字欄位。
如果您將文字欄位的 false 。 | ComboBox | ||
類型: 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 | |||
overSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當滑鼠位於 ComboBox 組件上方時,用於提供出現在此組件中之背景的類別名稱。 預設值為 ComboBox_overSkin 。 | ComboBox | ||
repeatDelay | 類型: Number 格式: Time 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 在傳送第二個 buttonDown 事件之前,第一個 buttonDown 事件傳送之後要等候的毫秒數。
預設值為 500 。 | ComboBox | ||
repeatInterval | 類型: Number 格式: Time 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 在發生以 repeatDelay 樣式指定的延遲之後,所傳送的 buttonDown 事件前後的間隔,以毫秒為單位。
預設值為 35 。 | ComboBox | ||
類型: flash.text.TextFormat 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來繪製組件標籤的 TextFormat 物件. | UIComponent | |||
textPadding | 類型: Number 格式: Length 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用於讓邊框和表示所選項目之文字保持一段距離的空白,以像素為單位。 預設值為 3 。 | ComboBox | ||
thumbArrowUpSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來作為捲軸縮圖之外觀元素的類別名稱。 預設值為 ScrollThumb_upSkin 。 | ComboBox | ||
thumbDisabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來指出縮圖之停用狀態的外觀元素。 預設值為 ScrollThumb_upSkin 。 | ComboBox | ||
thumbDownSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當您按一下捲軸的縮圖時,用來作為此縮圖之外觀元素的類別名稱。 預設值為 ScrollThumb_downSkin 。 | ComboBox | ||
thumbIcon | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來作為捲軸縮圖之圖示的類別名稱。 預設值為 ScrollBar_thumbIcon 。 | ComboBox | ||
thumbOverSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當滑鼠指標位於捲軸的縮圖上方時,用來作為此縮圖之外觀元素的類別名稱。 預設值為 ScrollThumb_overSkin 。 | ComboBox | ||
trackDisabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來指出已停用軌道的外觀元素。 預設值為 ScrollTrack_Skin 。 | ComboBox | ||
trackDownSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來指出已停用外觀元素之按下狀態的外觀元素。 預設值為 ScrollTrack_Skin 。 | ComboBox | ||
trackOverSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來指出捲動軌道之滑鼠滑入狀態的外觀元素。 預設值為 ScrollTrack_Skin 。 | ComboBox | ||
trackUpSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來指出捲動軌道之滑鼠未按下狀態的外觀元素。 預設值為 ScrollTrack_Skin 。 | ComboBox | ||
upArrowDisabledSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當捲軸的向上箭頭按鈕停用時,用來作為其外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowUp_disabledSkin 。 | ComboBox | ||
upArrowDownSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當您按一下捲軸的向上箭頭按鈕時,用來作為此箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowUp_downSkin 。 | ComboBox | ||
upArrowOverSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 當滑鼠指標位於捲軸的向上箭頭按鈕上方時,用來作為此箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowUp_overSkin 。 | ComboBox | ||
upArrowUpSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用來作為捲軸向上箭頭按鈕之外觀元素的類別名稱。 如果您變更此外觀元素,不論是以圖像方式或程式設計方式,都應該確保新外觀元素的高度 (用於水平捲軸) 或寬度 (用於垂直捲軸) 和軌道相同。 預設值為 ScrollArrowUp_upSkin 。 | ComboBox | ||
upSkin | 類型: Class 語言版本: ActionScript 3.0 產品版本: Flash CS3 執行階段版本: Flash9.0.28.0, AIR 1.0 用於提供 ComboBox 組件背景的類別名稱。 預設值為 ComboBox_upSkin 。 | ComboBox |
dataProvider | 屬性 |
dataProvider:DataProvider
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定要檢視之項目清單的資料模型。 多個清單架構組件可以共享一個資料提供者。 所有以此資料提供者做為資料來源的組件都可以立即套用其中發生的變更。
實作
public function get dataProvider():DataProvider
public function set dataProvider(value:DataProvider):void
相關 API 元素
範例 ( 如何使用本範例 )
import fl.controls.ComboBox; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); var cb:ComboBox = new ComboBox(); cb.dataProvider = dp; addChild(cb); var counter = 0; var t:Timer = new Timer(500); t.addEventListener(TimerEvent.TIMER,addAnotherItem); t.start(); function addAnotherItem(e:TimerEvent = null):void { dp.addItem( { label: "Item " + counter++ } ); }
dropdown | 屬性 |
dropdownWidth | 屬性 |
dropdownWidth:Number
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會以像素為單位,取得或設定下拉式清單的最大寬度。 此屬性的預設值為 ComboBox 組件的寬度 (TextInput 實體的寬度加上 BaseButton 實體的寬度)。
預設值為 100。
實作
public function get dropdownWidth():Number
public function set dropdownWidth(value:Number):void
範例 ( 如何使用本範例 )
dropdownWidth
屬性:
import fl.controls.ComboBox; import fl.controls.Slider; import fl.events.SliderEvent; var mySlider:Slider = new Slider(); mySlider.minimum = 50; mySlider.maximum = 150; mySlider.liveDragging = true; mySlider.snapInterval = 5; mySlider.tickInterval = 10; mySlider.addEventListener(SliderEvent.CHANGE, changeHandler); mySlider.move(10, 10); addChild(mySlider); var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item A"}); myComboBox.addItem({label:"Item B"}); myComboBox.move(10, 30); addChild(myComboBox); mySlider.value = myComboBox.dropdownWidth; function changeHandler(event:SliderEvent):void { myComboBox.dropdownWidth = event.value; }
dropdownWidth
屬性:
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"The quick brown fox"}); myComboBox.addItem({label:"Lorem ipsum"}); myComboBox.addItem({label:"Little Miss Muffet"}); myComboBox.addItem({label:"Goldilocks and the three bears"}); myComboBox.addItem({label:"Jack and Jill"}); myComboBox.move(10, 30); addChild(myComboBox); var maxLength:Number = 0; var i:uint; for (i = 0; i < myComboBox.length; i++) { myComboBox.selectedIndex = i; myComboBox.drawNow(); var currText:String = myComboBox.text; var currWidth:Number = myComboBox.textField.textWidth; maxLength = Math.max(currWidth, maxLength); trace(currText, currWidth, maxLength); } myComboBox.selectedIndex = -1; myComboBox.dropdownWidth = maxLength + 20; myComboBox.open();
editable | 屬性 |
editable:Boolean
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定 Boolean 值,指出 ComboBox 組件為可編輯或是唯讀。 值為 true
表示 ComboBox 組件可編輯;值為 false
則表示不可編輯。
在可編輯的 ComboBox 組件中,使用者可在文字方塊中輸入未出現在下拉式清單內的值。 文字方塊會在清單中顯示項目的文字。如果 ComboBox 組件是不可編輯的,則無法在文字方塊中輸入文字。
預設值為 false。
實作
public function get editable():Boolean
public function set editable(value:Boolean):void
範例 ( 如何使用本範例 )
enter
事件時,將自訂項目新增至資料提供者:
import fl.controls.ComboBox; import fl.data.DataProvider; import fl.events.ComponentEvent; var dp:DataProvider = new DataProvider(); var myComboBox:ComboBox = new ComboBox; myComboBox.dataProvider = dp; myComboBox.editable = true; myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler); myComboBox.move(10, 10); addChild(myComboBox); function enterHandler(event:ComponentEvent):void { var myCB:ComboBox = event.currentTarget as ComboBox; dp.addItem({label:myCB.text}); myCB.text = ""; myCB.sortItemsOn("label", Array.CASEINSENSITIVE); }
labelField | 屬性 |
labelField:String
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定 dataProvider
物件中,要顯示為 TextInput 欄位及下拉式清單之標籤的欄位名稱。
根據預設,該組件會顯示每個 dataProvider
項目的 label
屬性。 如果 dataProvider
項目沒有包含 label
屬性,則可以將 labelField
屬性設定為使用不同的屬性。
注意:如果將 labelFunction
屬性設定為回呼函數,就不會使用 labelField
屬性。
預設值為 "label"。
實作
public function get labelField():String
public function set labelField(value:String):void
相關 API 元素
範例 ( 如何使用本範例 )
labelField
屬性以設定自訂標籤欄位:
import fl.controls.ComboBox; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem({firstName:"Jane", lastName:"Doe"}); dp.addItem({firstName:"Bill", lastName:"Smith"}); dp.addItem({firstName:"Tim", lastName:"Jones"}); dp.sortOn(["firstName","lastName"]); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.labelField = "firstName"; myComboBox.move(10, 10); addChild(myComboBox);
labelFunction | 屬性 |
labelFunction:Function
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定要用來取得項目標籤的函數。
根據預設,該組件會顯示 dataProvider
項目的 label
屬性。 但是某些資料集可能沒有 label
欄位,或者可能沒有其值可不經修改即做為標籤使用的欄位。 例如,某個指定的資料集可能會儲存完整的姓名,但卻會將姓氏和名字分別存放在 lastName
和 firstName
欄位中加以維護。 在這種情況下,就可以使用此屬性來設定回呼函數,將 lastName
和 firstName
欄位的值連接成完整的姓名字串以供顯示。
注意:如果將 labelFunction
屬性設定為回呼函數,就不會使用 labelField
屬性。
實作
public function get labelFunction():Function
public function set labelFunction(value:Function):void
相關 API 元素
範例 ( 如何使用本範例 )
labelFunction
屬性設定為函數,此函數會格式化要在每個儲存格中顯示的字串:
import fl.data.DataProvider; import fl.controls.List; var myDataProvider:DataProvider = new DataProvider(); myDataProvider.addItem({name:"User A", price:0.43}); myDataProvider.addItem({name:"User B", price:0.34}); var users:List = new List(); users.dataProvider = myDataProvider; users.labelFunction = myLabelFunction; addChild(users); function myLabelFunction(item:Object):String { return item.name + " ($" + item.price.toFixed(2) + ")"; }
labelField
屬性以設定自訂標籤欄位:
import fl.controls.ComboBox; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem({firstName:"Jane", lastName:"Doe"}); dp.addItem({firstName:"Bill", lastName:"Smith"}); dp.addItem({firstName:"Tim", lastName:"Jones"}); dp.sortOn(["lastName", "firstName"]); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.labelFunction = nameLabelFunction; myComboBox.move(10, 10); addChild(myComboBox); function nameLabelFunction(item:Object):String { return item.lastName + ", " + item.firstName; }
length | 屬性 |
length:int
[唯讀] 語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得清單中項目的數量。 此屬性雖然屬於 List 組件,但也可以從 ComboBox 實體進行存取。
預設值為 0。
實作
public function get length():int
相關 API 元素
範例 ( 如何使用本範例 )
rowCount
屬性:
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item A"}); myComboBox.addItem({label:"Item B"}); myComboBox.addItem({label:"Item C"}); myComboBox.addItem({label:"Item D"}); myComboBox.addItem({label:"Item E"}); myComboBox.addItem({label:"Item F"}); myComboBox.rowCount = myComboBox.length / 2; addChild(myComboBox);
rowCount
屬性:
import fl.controls.ComboBox; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem({label:"Item A"}); dp.addItem({label:"Item B"}); dp.addItem({label:"Item C"}); dp.addItem({label:"Item D"}); dp.addItem({label:"Item E"}); dp.addItem({label:"Item F"}); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.rowCount = myComboBox.length / 2; addChild(myComboBox);
prompt | 屬性 |
prompt:String
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定 ComboBox 組件的提示。 提示是一個字串,當 selectedIndex
為 -1 時,會在 ComboBox 的 TextInput 部分中顯示。 這通常會是像「請選取...」此類的字串。 如果沒有設定提示,ComboBox 組件會將 selectedIndex
屬性設定為 0,並顯示 dataProvider
屬性中的第一個項目。
預設值為 ""。
實作
public function get prompt():String
public function set prompt(value:String):void
範例 ( 如何使用本範例 )
prompt
屬性,並重新調整下拉式清單方塊大小,以符合提示文字的寬度:
import fl.controls.ComboBox; var cbStyles:Object = ComboBox.getStyleDefinition(); var bW:Number = cbStyles.buttonWidth as Number var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Please select an option..."; myComboBox.addItem({label:"Option 1"}); myComboBox.addItem({label:"Option 2"}); myComboBox.drawNow(); myComboBox.width = myComboBox.textField.textWidth + 35; myComboBox.dropdownWidth = myComboBox.width - bW; myComboBox.move(10, 10); addChild(myComboBox);
prompt
屬性:
import fl.controls.ComboBox; import fl.data.DataProvider; var dp:DataProvider = new DataProvider(); dp.addItem({label:"Getting Started"}); dp.addItem({label:"New Features"}); dp.addItem({label:"ActionScript"}); dp.addItem({label:"Components"}); dp.sortOn("label", Array.CASEINSENSITIVE); var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Topics (" + dp.length + ")"; myComboBox.dataProvider = dp; myComboBox.width = 150; myComboBox.move(10, 10); addChild(myComboBox);
restrict | 屬性 |
restrict:String
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定使用者可以在文字欄位中輸入的字元。 如果 restrict
屬性的值是字元組成的字串,您只能在文字欄位內輸入此字串中的字元。 讀取此字串的方向是由左至右。 如果 restrict
屬性的值是 null
,您就可以輸入任何字元。 如果 restrict
屬性的值是空字串 (""),您就無法輸入任何字元。 您可以使用連字符號 (-) 字元指定範圍。 這只會限制使用者互動;Script 仍可以在文字欄位中放置任何字元。
預設值為 null。
實作
public function get restrict():String
public function set restrict(value:String):void
相關 API 元素
範例 ( 如何使用本範例 )
restrict
屬性,建立僅允許輸入十六進位顏色的可編輯 ComboBox 組件:
import fl.controls.ComboBox; import fl.data.DataProvider; import fl.events.ComponentEvent; var dp:DataProvider = new DataProvider(); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.editable = true; myComboBox.restrict = "0-9A-F"; myComboBox.textField.maxChars = 6; myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler); myComboBox.move(10, 10); addChild(myComboBox); function enterHandler(event:ComponentEvent):void { var colorStr:String = ComboBox(event.currentTarget).text; var colorNum:uint = uint("0x" + colorStr); dp.addItem({label:colorStr, value:colorNum}); dp.sortOn("value", Array.NUMERIC); event.currentTarget.text = ""; }
rowCount | 屬性 |
rowCount:uint
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定沒有捲軸的下拉式清單中所能顯示的最大列數。 如果下拉式清單中的項目數超過這個值,則清單會在必要時調整大小並顯示捲軸。 如果下拉式清單中的項目數小於這個值,則下拉式清單會配合它所包含的項目數來調整大小。
這種行為與 List 組件不同。List 組件會固定顯示 rowCount
屬性指定的列數,即使包含空行也是如此。
預設值為 5。
實作
public function get rowCount():uint
public function set rowCount(value:uint):void
相關 API 元素
範例 ( 如何使用本範例 )
rowCount
屬性:
import fl.controls.ComboBox; import fl.controls.Slider; import fl.events.SliderEvent; var numItems:uint = 8; var mySlider:Slider = new Slider(); mySlider.tickInterval = 1; mySlider.snapInterval = 1; mySlider.minimum = 1; mySlider.maximum = numItems; mySlider.liveDragging = true; mySlider.move(10, 10); mySlider.addEventListener(SliderEvent.CHANGE, changeHandler); addChild(mySlider); var myComboBox:ComboBox = new ComboBox(); myComboBox.move(10, 30); addChild(myComboBox); var i:uint; for (i = 0; i < numItems; i++) { myComboBox.addItem({label:"Item " + i}); } function changeHandler(event:SliderEvent):void { myComboBox.rowCount = event.value; }
selectedIndex | 屬性 |
selectedIndex:int
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定在單選清單中選取之項目的索引。 單選清單是一次只允許選取一個項目的清單。
值為 -1,表示沒有選取任何項目。如果進行了多重選取,則這個值等於該選取項目群組中最後一個選取項目的索引。
使用 ActionScript 設定此屬性時,位於指定索引的項目會取代目前的選取項目。 如果是以程式設計的方式變更選取項目,就不會傳送 change
事件物件。
預設值為 0。
實作
public function get selectedIndex():int
public function set selectedIndex(value:int):void
相關 API 元素
範例 ( 如何使用本範例 )
selectedIndex
屬性:
import fl.controls.ComboBox; import fl.controls.Slider; import fl.data.DataProvider; import fl.events.SliderEvent; var items:XML = <items> <item label="Item 1" /> <item label="Item 2" /> <item label="Item 3" /> <item label="Item 4" /> </items>; var dp:DataProvider = new DataProvider(items); var mySlider:Slider = new Slider(); mySlider.liveDragging = true; mySlider.tickInterval = 1; mySlider.snapInterval = 1; mySlider.minimum = 0; mySlider.maximum = dp.length - 1; mySlider.width = 100; mySlider.move(10, 10); mySlider.addEventListener(SliderEvent.CHANGE, changeHandler); addChild(mySlider); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.move(10, 30); addChild(myComboBox); function changeHandler(event:SliderEvent):void { myComboBox.selectedIndex = event.value; }
selectedIndex
屬性值:
import fl.controls.ComboBox; import fl.controls.Label; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Please select an item..."; myComboBox.addItem({label:"Item 1"}); myComboBox.addItem({label:"Item 2"}); myComboBox.addItem({label:"Item 3"}); myComboBox.addItem({label:"Item 4"}); myComboBox.width = 150; myComboBox.move(10, 10); myComboBox.addEventListener(Event.CHANGE, changeHandler); addChild(myComboBox); var myLabel:Label = new Label(); myLabel.autoSize = TextFieldAutoSize.LEFT; myLabel.text = "selectedIndex:" + myComboBox.selectedIndex; myLabel.move(myComboBox.x + myComboBox.width + 10, myComboBox.y); addChild(myLabel); function changeHandler(event:Event):void { myLabel.text = "selectedIndex:" + myComboBox.selectedIndex; }
selectedItem | 屬性 |
selectedItem:Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定下拉式清單中選取的項目值。 如果使用者在可編輯之 ComboBox 組件的文字方塊中輸入文字,則 selectedItem
屬性為 undefined
。 只有在使用者選取項目,或使用 ActionScript 選取下拉式清單中的項目時,此屬性才會包含值。 如果 ComboBox 組件不可編輯,則 selectedItem
屬性的值一定有效。 如果可編輯 ComboBox 組件的下拉式清單中沒有項目,則此屬性的值為 null
。
預設值為 null。
實作
public function get selectedItem():Object
public function set selectedItem(value:Object):void
相關 API 元素
範例 ( 如何使用本範例 )
import fl.controls.Button; import fl.controls.ComboBox; import fl.controls.List; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Select an item"; myComboBox.addItem({label:"Item A"}); myComboBox.addItem({label:"Item B"}); myComboBox.addItem({label:"Item C"}); myComboBox.move(10, 10); addChild(myComboBox); var myButton:Button = new Button(); myButton.label = "Copy"; myButton.move(myComboBox.x + myComboBox.width + 10, myComboBox.y); myButton.addEventListener(MouseEvent.CLICK, clickHandler); addChild(myButton); var myList:List = new List(); myList.rowCount = myList.length; myList.selectable = false; myList.move(myComboBox.x, myComboBox.y + myComboBox.height + 10); addChild(myList); function clickHandler(event:MouseEvent):void { if (myComboBox.selectedIndex > -1) { myList.addItem(myComboBox.selectedItem); myList.rowCount = myList.length; } }
import fl.controls.ComboBox; import fl.controls.Label; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Select a user:"; myComboBox.addItem({firstName:"Jane", lastName:"Doe"}); myComboBox.addItem({firstName:"Bill", lastName:"Smith"}); myComboBox.addItem({firstName:"Tim", lastName:"Jones"}); myComboBox.labelFunction = nameLabelFunction; myComboBox.width = 120; myComboBox.move(10, 10); myComboBox.addEventListener(Event.CHANGE, changeHandler); addChild(myComboBox); var firstNameLabel:Label = new Label(); firstNameLabel.text = ""; firstNameLabel.autoSize = TextFieldAutoSize.LEFT; firstNameLabel.move(myComboBox.x, myComboBox.y + myComboBox.height); addChild(firstNameLabel); var lastNameLabel:Label = new Label(); lastNameLabel.text = ""; lastNameLabel.autoSize = TextFieldAutoSize.LEFT; lastNameLabel.move(firstNameLabel.x, firstNameLabel.y + firstNameLabel.height); addChild(lastNameLabel); function changeHandler(event:Event):void { var cb:ComboBox = event.currentTarget as ComboBox; var item:Object = cb.selectedItem; if (cb.selectedIndex > -1) { firstNameLabel.text = item.firstName; lastNameLabel.text = item.lastName; } } function nameLabelFunction(item:Object):String { return item.lastName + ", " + item.firstName; }
selectedLabel | 屬性 |
selectedLabel:String
[唯讀] 語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得顯示於 ComboBox 組件之 TextInput 部分中的字串。 這個值是使用 labelField
或 labelFunction
屬性,從資料中計算得到的。
實作
public function get selectedLabel():String
相關 API 元素
範例 ( 如何使用本範例 )
selectedLabel
屬性:
import fl.controls.ComboBox; import fl.controls.Label; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Select a user:"; myComboBox.addItem({firstName:"Jane", lastName:"Doe"}); myComboBox.addItem({firstName:"Bill", lastName:"Smith"}); myComboBox.addItem({firstName:"Tim", lastName:"Jones"}); myComboBox.labelFunction = nameLabelFunction; myComboBox.width = 120; myComboBox.move(10, 10); myComboBox.addEventListener(Event.CHANGE, changeHandler); addChild(myComboBox); var myLabel:Label = new Label(); myLabel.text = ""; myLabel.autoSize = TextFieldAutoSize.LEFT; myLabel.move(myComboBox.x, myComboBox.y + myComboBox.height); addChild(myLabel); function changeHandler(event:Event):void { var cb:ComboBox = event.currentTarget as ComboBox; myLabel.text = "selectedLabel: " + cb.selectedLabel; } function nameLabelFunction(item:Object):String { return item.lastName + ", " + item.firstName; }
text | 屬性 |
text:String
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得或設定可編輯之 ComboBox 組件中,文字方塊所包含的文字。 如果是不可編輯的 ComboBox 組件,則這個值是唯讀的。
預設值為 ""。
實作
public function get text():String
public function set text(value:String):void
範例 ( 如何使用本範例 )
import fl.controls.ComboBox; import fl.controls.TextArea; import fl.events.ComponentEvent; var myComboBox:ComboBox = new ComboBox(); myComboBox.editable = true; myComboBox.addEventListener(TextEvent.TEXT_INPUT, textInputHandler); myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler); myComboBox.width = 300; myComboBox.move(10, 10); addChild(myComboBox); var myTextArea:TextArea = new TextArea(); myTextArea.wordWrap = false; myTextArea.setSize(300, 200); myTextArea.move(myComboBox.x, myComboBox.y + myComboBox.height + 10); addChild(myTextArea) function textInputHandler(event:TextEvent):void { myTextArea.appendText(event.type + ":\n"); myTextArea.appendText("\t" + event.currentTarget.text + "\n"); myTextArea.appendText("\t" + event.text + "\n"); myTextArea.appendText("\n"); autoScroll(myTextArea); } function enterHandler(event:ComponentEvent):void { myTextArea.appendText(event.type + ":\n"); myTextArea.appendText("\t" + event.currentTarget.text + "\n"); myTextArea.appendText("\n"); autoScroll(myTextArea); } function autoScroll(ta:TextArea):void { ta.verticalScrollPosition = ta.maxVerticalScrollPosition; }
textField | 屬性 |
textField:fl.controls:TextInput
[唯讀] 語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得 ComboBox 組件所包含之 TextInput 組件的參考。 您可以使用此屬性,存取並操作下一層的 TextInput 組件。 例如,您可以使用此屬性來變更文字方塊的選取範圍,或限制其中可以輸入的字元組。
實作
public function get textField():fl.controls:TextInput
範例 ( 如何使用本範例 )
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.editable = true; myComboBox.textField.maxChars = 8; myComboBox.move(10, 10); addChild(myComboBox);
import fl.controls.ComboBox; var comicSansTF:TextFormat = new TextFormat(); comicSansTF.font = "Comic Sans MS"; var myComboBox:ComboBox = new ComboBox(); myComboBox.textField.setStyle("textFormat", comicSansTF); myComboBox.addItem({label:"Item A"}); myComboBox.addItem({label:"Item B"}); myComboBox.addItem({label:"Item C"}); myComboBox.addItem({label:"Item D"}); myComboBox.move(10, 10); addChild(myComboBox);
import fl.controls.ComboBox; import fl.data.DataProvider; var myTextFormat:TextFormat = new TextFormat(); myTextFormat.font = "Comic Sans MS"; myTextFormat.color = 0xFF0000; var fontArray:Array = Font.enumerateFonts(true); fontArray.sortOn("fontName", Array.CASEINSENSITIVE); var dp:DataProvider = new DataProvider(fontArray); var myComboBox:ComboBox = new ComboBox(); myComboBox.dataProvider = dp; myComboBox.dropdown.iconField = null; myComboBox.labelField = "fontName"; myComboBox.textField.setStyle("textFormat", myTextFormat); myComboBox.dropdown.setRendererStyle("textFormat", myTextFormat); myComboBox.width = 200; myComboBox.move(10, 10); addChild(myComboBox);
value | 屬性 |
value:String
[唯讀] 語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會取得可編輯 ComboBox 組件中項目的標籤。 如果 ComboBox 組件不可編輯,則此屬性會取得項目所包含的資料。
實作
public function get value():String
範例 ( 如何使用本範例 )
value
屬性:
import fl.controls.ComboBox; import fl.controls.Label; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Select a user:"; myComboBox.addItem({firstName:"Jane", lastName:"Doe"}); myComboBox.addItem({firstName:"Bill", lastName:"Smith"}); myComboBox.addItem({firstName:"Tim", lastName:"Jones"}); myComboBox.labelFunction = nameLabelFunction; myComboBox.width = 120; myComboBox.move(10, 10); myComboBox.addEventListener(Event.CHANGE, changeHandler); myComboBox.editable = true; addChild(myComboBox); var myLabel:Label = new Label(); myLabel.text = ""; myLabel.autoSize = TextFieldAutoSize.LEFT; myLabel.move(myComboBox.x, myComboBox.y + myComboBox.height); addChild(myLabel); function changeHandler(event:Event):void { var cb:ComboBox = event.currentTarget as ComboBox; myLabel.text = "value: " + cb.value; } function nameLabelFunction(item:Object):String { var str:String; if (item == null) { str = myComboBox.value; } else { str = item.lastName + ", " + item.firstName; } return str; }
ComboBox | () | 建構函式 |
public function ComboBox()
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
建立新的 ComboBox 組件實體。
addItem | () | 方法 |
addItemAt | () | 方法 |
close | () | 方法 |
public function close():void
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
關閉下拉式清單。
注意:呼叫此方法會導致傳送 close
事件。 如果 ComboBox 已經關閉,則呼叫此方法沒有效果。
相關 API 元素
範例 ( 如何使用本範例 )
open()
和 close()
方法切換下拉式選單的可見性:
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item 1"}); myComboBox.addItem({label:"Item 2"}); myComboBox.addItem({label:"Item 3"}); myComboBox.move(10, 10); myComboBox.addEventListener(Event.OPEN, openHandler); myComboBox.addEventListener(Event.CLOSE, closeHandler); addChild(myComboBox); var isOpen:Boolean = false; var timer:Timer = new Timer(1000); timer.addEventListener(TimerEvent.TIMER, timerHandler); timer.start(); function openHandler(event:Event):void { isOpen = true; } function closeHandler(event:Event):void { isOpen = false; } function timerHandler(event:TimerEvent):void { if (isOpen) { myComboBox.close(); } else { myComboBox.open(); } }
getItemAt | () | 方法 |
public function getItemAt(index:uint):Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會擷取位於指定索引的項目。
參數
index:uint — 要擷取之項目的索引。
|
Object — 位於指定索引位置的物件。
|
範例 ( 如何使用本範例 )
getItemAt()
方法將項目從 ComboBox 組件複製到 DataGrid 組件中:
import fl.controls.ComboBox; import fl.controls.DataGrid; import fl.controls.dataGridClasses.DataGridColumn; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item 1", price:0.34}); myComboBox.addItem({label:"Item 2", price:13.19}); myComboBox.addItem({label:"item 3", price:2.96}); myComboBox.addItem({label:"Item 4", price:3.49}); myComboBox.addItem({label:"Item 5", price:1.27}); myComboBox.move(10, 10); addChild(myComboBox); var indexCol:DataGridColumn = new DataGridColumn("index"); indexCol.headerText = ""; indexCol.sortOptions = Array.NUMERIC; var labelCol:DataGridColumn = new DataGridColumn("label"); labelCol.sortOptions = Array.CASEINSENSITIVE; var priceCol:DataGridColumn = new DataGridColumn("price"); priceCol.sortOptions = Array.NUMERIC; var myDataGrid:DataGrid = new DataGrid(); myDataGrid.addColumn(indexCol); myDataGrid.addColumn(labelCol); myDataGrid.addColumn(priceCol); myDataGrid.move(10, 40); myDataGrid.rowCount = myComboBox.length; myDataGrid.width = 180; addChild(myDataGrid); var i:uint; var item:Object; for (i = 0; i < myComboBox.length; i++) { item = myComboBox.getItemAt(i); myDataGrid.addItem({index:i, label:item.label, price:item.price}); }
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; }
itemToLabel | () | 方法 |
open | () | 方法 |
removeAll | () | 方法 |
public function removeAll():void
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
從清單移除所有項目。
相關 API 元素
範例 ( 如何使用本範例 )
removeAll()
方法,使用 Button 組件實體將項目從 ComboBox 移除:
import fl.controls.Button; import fl.controls.ComboBox; import fl.controls.TextInput; var greenTF:TextFormat; var redTF:TextFormat; var myTextInput:TextInput; var addButton:Button; var myComboBox:ComboBox; var removeButton:Button; greenTF = new TextFormat(); greenTF.color = 0x006600; redTF = new TextFormat(); redTF.color = 0xFF0000; myTextInput = new TextInput(); myTextInput.maxChars = 20; myTextInput.restrict = "a-zA-Z"; myTextInput.move(10, 10); addChild(myTextInput); addButton = new Button(); addButton.label = "(+) Add"; addButton.setStyle("textFormat", greenTF); addButton.move(120, 10); addButton.addEventListener(MouseEvent.CLICK, addClickHandler); addChild(addButton); myComboBox = new ComboBox(); myComboBox.move(10, 40); addChild(myComboBox); removeButton = new Button(); removeButton.label = "(-) Remove All"; removeButton.setStyle("textFormat", redTF); removeButton.move(120, 40); removeButton.addEventListener(MouseEvent.CLICK, removeClickHandler); addChild(removeButton); function addClickHandler(event:MouseEvent):void { if (myTextInput.length > 0) { trace("adding item..."); myComboBox.addItem({label:myTextInput.text}); myComboBox.sortItemsOn("label", Array.CASEINSENSITIVE); myTextInput.text = ""; } } function removeClickHandler(event:MouseEvent):void { trace("removing all items..."); myComboBox.removeAll(); }
removeItem | () | 方法 |
public function removeItem(item:Object):Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會移除清單中的指定項目。
參數
item:Object — 要移除的項目。
|
Object — 已移除的項目。
|
相關 API 元素
範例 ( 如何使用本範例 )
import fl.controls.List; import fl.events.ListEvent; var myList:List = new List(); myList.addItem( { label: "Carrot" } ); myList.addItem( { label: "Turnip" } ); myList.addItem( { label: "Tomato" } ); myList.addItem( { label: "Blueberry" } ); myList.addEventListener(ListEvent.ITEM_CLICK,removeSelectedItem); addChild(myList); function removeSelectedItem(e:ListEvent):void { myList.removeItem(e.item); }
removeItemAt | () | 方法 |
public function removeItemAt(index:uint):void
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
移除位於指定索引位置的項目。項目的索引位置,這些項目的索引較陣列中的指定索引前進 1 個位置。
這是可從 ComboBox 組件之實體使用的 List 組件之方法。
參數
index:uint — 要移除之項目的索引。
|
擲回值
RangeError — 指定的索引小於 0,或者大於或等於資料提供者的長度。
|
相關 API 元素
replaceItemAt | () | 方法 |
public function replaceItemAt(item:Object, index:uint):Object
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會以另一個項目取代位於指定索引位置的項目。 這個方法會修改 List 組件的資料提供者。 如果與其他組件共享此資料提供者,則也會更新提供給這些組件的資料。
參數
item:Object — 要取代位於指定索引位置之項目的項目。
| |
index:uint — 要取代之項目的索引位置。
|
Object — 已遭取代的項目。
|
範例 ( 如何使用本範例 )
replaceItemAt()
方法,以 TextInput 組件的值取代 ComboBox 中目前選取的項目:
import fl.controls.Button; import fl.controls.ComboBox; import fl.controls.TextArea; import fl.controls.TextInput; var myComboBox:ComboBox = new ComboBox(); myComboBox.prompt = "Select a user..."; myComboBox.addItem({label:"Person 1"}); myComboBox.addItem({label:"Person 2"}); myComboBox.addItem({label:"Person 3"}); myComboBox.addItem({label:"Person 4"}); myComboBox.width = 150; myComboBox.move(10, 10); myComboBox.addEventListener(Event.CHANGE, changeHandler); addChild(myComboBox); var myTextInput:TextInput = new TextInput(); myTextInput.restrict = "a-zA-Z0-9"; myTextInput.maxChars = 12; myTextInput.move(10, 40); addChild(myTextInput) var myButton:Button = new Button(); myButton.label = "Replace item"; myButton.addEventListener(MouseEvent.CLICK, clickHandler); myButton.move(120, 40); addChild(myButton); var myTextArea:TextArea = new TextArea(); myTextArea.editable = false; myTextArea.setSize(320, 240); myTextArea.move(10, 70); addChild(myTextArea); function changeHandler(event:Event):void { myTextInput.text = myComboBox.selectedLabel; } function clickHandler(event:MouseEvent):void { var cIndex:int = myComboBox.selectedIndex; if (cIndex > -1) { var newItem:Object = {label:myTextInput.text}; var oldItem:Object = myComboBox.replaceItemAt(newItem, cIndex); myComboBox.selectedIndex = cIndex; myTextArea.appendText("[index:" + cIndex + "] old:'" + oldItem.label +"', new:'" + newItem.label + "'\n"); myTextArea.verticalScrollPosition = myTextArea.maxVerticalScrollPosition; } }
sortItems | () | 方法 |
public function sortItems(... sortArgs):*
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會排序目前資料提供者的元素。 此方法會根據元素的 Unicode 值執行排序。 ASCII 是 Unicode 的子集。
參數
... sortArgs — 做為排序依據的引數。
|
* — 傳回值取決於是否已傳遞任何參數至此方法。 如需詳細資訊,請參閱 Array.sort() 方法。 請注意,當 sortArgs 參數設定為 Array.UNIQUESORT 時,此方法會傳回 0。
|
相關 API 元素
範例 ( 如何使用本範例 )
upperCaseSort()
,該函數將比較兩個項目的 label
屬性,並根據該項目應顯示的順序傳回 Boolean 值:
import fl.controls.ComboBox; var cb:ComboBox = new ComboBox(); cb.addItem( { label: "Mercury" } ); cb.addItem( { label: "Venus" } ); cb.addItem( { label: "Earth" } ); cb.addItem( { label: "planet" } ); cb.sortItems(upperCaseSort); addChild(cb); function upperCaseSort(a:Object, b:Object):Boolean { return a.label.toUpperCase() > b.label.toUpperCase(); }
sortItemsOn | () | 方法 |
public function sortItemsOn(field:String, options:Object = null):*
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會依據目前資料提供者的一個或多個欄位,排序此資料提供者的元素。
參數
field:String — 做為排序依據的欄位。
| |
options:Object (default = null ) — 會用來覆寫預設排序行為的排序引數。 請使用位元 OR (|) 運算子分隔兩個以上的引數。
|
* — 傳回值取決於是否已傳遞任何參數至此方法。 如需詳細資訊,請參閱 Array.sortOn() 方法。 請注意,當 sortOption 參數設定為 Array.UNIQUESORT 時,此方法會傳回 0。
|
相關 API 元素
範例 ( 如何使用本範例 )
cb
的 ComboBox 實體,其中含有 4 個具有 "Apples"
、"Bananas"
、"cherries"
和 "Grapes"
標籤的元素:
import fl.controls.ComboBox; var cb:ComboBox = new ComboBox(); addChild(cb); // First, populate the ComboBox with the elements. cb.addItem( { label: "Bananas" } ); cb.addItem( { label: "Apples" } ); cb.addItem( { label: "cherries" } ); cb.addItem( { label: "Grapes" } ); // The following statement sorts using the order parameter set to "ASC", // and results in a sort that places "cherries" at the bottom of the list // because the sort is case-sensitive. cb.sortItemsOn("label", "ASC"); // resulting order: Apples, Bananas, Grapes, cherries // The following statement sorts using the order parameter set to "DESC", // and results in a sort that places "cherries" at the top of the list // because the sort is case-sensitive. cb.sortItemsOn("label", "DESC"); // resulting order: cherries, Grapes, Bananas, Apples // The following statement sorts using the optionsFlag parameter set to // Array.CASEINSENSITIVE. Note that an ascending sort is the default setting. cb.sortItemsOn("label", Array.CASEINSENSITIVE); // resulting order: Apples, Bananas, cherries, Grapes // The following statement sorts using the optionsFlag parameter set to // Array.CASEINSENSITIVE | Array.DESCENDING. cb.sortItemsOn("label", Array.CASEINSENSITIVE | Array.DESCENDING); // resulting order: Grapes, cherries, Bananas, Apples
sortItemsOn()
方法排序項目:
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({firstName:"Jane", lastName:"Doe"}); myComboBox.addItem({firstName:"Bill", lastName:"Smith"}); myComboBox.addItem({firstName:"Tim", lastName:"Jones"}); myComboBox.sortItemsOn("lastName", Array.CASEINSENSITIVE); myComboBox.labelFunction = nameLabelFunction; myComboBox.move(10, 10); addChild(myComboBox); function nameLabelFunction(item:Object):String { return item.lastName + ", " + item.firstName; }
change | 事件 |
flash.events.Event
屬性 Event.type =
flash.events.Event.CHANGE
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當使用者變更 ComboBox 組件中的選取項目時就會傳送,或者如果能編輯 ComboBox 組件,則使用者每次於文字欄位中輸入按鍵動作時都會傳送。
注意:當下列表格指定 change
事件反昇時,便不會反昇 fl.controls.ComboBox control。
Event.CHANGE
常數會定義 change
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | true |
cancelable | false ;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 其值遭到修改的物件。 target 不會永遠都是顯示清單中註冊事件偵聽程式的物件。 請使用 currentTarget 屬性,存取目前正在處理該事件之顯示清單中的物件。 |
close | 事件 |
flash.events.Event
屬性 Event.type =
flash.events.Event.CLOSE
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當下拉式清單因為任何原因而關閉時傳送。
Event.CLOSE
常數會定義 close
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 其連線已關閉的物件。 |
範例 ( 如何使用本範例 )
open()
和 close()
方法切換下拉式選單的可見性:
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item 1"}); myComboBox.addItem({label:"Item 2"}); myComboBox.addItem({label:"Item 3"}); myComboBox.move(10, 10); myComboBox.addEventListener(Event.OPEN, openHandler); myComboBox.addEventListener(Event.CLOSE, closeHandler); addChild(myComboBox); var isOpen:Boolean = false; var timer:Timer = new Timer(1000); timer.addEventListener(TimerEvent.TIMER, timerHandler); timer.start(); function openHandler(event:Event):void { isOpen = true; } function closeHandler(event:Event):void { isOpen = false; } function timerHandler(event:TimerEvent):void { if (isOpen) { myComboBox.close(); } else { myComboBox.open(); } }
相關 API 元素
enter | 事件 |
fl.events.ComponentEvent
屬性 ComponentEvent.type =
fl.events.ComponentEvent.ENTER
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
在 editable
屬性設定為 true
,並且使用者在可編輯的文字欄位中輸入文字後按下 Enter 鍵時傳送。
enter
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
itemRollOut | 事件 |
fl.events.ListEvent
屬性 ListEvent.type =
fl.events.ListEvent.ITEM_ROLL_OUT
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當使用者的滑鼠指標滑出組件中某個項目時傳送。
會定義
itemRollOut
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
columnIndex | 包含輸出器的欄索引 (從零開始)。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
index | DataProvider (包含輸出器) 中從零開始的索引。 |
item | 屬於輸出器之資料的參考。 |
rowIndex | 包含輸出器的列索引 (從零開始)。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
相關 API 元素
itemRollOver | 事件 |
fl.events.ListEvent
屬性 ListEvent.type =
fl.events.ListEvent.ITEM_ROLL_OVER
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當使用者的滑鼠指標滑入組件中某個項目時傳送。
會定義
itemRollOver
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
columnIndex | 包含輸出器的欄索引 (從零開始)。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
index | DataProvider (包含輸出器) 中從零開始的索引。 |
item | 屬於輸出器之資料的參考。 |
rowIndex | 包含輸出器的列索引 (從零開始)。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
範例 ( 如何使用本範例 )
import fl.controls.ComboBox; import fl.controls.TextArea; import fl.events.ListEvent; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item 1"}); myComboBox.addItem({label:"Item 2"}); myComboBox.addItem({label:"Item 3"}); myComboBox.move(10, 10); myComboBox.addEventListener(Event.OPEN, openHandler); myComboBox.addEventListener(Event.CLOSE, closeHandler); myComboBox.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler); myComboBox.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOutHandler); myComboBox.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler); myComboBox.addEventListener(MouseEvent.ROLL_OUT, rollOutHandler); myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OVER, dropdownRollOverHandler) myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OUT, dropdownRollOutHandler); addChild(myComboBox); var myTextArea:TextArea = new TextArea(); myTextArea.editable = false; myTextArea.setSize(320, 240); myTextArea.move(120, 10); addChild(myTextArea); function openHandler(event:Event):void { logEvent("ComboBox open"); } function closeHandler(event:Event):void { logEvent("ComboBox close"); } function itemRollOverHandler(event:ListEvent):void { var rowIdx:uint = event.rowIndex as uint; logEvent("ComboBox itemRollOver: " + "`" + myComboBox.getItemAt(rowIdx).label + "`"); } function itemRollOutHandler(event:ListEvent):void { var rowIdx:uint = event.rowIndex as uint; logEvent("ComboBox itemRollOut: " + "`" + myComboBox.getItemAt(rowIdx).label + "`"); } function rollOverHandler(event:MouseEvent):void { logEvent("ComboBox rollOver"); myComboBox.open(); } function rollOutHandler(event:MouseEvent):void { logEvent("ComboBox rollOut"); myComboBox.close(); } function dropdownRollOverHandler(event:MouseEvent):void { logEvent("ComboBox.dropdown rollOver"); // reopen ComboBox after it gets closed by the ComboBox rollOut event myComboBox.open(); } function dropdownRollOutHandler(event:MouseEvent):void { logEvent("ComboBox.dropdown rollOut"); myComboBox.close(); } function logEvent(text:String):void { myTextArea.appendText(text + "\n"); myTextArea.verticalScrollPosition = myTextArea.maxVerticalScrollPosition; }
相關 API 元素
open | 事件 |
flash.events.Event
屬性 Event.type =
flash.events.Event.OPEN
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當使用者按一下下拉式按鈕以顯示下拉式清單時傳送。 此外,如果 ComboBox 組件不可編輯,則當使用者按一下文字欄位時也會傳送。
Event.OPEN
常數會定義 open
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已開啟連線的網路物件。 |
範例 ( 如何使用本範例 )
open()
方法開啟 ComboBox 組件下拉式清單的 Button 組件: 除非使用者將滑鼠置於 ComboBox 或其下拉式選單上方,否則下拉式選單會在 1 秒鐘後關閉:
import fl.controls.Button; import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.addItem({label:"Item 1"}); myComboBox.addItem({label:"Item 2"}); myComboBox.addItem({label:"Item 3"}); myComboBox.move(10, 10); myComboBox.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler); myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler); myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OUT, rollOutHandler); addChild(myComboBox); var myButton:Button = new Button(); myButton.emphasized = true; myButton.label = "open ComboBox"; myButton.move(120, 10); myButton.addEventListener(MouseEvent.CLICK, clickHandler); addChild(myButton); var closeTimer:Timer = new Timer(1000, 1); closeTimer.addEventListener(TimerEvent.TIMER_COMPLETE, timerCompleteHandler); function clickHandler(event:MouseEvent):void { myComboBox.open(); closeTimer.reset(); closeTimer.start(); } function timerCompleteHandler(event:TimerEvent):void { myComboBox.close(); } function rollOverHandler(event:MouseEvent):void { closeTimer.stop(); } function rollOutHandler(event:MouseEvent):void { myComboBox.close(); }
相關 API 元素
scroll | 事件 |
fl.events.ScrollEvent
屬性 ScrollEvent.type =
fl.events.ScrollEvent.SCROLL
語言版本: | ActionScript 3.0 |
產品版本: | Flash CS3 |
執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
當使用者捲動 ComboBox 組件的下拉式清單時傳送。
定義scroll
事件物件的 type
屬性值。
這個事件具有下列屬性:
屬性 | 值 |
---|---|
bubbles | false |
cancelable | false ;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
delta | 1 ,指出捲動了多少距離的值。
|
direction | vertical ,ScrollBar 的方向。 |
position | 0 ,捲軸縮圖移動後所在的位置。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
- 將 ComboBox 拖曳至舞台上,並將它命名為
cb
。 - 將這個程式碼儲存成 ComboBoxExample.as,並與您的 FLA 存放在相同的目錄中。
- 將 FLA 中的 DocumentClass 設定為 ComboBoxExample。
package { import flash.display.Sprite import flash.text.TextField; import flash.events.Event; import fl.controls.ComboBox; public class ComboBoxExample extends Sprite { private var tf:TextField; public function ComboBoxExample() { setupComboBox(); setupTextField(); } private function setupTextField():void { tf = new TextField(); tf.x = 180; tf.y = 15; tf.autoSize = "left"; addChild(tf); } private function setupComboBox():void { cb.setSize(150,22); cb.addItem( { label: "MasterCard", data:1 } ); cb.addItem( { label: "Visa", data:2 } ); cb.addItem( { label: "American Express", data:3 } ); cb.addEventListener(Event.CHANGE, cardSelected); } private function cardSelected(e:Event):void { tf.text = "You have selected: " tf.appendText(cb.selectedItem.label); } } }
Tue Jun 12 2018, 03:47 PM Z