2013-06-19 2 views
0

J'ai créé une classe avec MovieClip, dans une autre classe j'ai créé cet objet et je l'ai ajouté dans array. Je ne peux pas accéder à la propriété - Erreur # 1069.AS 3 Accès à la propriété movieclip

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

    } 

Deuxième classe:

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

}

Répondre

0

Vous devez définir une variable c en carrés

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

} 

Et dans la deuxième classe, je pense que vous devez définir sarray extérieur la boucle ou utiliser

sarray.push(obj1); 

au lieu de

sarray[i]=obj1; 
+0

Problème résolu, merci! – maatik5

+0

:) Je suis heureux que cela aide – Pan

Questions connexes