2009-03-08(Sun) 17:01
[AS3.0]連番のMovieClipのインスタンスを作成
下図のようにFLashで連番で作成したMCを一括で配置します。
![]()
まずは文字列からインスタンスを作成します。
getDefinitionByNameという関数を使いますので、
import flash.utils.getDefinitionByName
でインポートします。
package
{
import flash.display.MovieClip;
import flash.utils.getDefinitionByName;
public class Test8 extends MovieClip
{
public function Test8() {
var class_name:String = "btn" + 1;
var class_reference:Class = Class(getDefinitionByName(class_name));
var btn:MovieClip = new class_reference();
addChild(btn);
}
}
}
これでとりあえず一つだけは配置できました。
あとはfor文で繰り返すだけです。
package
{
import flash.display.MovieClip;
import flash.utils.getDefinitionByName;
public class Test8 extends MovieClip
{
public function Test8() {
for (var i:int = 1; i<=5; i++) {
var class_name:String = "btn" + i;
var class_reference:Class = Class(getDefinitionByName(class_name));
var btn:MovieClip = new class_reference();
addChild(btn);
btn.y = i * 30;
}
}
}
}





TrackBack URL