Flash Player 6.0.79。
Flash MX 2004。
用法 1:
on(click){
...
}
用法 2:
listenerObject
= new Object();listenerObject
.click = function(eventObject
){...
}radioButtonGroup
.addEventListener("click",listenerObject
)
事件;在单选按钮上单击鼠标(按下然后松开)或使用箭头键选中单选按钮时,向所有已注册的侦听器广播。当单选按钮组具有焦点,但组内没有单选按钮被选中时,如果按空格键或箭头键,该事件也会广播。
第一个用法范例使用 on()
处理函数,必须直接附加到 RadioButton 组件实例。附加到组件的 on()
处理函数内部使用的关键字 this
是指该组件实例。例如,附加到单选按钮 myRadioButton
的以下代码将“_level0.myRadioButton”发送到“输出”面板:
on(click){ trace(this); }
第二个用法范例使用一个调度程序/侦听器事件模型。组件实例 (radioButtonInstance
) 调度一个事件(在本例中为 click
),而该事件由附加到您创建的侦听器对象 (listenerObject
) 的函数处理。您定义一个与侦听器对象上的事件同名的方法;当该事件被触发时,就会调用该方法。该事件被触发时,它会自动将一个事件对象 (eventObject
) 传递到侦听器对象方法。该事件对象有一组属性,这些属性包含有关事件的信息。您可以使用这些属性来编写处理该事件的代码。最后,对广播该事件的组件实例调用 UIEventDispatcher.addEventListener()
方法,以将侦听器注册到实例。当该实例调度该事件时,就会调用该侦听器。
有关事件对象的详细信息,请参阅事件对象。
本范例是在时间轴的某帧上编写的,当 radioGroup
中的某个单选按钮被单击时向“输出”面板发送一条消息。代码的第一行创建一个名为 form
的侦听器对象。第二行代码为侦听器对象上的 click
事件定义一个函数。该函数内部有一个 trace
动作,它使用自动传递到该函数的事件对象(在本例中是 eventObj
)来生成消息。事件对象的 target
属性是生成该事件的组件。您可以从 target
属性访问实例属性(本例中访问 RadioButton.selection
属性)。最后一行从 radioGroup
调用 UIEventDispatcher.addEventListener()
方法并将 click
事件和 form
侦听器对象作为参数传递给它,如下所示:
form = new Object(); form.click = function(eventObj){ trace("The selected radio instance is " + eventObj.target.selection); } radioGroup.addEventListener("click", form);
下列代码还会在单击 radioButtonInstance
时向“输出”面板发送一条消息。on()
处理函数必须直接附加到 radioButtonInstance
,如下所示:
on(click){ trace("radio button component was clicked"); }