转载:
http://www.dlog.cn/kawais/diary/15663853
在flex里通过addEventListener函数给控件动态加载click事件侦听函数时,除了事件本身传递的Event类型参数外,还需要传递更多的参数,在网上找了一段代码,用起来还不错,张贴到这里。
package
{
public class EventArgExtend
{
public function EventArgExtend()
{
}
public static function create(f:Function,... arg):Function
{
var F:Boolean=false;
var _f:Function=function(e:*,..._arg)
{
_arg=arg
if(!F)
{
F=true
_arg.unshift(e)
}
f.apply(null,_arg)
};
return _f;
}
public static function toString():String
{
return "Class JEventDelegate";
}
}
}
=========================================== 使用的方式:
txtShow.addEventListener(MouseEvent.CLICK,EventArgExtend.create(clickHandler,1,"str"));
private function clickHandler(e:Event,...arg):void
{
Alert.show(arg[0].toString());
Alert.show(arg[1].toString());
}
还有另外一个方法,没有封装效果,不过代码更加容易理解:
var sayHello:String = "欢迎光临www.FlashJ.cn -Flash,Ria技术博客";
btn1.addEventListener(MouseEvent.CLICK,function (e:MouseEvent){clickHandlerWithArg(e,sayHello)});
function clickHandlerWithArg(e:MouseEvent,arg:String):void
{
var out:String= e.target + "发出事件(有参数) :" + arg;
trace(out);
}
分享到:
相关推荐
具体的实现方式可能包括事件监听、回调函数、类方法调用等。通过阅读和分析这些代码,可以更好地理解上述概念。 总之,"Flex中函数传值调用Demo"是一个实践性的教程,旨在帮助开发者理解和掌握在Flex环境中如何有效...
接下来,我们编写处理这些事件的回调函数。在`onConnect`中,我们可以开始发送和接收数据;在`onData`中,解析接收到的数据并显示在聊天室界面上;`onError`处理任何错误;`onClose`则处理连接关闭的情况。 聊天室...
当鼠标在舞台上移动时,这个事件会被触发,我们可以在这个事件的回调函数中更新图片的位置。 三、显示对象的属性 图片在Flex中通常表示为BitmapData或Sprite对象。我们可以通过设置它们的x和y坐标属性来改变位置。...
可以使用`addEventListener`方法添加监听器,并实现相应的回调函数。 4. **显示和关闭逻辑**: - 自定义Alert的显示和关闭逻辑可以通过调用`show()`和`close()`方法实现,或者根据需要重写这些方法以适应特定场景...
2. **事件监听**:在上述代码中,`Event.COMPLETE`事件监听器用于在GIF加载完成后执行回调函数。这确保了GIF图像已经完全加载并准备播放。 3. **帧速率控制**:虽然GIF自身包含了帧速率信息,但在Flex中,你可能...
- **避免回调堆积**:在高频率触发计时器的情况下,如果处理不当,可能会导致回调函数堆积,从而影响程序性能。 - **兼容性和跨平台支持**:在不同的平台上部署Flex应用程序时,需要注意计时器的行为是否一致。 ...
定义定时器的回调函数 `onTimer`,该函数将在每次定时器触发时执行。在函数内部,首先清空图形层中的所有内容,然后根据计数器的奇偶性决定是否重新绘制 Polyline。 ```as3 private function onTimer(event:...
通过调用`loadModule()`方法,并提供模块的URL和加载完成后的回调函数,可以实现动态加载。例如: ```actionscript var moduleLoader:ModuleLoader = new ModuleLoader(); moduleLoader.url = "MyModule.swf"; ...
后端处理请求后,通过回调函数将结果返回给前端。 7. **状态管理和数据管理** Flex提供了强大的状态管理机制,如ViewStack和FormNavigator,可以轻松处理不同页面间的交互和数据传递。同时,ModelLocator和Service...
例如,使用`addEventListener`方法添加事件监听器,并实现相应的回调函数。 7. **状态管理**:Flex 4中的State机制允许根据不同的应用状态改变界面布局。在登录DEMO中,可能有登录前后的不同状态,比如错误提示状态...
通过`addCallback`方法注册回调函数,可以让JS调用Flex中的方法。例如,我们可以在Flex中创建一个获取播放位置的方法: ```actionscript private function getPlaybackPosition():Number { return myPlayer.current...
3. 在弹出窗口关闭时,可能需要将结果返回给主程序,同样可以通过事件或回调函数实现。 四、最佳实践 在设计Flex应用时,确保数据传递的清晰性和可维护性至关重要。遵循以下最佳实践: - **避免全局变量**:尽...
创建一个Timer对象,设置延迟时间和回调函数。 9. **源码和工具**:标签中提到的“源码”和“工具”可能指的是用于处理WAV播放的示例代码或辅助工具。例如,可能会有第三方库或自定义组件帮助简化Flex中的音频处理...
这通常通过`requestAnimationFrame`函数来实现,它会在浏览器下一次重绘之前调用指定的回调函数。 4. **DOM操作**:在翻页过程中,可能需要对DOM元素进行添加、删除或修改,以反映当前的翻页状态。 接下来,我们...
在点击事件的回调函数内,我们可以实现放大图片的功能。一种常见的方法是创建一个新的`<div>`,作为图片的放大视窗,并将其设置为全屏或弹出窗口样式。首先,我们需要在HTML中添加这个`<div>`: ```html ;"> ```...
5. 边界检测与循环逻辑:用条件语句判断图片是否到达边界,并执行相应的回调函数。 总的来说,“js两张图片并列循环滚动图片特效”是一个结合了JavaScript、CSS和HTML技术的网页互动组件,它提供了一种高效且灵活的...
7. **可配置性**:为了让这个对话框组件更灵活,它可能允许开发者传递参数来定制对话框的标题、内容、按钮、图标等,甚至支持回调函数来处理用户操作。 8. **示例代码**:提供的完整注释和示例对于初学者来说是非常...
1. 事件监听:通过`addEventListener`函数,我们可以监听用户的点击事件,并执行相应的回调函数,如展示或隐藏详情页面。 2. DOM操作:使用`document.querySelector`或`document.querySelectorAll`选取需要操作的...
`会在连接成功时触发回调函数。 3. **数据发送**:通过`writeUTFBytes`或`writeUTF`方法向服务器发送字符串数据,如`socket.writeUTFBytes("发送的数据");`。 4. **数据接收**:当接收到数据时,`data`事件会被...
在这个回调函数中,我们可以操作CSS样式来实现弹出效果。一种常见的方式是改变菜单元素的`display`属性。默认情况下,菜单可以设置为`display: none`使其隐藏,然后在点击事件触发时切换到`block`或`flex`以显示菜单...