2009年07月08日 03:54
パーマリンク | http://www.kantenna.com/cgi-bin/mt/mt-tb.cgi/472
WEBプログラム覚書::[基礎]Action Script3.0 メモ 1に引き続いてのメモ
functionはオブジェクト。Functionのインスタンス。無名関数も作れる
使うことがあるのか不明だがクロージャもいけるっぽい。
function func1() {
var i:int = 0;
return function():int {
return ++i;
}
}
var f1:Function = func1();
bt1.addEventListener(MouseEvent.CLICK, onClick);
function onClick(event:MouseEvent):void {
tbox.appendText(String(f1()) + ",");
}
ActionScript3.0では文字列、数値もオブジェクトであるが 値渡しとして扱われる。
ActionScript3.0ではイベントが発生するとイベントオブジェクトが送出される。 イベントターゲットが表示リスト内にある場合「イベントフロー」と呼ばれる経路をたどって 色々と伝わっていくらしい。
イベントフローは以下の3つの段階に分けられる。
一見わけわからない感じだけどネストされてる オブジェクトを操作する場合などに役に立つ感じ。
m_parent.addEventListener(MouseEvent.CLICK, test);
function test(event:MouseEvent):void {
var keyChange:Function = function(i):String {
var ev = ["キャプチャ段階", "ターゲット段階", "バブリング段階"];
return ev[i-1];
}
tbox.text = keyChange(event.eventPhase) + event.target.name;
}
/ 金額 : ¥ 2,940
/ 金額 : ¥ 3,444
1-5
6-10
/ 金額 : ¥ 3,465
/ 金額 : ¥ 3,150
/ 金額 : ¥ 2,699
/ 金額 : ¥ 3,497
/ 金額 : ¥ 3,675