如何在addEventListener中传递参数(Action Script)

时间:2011-04-12 23:26:37

标签: actionscript-3 actionscript

如何使用ActionScript的事件监听器传递参数?

我有代码,如下所示,它创建了一个标签,我想,当点击标签时,它应该传递与该标签相关联的工具提示。

这就是我想要做的事情:

public function create_folderpath():void
{
    for(var i:int = 0; i < fm_model.absolute_path_ac.length; i++)
    {   
        var absolutePathToolTip:String = new String;
        for(var j:int = 0; j <= i; j++)
        {                               
            absolutePathToolTip += fm_model.absolute_path_ac[j].path.toString() + '/';
        }

        var textItem:Label = new Label(); 
        textItem.data = absolutePathToolTip;                        
        textItem.toolTip = absolutePathToolTip;
        textItem.text = fm_model.absolute_path_ac[i].path.toString() + ' /';
        textItem.addEventListener(MouseEvent.CLICK, testing)                            
        directoryPathHBox.addChild(textItem);
    }
}

public function testing(e:MouseEvent)
    var direcoryLabel:Label = e.target as Label;
    Alert.show(direcoryLabel.data +"");
}

这不起作用,也没有任何错误。

拜托,我需要帮助。

提前致谢 Zeeshan

1 个答案:

答案 0 :(得分:1)

尝试使用“currentTarget”而不是“target”:

var direcoryLabel:Label = e.currentTarget as Label;
Alert.show(direcoryLabel.data +"");

并确保在侦听器中添加一条跟踪,以确定是否已调用它。