私は200個以上のボタンがたくさんあるので、それらをすべてループしたいと思っています。それらはすべてIDEの同じグラフィックシンボルのインスタンスなので、すべてをループする方法が必要です。グラフィックの各インスタンスをループする
JavaScriptでこのようなことを行っていた場合は、document.getElementsByClassName('MyGraphicSymbol')
のような処理をしてから、すべての要素の配列を取得できます。だからAS3でこれを探しています。
私は200個以上のボタンがたくさんあるので、それらをすべてループしたいと思っています。それらはすべてIDEの同じグラフィックシンボルのインスタンスなので、すべてをループする方法が必要です。グラフィックの各インスタンスをループする
JavaScriptでこのようなことを行っていた場合は、document.getElementsByClassName('MyGraphicSymbol')
のような処理をしてから、すべての要素の配列を取得できます。だからAS3でこれを探しています。
のActionScript 3のすべてのクラスとオブジェクトはassociativ配列として内部構築されています。つまり、要素を取得できます。このような:
for (var i= 0; i < 200; i++){
var button: SimpleButton = this ["button_" + i] as SimpleButton;
// do something
}
私は常に自分のアイテムをベクターや配列に追加して、コントロールしやすくします。しかし、あなたは、あなたがこれを行うことが同じコンテナにすべてのボタンを追加した...場合:
var buttons : int = buttonHolder.numChildren;
var button : MovieClip;
for(var i : int = 0 ; i < buttons ; i++)
{
button = buttonHolder.getChildAt(i);
button.someFunctionOfChoice();
}
あなたはクラスの静的配列について考え、そして中に持っている:すべてのボタンは、その内部配列を持つすべてのボタンを反復処理することができます"button_" + i
のようなインスタンス名を持つ
this ["instanceName"];
コンストラクタはその配列に新しいインスタンスを追加します。あなただけでもいいです。
for each(var i in YourButtonClass.arrayOfButtons){
//do nothing
}