ActionScript3.0覚書 イベントハンドラに引数を与える

すぐに忘れてしまうのでメモ。

同様の処理をさせたいのに、いちいち別のFunctionを作るのはメンドー!なときのやり方。
以下は、左ボタン・右ボタンで、同じMovieClipを左右に動かしたいときの方法。
moveHandlerの引数に、移動距離を与えて左右に動かすようにしている。

// 呼出元
LeftButton.addEventListener(MouseEvent.CLICK, moveHandler(-10));
RightButton.addEventListener(MouseEvent.CLICK, moveHandler(10));

//呼出先
function moveHandler(x_pos:Number = 0):Function {
	return function(e:MouseEvent):void {
		// MovieClipを左右に動かす
		mc.x += x_pos; 
	}
}

Add a Comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください