0
var sunflowers30:Array = [sunflowerpetal1,sunflowerpetal2,sunflowerpetal3,sunflowerpetal4,sunflowerpetal5,sunflowerpetal6];

sunflowers30.visible = false;

そこのコードが機能ないのはなぜですか?? 私は何を間違っていますか?? (配列を非表示にしようとしています)。

また、このコードも機能しないはずですか? (以下)(配列(すべてのインスタンス)が非表示/非表示になったら、別のシーンに移動しようとしています)。

if(sunflowers30.visible == false)
{

gotoAndPlay(1, "theplace")

    }
;
  • Sunflowerpetal 1-6現在私のステージにあるインスタンスです
  • Sunflowers30ステージ上のインスタンスから作成した配列です。
  • "Theplace"次のシーンです

ヘルプとコメントは大歓迎です。私は AS3 とコード全般に不慣れですが、コードの達人が私を助けてくれるはずです。

4

1 に答える 1

1

配列には表示可能なプロパティがありません。
あなたがする必要があるのは、配列をループし、その配列の各要素にプロパティを設定することです。

var sunflowers30:Array = [sunflowerpetal1,sunflowerpetal2,sunflowerpetal3,sunflowerpetal4,sunflowerpetal5,sunflowerpetal6];


for each( var obj:Object in sunflowers30 ){
  obj.visible = false;
}




// or another way or doing it
for( var i:int = 0; i<sunflowers30.length; i++){
   obj.visible = false;
}

そしてあなたの2番目の質問がそれがうまくいくべきかどうか尋ねるので、答えはノーです。
ここでも、配列が表示されているかどうかをテストするオブジェクトではなく、配列をターゲットにしています。

if(sunflowerpetal1.visible == false)
{

gotoAndPlay(1, "theplace")

    }
;
于 2012-06-02T06:10:26.350 に答える