7月 29, 2008
[as3]カスタムイベントクラス
社内ライブラリ作成で、独自作成したクラスのイベントハンドラ定義したい。
そこで、Eventクラスを拡張したカスタムイベントクラスを作成しました。
package com.company.events
{
import flash.events.Event;
public class CustomEvent extends Event
{
public static const COMPLETE:String = “com.company.events.complete”;
/**
* constructor
*/
public function CustomEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}
/**
* clone
*/
public override function clone():Event
{
return new CustomEvent(type, bubbles, cancelable);
}
}
}
{
import flash.events.Event;
public class CustomEvent extends Event
{
public static const COMPLETE:String = “com.company.events.complete”;
/**
* constructor
*/
public function CustomEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false)
{
super(type, bubbles, cancelable);
}
/**
* clone
*/
public override function clone():Event
{
return new CustomEvent(type, bubbles, cancelable);
}
}
}
※訂正(2008/07/31)
下記の注意事項を削除しました
(pv3Dのevents継承クラスにはcloneメソッドをオーバーライドしていなかったので、
必ずしも必要ではないようです)注意点は、Event のサブクラスを実装する際は、clone() メソッドを実装する必要があるということ。
○参考サイト
http://weblogs.macromedia.com/akamijo/archives/2005/12/post_5.html