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 的 selectedIndexselectedChild 属性更改时广播到所有注册的侦听器。只有当 selectedChildselectedIndex 的值是由用户的鼠标单击或按键动作更改的时才会广播该事件,而当它是由 ActionScript 更改的时,则不会广播该事件。在过渡动画出现之前广播该事件。

组件使用调度程序/事件侦听器模型。Accordion 组件会在它的其中一个按钮被单击时调度 change 事件,该事件由您创建的侦听器对象 (listenerObject) 上的函数(也称作处理函数)来处理。您需要调用 addEventListener() 方法并将对处理函数的引用作为参数传递给它。

该事件被触发时,会自动将一个事件对象 (eventObject) 传递到处理函数。每个事件对象的属性都包含有关事件的信息。您可以使用这些属性来编写处理该事件的代码。有关详细信息,请参阅"EventDispatcher 类"

Accordion change 事件同时包含两个独有的事件对象属性:

示例

以下示例使用一个名为 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);