flex中的动态实现remoteobject
在flex中,一般直接在设计时写remoteobject的话,这个是比较普遍了,但有的时候,需要在AS代码中动态设置
remoteobject,这个比较少见,所以小结学习之:
情景是,当页面加载时,代码新建立一个remoteobject,然后设置其方法和调用参数,最后把调用返回的结果(是JAVA中的一个LIST),绑定到
一个repeater控件中去,下面来看代码:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="firstload()" width="706" height="417">
[Bindable]
private var posArray:ArrayCollection = new ArrayCollection();
private function firstload():void
{
var categoryremote:RemoteObject=new RemoteObject();
categoryremote.destination="categoryservice";
var o:AbstractOperation = categoryremote.getOperation("getCategoriesByPidflex");
o.send(144);
o.addEventListener(ResultEvent.RESULT, resultEvent);
}
//remoteobject返回的list
private function resultEvent(event:ResultEvent):void{
posArray = event.result as ArrayCollection;
r.dataProvider=posArray;
}
private function findAllFaultHandler(event:FaultEvent):void
{
Alert.show(event.fault.faultString, "Error");
}
注意用o.send中,包含了要发送的参数, o.addEventListener(ResultEvent.RESULT, resultEvent)中,处理返回的结果事件。
<mx:Repeater id="r">
&
相关文档:
Flex framework有提供Resource Bundle,用于对外部资源的引用。
而其一个基本的用法就是用于应用程序的Localization,让程序根据不同的locale显示不同的文字,图片。换句话,你必须为每个locale准备一套asset。
在具体应用的时候,你通常要决定使用以下两个策略。下面以引用外在的一句文字做例子。
策略一:编译时设定
......
第一步: *.mxml文件中
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal"
creationComplete="playLoad()" color="#0F7085" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#FFFFFF, #FFFFFF]">
<m ......
1.在flex里面显示查询后的list集合数据
private var model:ModelConfig=ModelConfig.getOne();
ModelCong类中存放一些全局的东西要实现接口implements IModelLocator
(如public var root:String="http://192.168.1.68:8090/OA";--系统数据,
public var users:UsersVO=new UsersVO();用来存储信息的变量, ......
1.flex端
<mx:Button id="upload" label="上传文件" click="ExternalInterface.call('openUpload');"/>
2后台
2.1 openUpload是后台的js脚本(jsp)
function openUpload(){
var url="/OA/service/upload.jsp";
newWin=jscomNewWinOpenByS ......