ボタンオブジェクトに対して、ロールオーバー、ロールアウト、クリックをまとめて設定するスクリプトです。
ロールオーバー、ロールアウト、クリックのイベントリスナーごと、関数内に記述して、内包しているリスナーの関数を実行しています。リスナーの関数は一つだけ書いて、イベントタイプの文字列で振り分けるようにしています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| setButton(button, "test");
//ボタンにロールオーバー、ロールアウト、クリックの設定
function setButton(button:DisplayObject, str:String):void {
button.addEventListener(MouseEvent.ROLL_OVER, mouseEvent);
button.addEventListener(MouseEvent.ROLL_OUT, mouseEvent);
button.addEventListener(MouseEvent.CLICK, mouseEvent);
//イベントのタイプで処理を振り分け
function mouseEvent(event:MouseEvent):void {
switch (event.type) {
case "rollOver": //ロールオーバーのとき
button.alpha = 0.5;
trace(str+"over");
break;
case "rollOut": //ロールアウトのとき
button.alpha = 1;
trace(str+"out");
break;
case "click": //クリックのとき
button.alpha = 0;
trace(str+"click");
break;
}
}
} |
setButton(button, "test");
//ボタンにロールオーバー、ロールアウト、クリックの設定
function setButton(button:DisplayObject, str:String):void {
button.addEventListener(MouseEvent.ROLL_OVER, mouseEvent);
button.addEventListener(MouseEvent.ROLL_OUT, mouseEvent);
button.addEventListener(MouseEvent.CLICK, mouseEvent);
//イベントのタイプで処理を振り分け
function mouseEvent(event:MouseEvent):void {
switch (event.type) {
case "rollOver": //ロールオーバーのとき
button.alpha = 0.5;
trace(str+"over");
break;
case "rollOut": //ロールアウトのとき
button.alpha = 1;
trace(str+"out");
break;
case "click": //クリックのとき
button.alpha = 0;
trace(str+"click");
break;
}
}
}
|