如何在as3中将字符串转换为实例名称

时间:2013-07-02 07:39:05

标签: actionscript-3

我在图书馆里有一个符号,在舞台上我有十二个符号对象。 每个符号都有一个实例名称,来自a-l

此外,我还有12个实体名称(图片)的对象,来自1-12

我点击了图片中的一个对象,我可以从数组中提取名称对象(a-l)但不能访问。

如何在as3

中将字符串转换为实例名称
    var abc:Array = ["0","a","b","c","d","e","f","g","h","i","j","k","l"];


    function item_onMouseUp(event:MouseEvent):void
    {

        var clip:Sprite = Sprite(event.currentTarget);
        var c:int = int(clip.name);
        trace("abc[c]=" +[abc[c]]);

 //The problem here
        if (clip.hitTestObject([abc[c]]))
        {
                trace("===");
            }

        clip.stopDrag();
    }

以跟踪胜利为例,我得到了

abc[c]=d
TypeError: Error #1034: Type Coercion failed: cannot convert "d" to flash.display.DisplayObject.
    at gamewitoutserver_fla::MainTimeline/item_onMouseUp()

1 个答案:

答案 0 :(得分:0)

if (clip.hitTestObject(this[abc[c]]))
    {
            trace("===");
    }

要通过字符串处理对象属性(即您在设计时使用实例名称添加的命名显示对象),请使用this[string]