0

完全に機能するAS3のコードがありますが、メソッドと関数が繰り返されています。それらは同じですが、異なるインスタンス名を使用しているため、コードの書き直しを避けるためにインスタンス名を変数に置き換えたいと思います。

ここに私のコードの一部があります:

urb_mc.urb.select(0);

trace("Urb: " + urb_mc.urb.selectedIndex);

この場合、「urb」を変数に置き換えたいので、これを試しました:

var estado = currentLabel;
trace("este es mi estado " + estado);// this is ok = "urb"

//now I need to inset the variable in my code:

String(estado)+_mc.String(estado).select(0);//thi is so wrong!

trace("Urb: " + String(estado)+_mc.String(estado).selectedIndex);//thi is so wrong!

何か案が?

前もって感謝します

4

1 に答える 1

1

使用してみてください:

this[estado+"_mc"][estado].select(0);
trace(this[estado+"_mc"][estado].selectedIndex);

すべての編集でごめんなさい!

挑戦してくれてありがとう!オブジェクトの多次元配列演算子のようなものがあることを学びました。

パート2

これを試して:

var tweenNameArray:Array = ["Name1"、 "Name2"、 "Name3"]

for (var i:int = 0; i > tweenNameArray.length(); i++){
  var myTween:Tween = new Tween();
  myTween.name = String("myTween_" + estado + "_in"); // You may want to try .toString();
}

次に、トゥイーンを参照すると、次のように機能するはずです。

Tween(MovieClip(this.stage.getChildByName("myTween_" + estado + "_in")).whateverMethod(); // Try with and without the MovieClip().

今すぐ言いますが、このようにすることはお勧めできません。

于 2012-08-10T04:45:13.197 に答える