是否可以将字符串转换为对象的引用?

时间:2010-07-06 18:15:06

标签: flash actionscript-3

我想知道,如果我只能在字符串中拥有对象实例的名称,是否可以访问和使用对象的特定实例?下面的代码可能会更好地解释它。

public function myFunction(){
    var myArbItem:mcArbItem = new mcArbItem();
    //mcSomeItem has another movieclip on it called 'itemLogo'

    //elsewhere there is an object called ArbItem
    ArbItem.addEventListener(MouseEvent.CLICK, showItem)
}

private function showItem(e:MouseEvent){
    var objectName:String = 'my' + e.target.name;
    //now I have the name of the object, that is myArbItem, can I with this
    //information e.g. set "myArbItem.itemLogo.visible = false;" 
    //or "addChild(myArbItem);"?
}

2 个答案:

答案 0 :(得分:3)

使用getChildByName功能。

答案 1 :(得分:0)

您也可以通过以下方式执行此操作:

var objectName = ["my"]+e.target.name;

应强制将其输入影片剪辑或:

var objectName:MovieClip = ["my"]+e.target.name as MovieClip;

我之前使用过这些方法并且效果很好。我在循环中使用它很多,我动态创建对象,需要稍后再引用它们。