0

这是我的代码,当我跟踪(this[myButton])给我未定义时,当我发布它时给我错误:

TypeError:错误#1010:术语未定义且没有属性。在 MethodInfo-447()

var buttonsArray:Array = [];

for (var i:int=1;i<allContacts.length+1;i++){

var id:String = "id_";

var b:String = i.toString();

var buttonsvalue:Object =  id + b ; 

buttonsArray[i] = buttonsvalue;

this[buttonsvalue].addEventListener(MouseEvent.CLICK, display_label);

function display_label(e:MouseEvent):void {

var myButton = (e.target.name)

var mySprite:Sprite = new Sprite();

mySprite.graphics.beginFill(0xFFCC00);

mySprite.graphics.drawCircle(10, 10, 10);

mySprite.x=this[myButton].x-6;

mySprite.y=this[myButton].y-6;

addChild(mySprite);
}
4

1 回答 1

0

尝试

mySprite.x=e.target.x-6;

如果使用 this[targetName],targetName 应该是 displayObject 的 id,而不是 displayObject 的名称。

于 2013-06-26T09:46:23.267 回答