Как передать аргумент в addEventListener (сценарий действия)

#actionscript-3 #actionscript

#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:

Попробуйте использовать «currentTarget» вместо «target»:

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

И обязательно добавьте трассировку в прослушиватель, чтобы точно знать, вызвана она или нет.