flex3 comboBox 变身可输入可过滤搜索下拉选项,实例代码片段
发布时间:2020-12-15 00:57:37 所属栏目:百科 来源:网络整理
导读:fx:Script![CDATA[ ...............private var enterpriseInfoRO:RemoteObject=ServiceLocator.getInstance().getRemoteObject("enterpriseInfo_RO_ID") as RemoteObject;private var reportRO:RemoteObject=ServiceLocator.getInstance().getRemoteObject(
<fx:Script> <![CDATA[ ............... private var enterpriseInfoRO:RemoteObject=ServiceLocator.getInstance().getRemoteObject("enterpriseInfo_RO_ID") as RemoteObject; private var reportRO:RemoteObject=ServiceLocator.getInstance().getRemoteObject("reportRO") as RemoteObject; [Bindable] private var enterprise_info:Array=[]; [Bindable] public var inputEStr:String; private var checkBox:CheckBox; [Event(name="onDocumentLoadedError",type="flash.events.ErrorEvent")] ............ //加载企业信息 public function loadEnterpriseInfo():void { enterpriseInfoRO.getEnterprisesListByTID(cityInfo_CB_ID.selectedItem.value); enterpriseInfoRO.addEventListener(ResultEvent.RESULT,enterpriseInfo_Handle); } public function enterpriseInfo_Handle(e:ResultEvent):void { enterpriseInfoRO.removeEventListener(ResultEvent.RESULT,enterpriseInfo_Handle); if (e.result != null) { /**********返回列表*************/ var tempList:ArrayCollection=e.result as ArrayCollection; var arr:Array=tempList.toArray(); enterprise_info=[]; for (var a in arr) { enterprise_info.push({label: arr[a][1],value: arr[a][0]}); } enterpriseInfo_CB_ID.selectedIndex=0; //flag=true; loadReport(); } } //加载报表信息 public function loadReport():void { currentState='state1'; inputEStr=enterpriseInfo_CB_ID.text; if (enterpriseInfo_CB_ID.selectedItem != null) { reportRO.getReportInfo(enterpriseInfo_CB_ID.selectedItem.value,time_ID.getTime_flag(),time_ID.getDate()); reportRO.addEventListener(ResultEvent.RESULT,reportInfo_Handle); } } protected function search_keyUpHandler(event:KeyboardEvent):void { if(event.keyCode.toString()=='32'||event.keyCode.toString()=='13'||event.keyCode.toString()=='8'){ inputEStr=enterpriseInfo_CB_ID.text; enterpriseInfoRO.getEnterprisesListByValue(cityInfo_CB_ID.selectedItem.value,StringUtil.trim(inputEStr)); enterpriseInfoRO.addEventListener(ResultEvent.RESULT,_result_enterprise_bySearch); } } private function _result_enterprise_bySearch(e:ResultEvent):void{ enterpriseInfoRO.removeEventListener(ResultEvent.RESULT,_result_enterprise_bySearch); if(e.result != null){ /**********返回列表*************/ var tempList: ArrayCollection = e.result as ArrayCollection; var arr: Array = tempList.toArray(); var index:int=0; enterprise_info=[]; for(var a in arr) { enterprise_info.push({label:arr[a][0],value:int(arr[a][1])}); index++ } enterpriseInfo_CB_ID.text=inputEStr; enterpriseInfo_CB_ID.open(); } } public function reportInfo_Handle(e:ResultEvent):void { reportRO.removeEventListener(ResultEvent.RESULT,reportInfo_Handle); report_group_id.removeAllElements(); if (e.result != null) { /**********返回列表*************/ var tempList:ArrayCollection=e.result as ArrayCollection; var arr:Array=tempList.toArray(); for (var a in arr) { var vGroup:VGroup=new VGroup(); var image:Image=new Image(); image.source=(String(arr[a][3]) == "0" ? "assets/png/report.png" : "assets/png/report2.png"); image.name=String(arr[a][2]); image.useHandCursor="false"; image.buttonMode="true"; image.mouseChildren="false"; image.addEventListener(MouseEvent.CLICK,reportDetail); vGroup.addElement(image); var hGroup:HGroup=new HGroup(); var label:Label=new Label(); label.text="表" + arr[a][1]; var cb:CheckBox=new CheckBox(); cb.label="审核"; cb.selected=(String(arr[a][3]) == "0" ? false : true); cb.id=String(arr[a][0])+"##"+String(arr[a][2]); cb.addEventListener(Event.CHANGE,cb_change); hGroup.addElement(label); hGroup.addElement(cb); vGroup.addElement(hGroup); report_group_id.addElement(vGroup); } enterpriseInfo_CB_ID.text=inputEStr; } } ]]> </fx:Script> <s:BorderContainer width="100%" .............. <mx:FormItem label="企业:" indicatorGap="0"> <mx:ComboBox id="enterpriseInfo_CB_ID" dataProvider="{enterprise_info}" selectedIndex="0" editable="true" minWidth="100" change="loadReport()" keyUp="search_keyUpHandler(event)" width="200"/> </mx:FormItem> .............. </s:BorderContainer> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |