Layer クラスや
WaveSoundBuffer クラスなどは、コンストラクタに指定したオーナーの action メソッドにイベントを発生する機能があります。
action メソッドには辞書配列オブジェクトの引数が一つ渡され、ここにイベントの情報が入っています。
辞書配列のメンバのうち、 target はイベントの発生元オブジェクトを表しています。type はイベント名を表しています。
その他のメンバはイベントによって異なります。たとえば、
Layer.onClick イベントならば、x と y というメンバがあり、レイヤ上をクリックされた場所を表します。
例:
class MyWindow extends Window
{
var layer;
(略)
function MyWindow()
{
super.Window(...);
add(layer = new Layer(this , null));
layer.visible = true;
}
(略)
function action(ev)
{
if(ev.type == "onClick" && ev.target == layer)
{
System.inform(ev.x, ev.y);
}
}
}