2

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

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

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

这可能是我正在犯的一个简单错误,但我没有看到它是什么。提前致谢。

4

3 回答 3

3

您实际上不能那样做,因为 addEventListener 返回void而不是侦听器函数返回的类型(字符串)。

[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;
}
于 2013-07-03T13:09:01.717 回答
2
btn_0.mouseChildren=false
btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):void{
    trace(e.target.name);
}
于 2014-03-08T14:33:55.950 回答
0

假设你给你的按钮一个实例名称 btn_0

var _userInput:String;

btn_0.addEventListener(MouseEvent.CLICK, getValue);

function getValue(e:MouseEvent):void{
_userInput = e.target.name;
trace(_userInput);
}
于 2013-07-03T13:07:30.550 回答