尝试从AS3中的鼠标事件返回目标名称

时间:2013-07-03 12:32:12

标签: actionscript-3 actionscript

我是AS3的新用户,我试图通过使用简单的getValue函数从鼠标单击中获取目标名称,但是我收到错误1067:将类型void的值隐式强制转换为不相关的类型String。我不确定我做错了什么。

var _userInput:String = new String();
_userInput = btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):String{
   return e.target.name;
}

这可能是我正在犯的一个简单错误,但我不知道它是什么。提前谢谢。

3 个答案:

答案 0 :(得分:2)

你实际上不能这样做,因为addEventListener返回 void 而不是侦听器函数返回的类型(String)。

[Bindable] var targetName:String;

var _userInput:String = new String();
_userInput = targetName;
btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):void{
targetName = e.target.name;
}

答案 1 :(得分:1)

btn_0.mouseChildren=false
btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):void{
    trace(e.target.name);
}

答案 2 :(得分:0)

假设您已为按钮指定了实例名称btn_0

var _userInput:String;

btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):void{
_userInput = e.target.name;
trace(_userInput);
}