![]() ![]() | |
Flash Player 6.0.79。
Flash MX 2004。
用法 1:
on(click){
...
}
用法 2:
listenerObject= new Object();listenerObject.change = function(eventObject){...}stepperInstance.addEventListener("change",listenerObject)
事件;当步进器的值更改时向所有已注册的侦听器广播。
第一个用法范例使用一个 on() 处理函数,并且必须直接附加到一个 NumericStepper 组件实例。附加到组件的 on() 处理函数内部使用的关键字 this 是指该组件实例。例如,下列代码附加到步进器 myStepper,它将“_level0.myStepper”发送到“输出”面板:
on(click){
trace(this);
}
第二个用法范例使用一个调度程序/侦听器事件模型。组件实例 (stepperInstance) 调度一个事件(在本例中为 change),而该事件由附加到您创建的侦听器对象 (listenerObject) 的函数处理。您定义一个与侦听器对象上的事件同名的方法;当该事件被触发时,就会调用该方法。该事件被触发时,它会自动将一个事件对象 (eventObject) 传递到侦听器对象方法。每个事件对象都有一组属性,这些属性包含有关该事件的信息。您可以使用这些属性来编写处理该事件的代码。最后,对广播该事件的组件实例调用 UIEventDispatcher.addEventListener() 方法,以将侦听器注册到实例。当该实例调度该事件时,就会调用该侦听器。
有关事件对象的详细信息,请参阅事件对象。
此范例是在时间轴上的某一帧上编写的,它会在一个名为 myNumericStepper 的步进器发生更改时向“输出”面板发送一条消息。代码的第一行创建一个名为 form 的侦听器对象。第二行代码为侦听器对象的 change 事件定义一个函数。该函数内部有一个 trace 动作,它使用自动传递到该函数的事件对象(在本例中是 eventObj)来生成消息。事件对象的 target 属性是生成该事件的组件,在这个范例中是 myNumericStepper。从事件对象的 target 属性中可以访问 NumericStepper.value 属性。最后一行从 myNumericStepper 调用 UIEventDispatcher.addEventListener() 方法,并把 change 事件和 form 侦听器对象作为参数传递给该方法,如下所示:
form = new Object();
form.change = function(eventObj){
// eventObj.target 是生成 change 事件的组件,
// 即,“数字步进器”。
trace("Value changed to " + eventObj.target.value);
}
myNumericStepper.addEventListener("change", form);
![]() ![]() | |