0

我用 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);

}

4

1 回答 1

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 或使用

  sarray.push(obj1);

代替

   sarray[i]=obj1;
于 2013-06-20T01:15:13.293 回答