0

我一直在互联网上查看此内容,但我认为,据我搜索,尚未发布任何内容(如果有,请给我一些链接)。这是一种以这种方式制作实例的方法吗?当我尝试时,出现编译错误,语法错误(“在此之前需要标识符”)。我很高兴得到你们的帮助。

这是我的代码。

var mc_Names:Array = [];

function createMovieClip(index:int):void{
    var nameOfMc:String = "mc_" + index;
    mc_Names[index] = nameOfMc;
    var this[mc_Names[index]]:MovieClip = new MovieClip();       **// this is what I'm asking if it is possible**
    this[mc_Names[index]].graphics.lineStyle(20,0x00FF00, 0.5);
    this[mc_Names[index]].graphics.moveTo(square_mc.x,square_mc.y);
    this[mc_Names[index]].graphics.lineTo(mc3.x, mc3.y);
    this[mc_Names[index]].x = 0;
    this[mc_Names[index]].y = 0;
    addChildAt(this[mc_Names[index]], 0);
    currentIndex++;
}

或者有什么方法可以使它更简单,或者通过 this[] 声明变量实例的另一种方法来动态创建这些影片剪辑实例。

4

1 回答 1

0
var index:int = 1;
var A:Array = new Array();
A[index] = "mc_1";
A[index] = new MovieClip();
A[index].graphics.lineStyle(20,0x00FF00, 0.5);
A[index].graphics.moveTo(0,0);
A[index].graphics.lineTo(100, 100);
A[index].x = 0;
A[index].y = 0;
addChildAt(A[index], 0);

//可以这样做。直接替换... :D

于 2013-05-03T05:39:50.157 回答