我创建了一个带有MovieClip的类,在另一个类中我创建了这个对象并将其添加到数组中。我无法访问属性-错误#1069。
var square:MovieClip = new MovieClip();
public function sq(s:Stage,c:int) {
square.graphics.beginFill("0x164499");
square.graphics.drawRect(0,0,200,c);
square.graphics.endFill();
addChild(square);
}
第二个类:
for(var i=0;i<4;i++){
obj1 = new sq(stage,100);
obj1.x=100;
obj1.y=100;
obj1.name="square"+i;
var sarray:Array = new Array();
sarray[i]=obj1;
trace("parameter: "+sarray[0].c);
stage.addChildAt(obj1,0);
}
你需要在sq中定义一个变量c
var square:MovieClip = new MovieClip();
public var c:int;
public function sq(s:Stage,$c:int) {
c = $c;
square.graphics.beginFill("0x164499");
square.graphics.drawRect(0,0,200,c);
square.graphics.endFill();
addChild(square);
}
在第二类中,我认为应该在循环外定义数组或者使用
sarray.push(obj1);
代替
sarray[i]=obj1;