flashswing關于list組件的使用
List 組件是一個可滾動的單選或多選列表框。
List 組件使用基于零的索引,其中索引為 0 的項目就是顯示在頂端的項目。當使用 List 類的方法和屬性添加、刪除或替換列表項時,您可能需要指定該列表項的索引。
在單擊列表或按 Tab 鍵切換到列表時,列表獲得焦點,然后您可使用以下鍵控制它:

注意 Page Up 鍵和 Page Down 鍵使用的頁的大小比可以顯示的項數少一項。例如,在一個十行的下拉列表中向下翻頁,將會依次顯示第 0-9 項、第 9-18 項、第 18-27 項等等,每頁都會有一個重疊項
以下示例演示列表的屬性,以及監聽用戶交互操作的結果。
從"庫"面板中拖動相關組件到舞臺(或直接通過 ActionScript 代碼創建組件實例),并對實例命名。
在主時間軸中選擇第一幀,打開"動作"面板,然后輸入以下代碼:
importflash.events.Event;my_list.
addEventListener(Event.CHANGE,function(evt:Event){ selectedIndex_txt.text= my_list.getSelectedIndex().toString(); selectedIndices_txt.text= "[" + my_list.getSelectedIndices() + "]"; }); my_list.addItem({label:"Sunday",data:0}); my_list.addItem({label:"Monday",data:1}); my_list.addItem({label:"Tuesday",data:2}); my_list.addItem({label:"Wednesday",data:3}); my_list.addItem({label:"Thursday",data:4}); my_list.addItem({label:"Friday",data:5}); my_list.addItem({label:"Saturday",data:6});</pre>![]()
通過自定義 CellRenderer 創建行高/寬不固定的列表。
首先,創建自定義單元格渲染器 MultiLineCellRenderer 類(繼承于 ListCellRenderer)。
package{importflash.text.TextFieldAutoSize;publicclassMultiLineCellRendererextendsListCellRenderer {publicoverridefunctiongetAutoSize():Boolean{returntrue; }publicoverridefunctionrepaint():void{textField.autoSize=TextFieldAutoSize.LEFT;textField.width= _width -textField.x* 2;textField.htmlText= getLabel();textField.textColor= getData().data;skin.width= _width;skin.height=textField.y* 2 +textField.height; } } }同上例,在主時間軸中選擇第一幀,打開"動作"面板,然后輸入以下代碼:
my_list.setCellRenderer(MultiLineCellRenderer); my_list.addItem({label:"Brown, 0xA52A2A",data:0xA52A2A}); my_list.addItem({label:"DarkSlateGray, 0x2F4F4F",data:0x2F4F4F}); my_list.addItem({label:"MediumAquamarine, 0x66CDAA",data:0x66CDAA}); my_list.addItem({label:"DeepSkyBlue, 0x00BFFF",data:0x00BFFF}); my_list.addItem({label:"MediumVioletRed, 0xC71585",data:0xC71585}); my_list.addItem({label:"Purple, 0x800080",data:0x800080}); my_list.addItem({label:"YellowGreen, 0x9ACD32",data:0x9ACD32});
相關資料來源于:</h4>
[本話題由 Clare 于 2012-12-08 12:02:03 編輯]
