C# 代码转换为 Flex 代码,包含 frmZfblSelect 引用
fx:Script <![CDATA[ import mx.collections.ArrayList; import mx.controls.Alert; import mx.events.FlexEvent;
private var zfbl:Number = 0;
private var zfblData:Dictionary = new Dictionary();
private function init():void {
var zfblRes:String = '这里填写从 seiproxy1.getvarstring('zfbl') 获取到的字符串';
CommonDatacClass.WriteTextLog(CommonDatacClass.User_YlJgBm, action, zfblRes);
var zfbls:Array = zfblRes.split('/');
var count:int = 0;
var zfblEach:Number = 0;
for (var k:int = 0; k < zfbls.length - 1; k++) {
if (!zfblData.hasOwnProperty(zfbls[k]) && (zfbls[k].indexOf(xzbz) != -1 && (zfbls[k].indexOf(rqlb) != -1 || zfbls[k].indexOf(rqlbZGJM) != -1))) {
count++;
zfblData[count.toString()] = zfbls[k];
zfblEach = Number(zfbls[k].split('#v')[0]);
}
}
if (count == 1) {
zfbl = zfblEach;
} else if (count >= 2) {
var frmZfbl:frmZfblSelect = new frmZfblSelect();
frmZfbl.Bm = yyxmbm;
frmZfbl.Mc = yyxmmc;
frmZfbl.zfblData = zfblData;
frmZfbl.addEventListener('zfblSelected', zfblSelectedHandler);
PopUpManager.addPopUp(frmZfbl, this, true);
PopUpManager.centerPopUp(frmZfbl);
} else {
var resultString:String = zfbls[0];
var zfblStr:String = resultString.split('#v')[0];
zfbl = Number(zfblStr);
}
}
private function zfblSelectedHandler(event:Event):void {
zfbl = frmZfblSelect(event.target).Zfbl;
}
]]>
</fx:Script>
fx:Declarations <s:FormItem label='自付比例'> <s:Label text='{zfbl}' /> </s:FormItem>
<fx:Component className='frmZfblSelect'>
<s:TitleWindow>
<fx:Script>
<![CDATA[
import mx.collections.ArrayList;
import mx.events.FlexEvent;
[Bindable]
private var bm:String = '';
[Bindable]
private var mc:String = '';
//[Bindable]
//private var zfblStr:String = '';
[Bindable]
private var zfbl:Number = 0;
[Bindable]
private var zfblDataProvider:ArrayList = new ArrayList();
public var zfblData:Dictionary;
private function init():void {
txtBm.text = bm;
txtMc.text = mc;
for (var key:String in zfblData) {
zfblDataProvider.addItem({label:zfblData[key], data:key});
}
cmb_zfbl.dataProvider = zfblDataProvider;
cmb_zfbl.addEventListener(Event.CHANGE, cmb_zfbl_changeHandler);
cmb_zfbl.selectedIndex = 0;
}
private function cmb_zfbl_changeHandler(event:Event):void {
var selectedZfbl:String = cmb_zfbl.selectedItem.label;
zfbl = Number(selectedZfbl.split('#v')[0]);
}
private function btnOk_clickHandler(event:MouseEvent):void {
dispatchEvent(new Event('zfblSelected'));
PopUpManager.removePopUp(this);
}
]]>
</fx:Script>
<s:layout>
<s:VerticalLayout />
</s:layout>
<s:Form>
<s:FormItem label='项目编码'>
<s:Label id='txtBm' />
</s:FormItem>
<s:FormItem label='项目名称'>
<s:Label id='txtMc' />
</s:FormItem>
<s:FormItem label='自付比例'>
<s:ComboBox id='cmb_zfbl' width='100%' />
</s:FormItem>
<s:FormItem>
<s:Button label='确定' click='btnOk_clickHandler(event)' />
</s:FormItem>
</s:Form>
</s:TitleWindow>
</fx:Component>
</fx:Declarations>
fx:Inititalize init(); </fx:Inititalize>
其中,frmZfblSelect 可以通过以下方式引用:
fx:Script <![CDATA[ private function openZfblSelect():void { var frmZfbl:frmZfblSelect = new frmZfblSelect(); frmZfbl.Bm = '项目编码'; frmZfbl.Mc = '项目名称'; frmZfbl.zfblData = {'1':'自付比例1#v0.5', '2':'自付比例2#v0.6', '3':'自付比例3#v0.7'}; frmZfbl.addEventListener('zfblSelected', zfblSelectedHandler); PopUpManager.addPopUp(frmZfbl, this, true); PopUpManager.centerPopUp(frmZfbl); }
private function zfblSelectedHandler(event:Event):void {
var selectedZfbl:Number = frmZfblSelect(event.target).Zfbl;
Alert.show('已选择自付比例:' + selectedZfbl);
}
]]>
</fx:Script>
<s:Button label='选择自付比例' click='openZfblSelect()' />
原文地址: https://www.cveoy.top/t/topic/oUv8 著作权归作者所有。请勿转载和采集!