FlashでaddEventListener
する時、関数に引数を渡したくなりませんか?私はなります。のでメモ。
ActionScript3.0
stage.addEventListener(MouseEvent.CLICK, hoge("ほげほげ"));
function hoge(hogehoge:String):Function {
return function(e:MouseEvent):void {
trace(hogehoge);
// ステージをマウスクリックで hogehoge(ほげほげ)を出力
}
}
何かこう、めんどいな…
なお、ここで追加した無名関数を削除するには、arguments.callee
を使います。
ActionScript3.0
stage.removeEventListener(MouseEvent.CLICK, arguments.callee);
うっかり消し忘れにご注意。