您的位置:首页 > 其它

addEventListener注册事件进行传递参数的方法

2008-01-23 16:25 369 查看
CODE:
/**闪吧新社区z2E#G2NX V,|f y3E&a0M*p
*  @author:ycccc8202
hXD'SN5d,j0*  @用途:注册事件进行传递参数的代理类闪吧新社区h6u_XG&m
*  @date:2007.8.26闪吧新社区3Mo }4KYP
*  @example:
:XDn3xG-g:uf6E2c0* import  com.ycccc.utils.JEventDelegate
4r,[|!Ud4J3]0  stage.addEventListener(MouseEvent.MOUSE_DOWN,JEventDelegate.create(mouseDownHandler,"a","b"));闪吧新社区$S.L W+YS3y"vM
function  mouseDownHandler(e:MouseEvent,...arg) {
a%T(q3C&v@9u0  trace(e)闪吧新社区3vj O1I b:UR&l
trace(arg)
M /G*@ AFf0  }
G`Iu9G1pf$t8m1B0*/闪吧新社区Fe0G8Ga p
package com.ycccc.utils{闪吧新社区b |pxK)L'z
public class JEventDelegate  {
6y6SD3Z J([!Q/0  public function  JEventDelegate() {
yb|:QUlxv0  }闪吧新社区:R IW.K]
public static function  create(f:Function,... arg):Function {闪吧新社区D!P)/.WD2A/Y*b|
var  F:Boolean=false;
t;]|$^d/z]0   var  _f:Function=function(e:*,..._arg){闪吧新社区4Y-v;h4h9|(Q3|2U8/
_arg=arg
*/ E/o7At0   if(!F){闪吧新社区7yrY!o.y'lDM
F=true
%i I(t3J'k1oDbQ6x0y0   _arg.unshift(e)}
*{wK{7G0   f.apply(null,_arg)闪吧新社区,U[;QV]2El#p5}-B+f
};
u]0HHXiG0   return _f;
GX2d9Y~0  }
tU:/7mFaz0  public static function  toString():String {闪吧新社区&y6F5Qd@0Y$w|3W
return "Class  JEventDelegate";
2l  p&B9YAACi0  }
;Uz  `YLG0}
#eQZ#m%kY}1[0}
使用格式如下:闪吧新社区V2]1Q8VvCC

:yv(A(q.x@0import com.ycccc.utils.JEventDelegate
@a6m^'gK0 stage.addEventListener(MouseEvent.MOUSE_DOWN,JEventDelegate.create(mouseDownHandler,"a","b"));闪吧新社区wR3TJ pNpq Pf
function mouseDownHandler(e:MouseEvent,...arg) {
&Q*E7W~%]L0 trace(e)闪吧新社区a'P#K3R-?iD
trace(arg)
&Q$lk;b7|eE1?0 }闪吧新社区}~&Yw Y cY2v3^w

#Y1t(qx,h/z2J[0//这样的好处是既保留了原有的event参数,又能够传递新的参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐