庫里面導入ComboBox組件。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
import fl.controls.ComboBox; var wb_txt:TextField=new TextField(); addChild(wb_txt); wb_txt.text="選擇的文字"; wb_txt.x=100; wb_txt.y=100; import fl.data.DataProvider;//定義組件用到的數組 var arr:Array=new Array(); arr.push({label:"選項1",data1:"選擇的數據1"}); arr.push({label:"選項2",data1:"選擇的數據2"}); arr.push({label:"選項3",data1:"選擇的數據3"}); arr.push({label:"選項4",data1:"選擇的數據4"}); arr.push({label:"選項5",data1:"選擇的數據5"}); arr.push({label:"選項6",data1:"選擇的數據6"}); arr.push({label:"選項7",data1:"選擇的數據7"}); //另一種添加數據的方法 /*ComboBox1.addItem({label:"選項1",data1:"數據1"}); ComboBox1.addItem({label:"選項2",data1:"數據2"}); ComboBox1.addItem({label:"選項3",data1:"數據3"}); ComboBox1.addItem({label:"選項4",data1:"數據4"}); ComboBox1.addItem({label:"選項5",data1:"數據5"}); ComboBox1.addItem({label:"選項6",data1:"數據6"}); ComboBox1.addItem({label:"選項7",data1:"數據7"}); ComboBox1.addItem({label:"選項8",data1:"數據8"}); ComboBox1.addItem({label:"選項9",data1:"數據9"}); ComboBox1.addItem({label:"選項10",data1:"數據10"}); ComboBox1.addItem({label:"選項11",data1:"數據11"}); ComboBox1.addItem({label:"選項12",data1:"數據12"}); //用這種辦法之后,下面的ComboBox1.dataProvider=new DataProvider(arr);這句就要去掉 */ var ComboBox1:ComboBox=new ComboBox(); addChild(ComboBox1); ComboBox1.dataProvider=new DataProvider(arr);//下拉框的標簽和數據 ComboBox1.x=300; ComboBox1.y=100; ComboBox1.editable=false;//true允許用戶在下拉框中輸入數據,false不允許 ComboBox1.prompt="這是選項";//下拉框一開始就顯示的文字,如果不寫,那最開始顯示的就是第一項 ComboBox1.restrict="23";//允許用戶自己輸入數據之后,限制用戶只能輸入這些字符,比如這里是限制只能輸入2和3 ComboBox1.rowCount=5;//下拉框顯示的最大行數 ComboBox1.addEventListener(Event.CHANGE,changeFun); function changeFun(e:Event) { wb_txt.text=ComboBox1.selectedItem.data1; } /* Event.CHANGE:用戶單擊組件中的一個選項時發生的事件。 Event.ENTER:用戶在組件的文本輸入框中輸入值以后按 Enter 鍵時發生的事件。 Event.ITEM_ROLL_OUT:鼠標移出在組件中單元格時發生的事件。 Event.ITEM_ROLL_OVER:鼠標移入在組件中單元格時發生的事件。 */ |
效果: