自分は2つの方法を使ってます。てかそれ以外のやり方は知らない。
グローバル変数を増やしたくないときとかに使ってます。
クリック数をカウントするプログラム。
2つ目と3つ目は基本的にやってることは変わらないと思う。
// グローバル変数を使う public class event extends Sprite { private var a:int = 0; public function event()//constructor { stage.addEventListener(MouseEvent.CLICK, onClick); } private function onClick(e:MouseEvent):void { trace(++a); } }
// Functionを返す関数を作る public class event extends Sprite { public function event()//constructor { var a:int = 0; stage.addEventListener(MouseEvent.CLICK, onClick(a)); } private function onClick(a:int):Function { return function(e:MouseEvent):void { trace(++a); }; } }
// 無名関数使う public class event extends Sprite { public function event()//constructor { var a:int = 0; stage.addEventListener(MouseEvent.CLICK, function(e:MouseEvent):void { trace(++a); }); } }
0 件のコメント:
コメントを投稿