C# 代码转换为 Flex 代码:自付比例选择实现
mx:Script <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.events.FlexEvent;
private var zfbl:Number = 0;
private function zfblSelect():void {
var zfblRes:String = seiproxy1.getvarstring('zfbl');
CommonDatacClass.WriteTextLog(CommonDatacClass.User_YlJgBm, action, zfblRes);
var zfbls:Array = zfblRes.split('/');
var zfblData:ArrayCollection = new ArrayCollection();
var count:int = 0;
var zfblEach:Number = 0;
for (var k:int = 0; k < zfbls.length - 1; k++) {
if (!zfblData.contains(zfbls[k])
&& (zfbls[k].indexOf(xzbz) > -1 && (zfbls[k].indexOf(rqlb) > -1 || zfbls[k].indexOf(rqlbZGJM) > -1))
//&& zfbls[k].indexOf(yltclb) > -1 && zfbls[k].indexOf(yyjbNo) == -1 && zfbls[k].indexOf(yyjb2) == -1 && zfbls[k].indexOf(yyjb3) == -1 && (zfbls[k].indexOf(yyjb1) > -1 || zfbls[k].indexOf(yyjb) > -1)
) {
count++;
zfblData.addItem({label: count.toString(), value: 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', function(event:Event):void {
zfbl = frmZfbl.Zfbl;
});
PopUpManager.addPopUp(frmZfbl, this, true);
PopUpManager.centerPopUp(frmZfbl);
} else {
var resultString:String = zfbls[0];
var zfblStr:String = resultString.split('#v')[0];
zfbl = Number(zfblStr);
}
}
]]>
</mx:Script> <mx:Button label='选择自付比例' click='zfblSelect()'/> <共用窗体:frmZfblSelect id='frmZfbl' includeIn='zfblSelect' zfblSelected='zfbl = frmZfbl.Zfbl' xmlns:共用窗体='曹县城乡居民医疗保险报销系统.共用窗体'/>
其中,frmZfblSelect 类需要在同一个文件夹下,命名为frmZfblSelect.mxml,引用方式如上所示。在点击“选择自付比例”按钮时,会执行zfblSelect() 函数,其中包含了原来的代码逻辑。当选择多个自付比例时,会弹出一个frmZfblSelect 窗口供用户选择,选择完毕后会派发一个“zfblSelected”事件,该事件会被上面的代码捕获,从而得到选择的自付比例zfbl。
原文地址: http://www.cveoy.top/t/topic/oUAw 著作权归作者所有。请勿转载和采集!