Signals框架介绍(三)原生事件

注意:本文参考An introduction to AS3 Signals写成,但不是翻译,有增删改。


原生事件

为了达到替换AS3事件机制的目的,Signals当然包含了对AS3原生事件的支持。这依赖于NativeSignal类。

下面的范例演示了如何在Stage上添加单击事件。由于一看就懂,这里就不废话解释了。

[NativeSignalSample.as]

package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import org.osflash.signals.natives.NativeSignal;

[SWF(width=500,height=300,frameRate=30,backgroundColor=0xFFFFFF)]
/**
 * 测试原生事件
 * @author zrong(zengrong.net)
 */
public class NativeSignalSample extends Sprite 
{
    public function NativeSignalSample()
    {
        _click = new NativeSignal(this.stage, MouseEvent.CLICK, MouseEvent);
        _click.add(handler_click);
        //测试只发生一次的点击事件
        //_click.addOnce(handler_click);
    }

    private var _click:NativeSignal;

    private function handler_click($evt:MouseEvent):void
    {
        trace('currentTarget:',$evt.currentTarget);
        trace('target:',$evt.target);
    }
}
}

其它资料