ActionScript 2.0 组件语言参考 |
|
|
|
| Accordion 组件 > Accordion.change | |||
Flash Player 6 (6.0.79.0)。
Flash MX Professional 2004。
用法 1:
var listenerObject:Object= new Object();listenerObject.change = function(eventObject:Object) { //在此处插入您的代码。 }; accordionInstance.addEventListener("change",listenerObject);
用法 2:
on (change) {
// 在此处插入您的代码。
}
事件;当 Accordion 的 selectedIndex 和 selectedChild 属性更改时广播到所有注册的侦听器。只有当 selectedChild 或 selectedIndex 的值是由用户的鼠标单击或按键动作更改的时才会广播该事件,而当它是由 ActionScript 更改的时,则不会广播该事件。在过渡动画出现之前广播该事件。
组件使用调度程序/事件侦听器模型。Accordion 组件会在它的其中一个按钮被单击时调度 change 事件,该事件由您创建的侦听器对象 (listenerObject) 上的函数(也称作处理函数)来处理。您需要调用 addEventListener() 方法并将对处理函数的引用作为参数传递给它。
该事件被触发时,会自动将一个事件对象 (eventObject) 传递到处理函数。每个事件对象的属性都包含有关事件的信息。您可以使用这些属性来编写处理该事件的代码。有关详细信息,请参阅"EventDispatcher 类"。
Accordion change 事件同时包含两个独有的事件对象属性:
newValue 数字;将要选择的子项的索引。prevValue 数字;以前选中的子项的索引。以下示例使用一个名为 my_acc 的 Accordion 实例,其中包含三个子面板,分别标记为"Shipping Address"(发运地址)、"Billing Address"(开单地址)和"Payment"(付款)。代码定义了一个名为 my_accListener 的处理函数,并将该处理函数作为第二个参数传递给 my_acc.addEventListener() 方法。change 处理函数在 eventObject 参数中捕获该事件对象。在广播 change 事件时,会将 trace 语句发送到"输出"面板。
// 创建新的侦听器对象。
var my_accListener:Object = new Object();
my_accListener.change = function() {
trace("Changed to different view");
// 将子面板的标签分配给变量。
var selectedChild_str:String = my_acc.selectedChild.label;
// 基于所选的子项执行操作。
switch (selectedChild_str) {
case "Shipping Address":
trace("One was selected");
break;
case "Billing Address":
trace("Two was selected");
break;
case "Payment":
trace("Three was selected");
break;
}
};
my_acc.addEventListener("change", my_accListener);
|
|
|
|