如何向事件监听器传送额外的参数
来源:互联网 发布:Windows icinga监控 编辑:程序博客网 时间:2024/05/17 00:13
如何向事件监听器传送额外的参数
问题摘要
在FLEX文档中所述的是,如果你要向监听器传送参数,那么你最好使用MXML标签,但是在这里要展示给你的是如何使用AS脚本完成。
解决摘要
使用内联函数
解释
solution is very simple, basically for following scenario :
arbitrary button called ABCButton,function ABCButtonListener needs to listen to click event and also receive extra parameter
"myPrivateSpecialObject"object.
you do following :
private function ABCButtonListener(e:MouseEvent,specialObj:Object): void {P.S -----------------
Alert.show(specialObj.name);
}
private function methodWhereyouDostuffAndRegisterListener(): void {
var myPrivateSpecialObject:Object = {name:"Special String Ingredients for Orange"};
ABCButton.addEventListener(MouseEvent.CLICK,function (e:MouseEvent) : void {
ABCButtonListener(e,myPrivateSpecialObject);
});
}
you can use same structure to register listener for more than one button,for example :
private function methodWhereyouDostuffAndRegisterListener(): void {
var myPrivateSpecialObject:Object = {name:"Special String Ingredients for Orange"};
ABCButton.addEventListener(MouseEvent.CLICK,function (e:MouseEvent) : void {
ABCButtonListener(e,myPrivateSpecialObject);
});
myPrivateSpecialObject = {name:"Special Ingredients for Apple"};
OtherButtonButton.addEventListener(MouseEvent.CLICK,function (e:MouseEvent) : void {
ABCButtonListener(e,myPrivateSpecialObject);
});
}
above code registers same listener for two buttons but before registering second listener , we try to modify
myPrivateSpecialObjectso, reference is changed to have different value, but if you assume now each listener received different value , its not correct, they will both received latest assigned value . overall inline function is good technique to pass any number of parameters to a listener as long as listener is ready for those parameters.
Related files for download
bin-release1.zip
main.swf
- 如何向事件监听器传送额外的参数
- flex注册监听器带额外参数的解决
- 向filter过滤器中的request对象添加额外的参数
- 【PB】如何向窗口传送多个参数?
- Click事件传送参数
- Jquery dataTable 向服务器传额外参数
- 从UBOOT向内核驱动传送参数
- Servlet的事件监听器
- Servlet的事件监听器
- extjs store load 额外参数的应用
- DataTable额外传参数的方法
- form提交时,传递额外的参数
- Python用额外的参数控制行为
- 使用ParameterizedThreadStart委托向线程函数传送参数
- AFNetworking 同时向服务端传送参数+图片
- J2ME:rms的事件监听器
- J2ME:rms的事件监听器
- java_事件监听器的实现
- setClipboard
- JTextArea
- 居安思危·思则有备·有备无患
- JTree
- Layout
- 如何向事件监听器传送额外的参数
- SwingSpeciality
- select 实例
- c/c++面试试题(一)
- Xml Dom常用方法举例
- 七种排序算法
- 多路归并的外排序
- 第一帖
- 多路归并的外排序