PR

for文によるループ処理を学ぼう!

2008年6月24日(火)
米倉 明男

for文によるループ処理

 プログラミングでは、データを指定した回数だけ、同じ処理を繰り返すことがよくあります。この際にActionScriptで使われるのが、for文と呼ばれるループ処理です。

 for文では、最初に「初期値」を指定して、2番目に「何回未満まで繰り返すのか」を指定します。3番目に「増減処理」として、「加算(インクリメント)++」か、もしくは「減算(デクリメント)--」を選択します。この3つがループ処理の設定になります。後は繰り返し処理したい内容を{ }で閉じます。

 for文の書き方は以下のようになります。

for ( 初期値; ループ条件; 増減処理 ) {
繰り返す処理;
}

 for文の例文は以下のようになります。

for ( var i = 0; i trace(i);
}

 例文と比較して見てみましょう。for( );で囲んだ部分がループ設定です。「var i」はfor文で繰り返す回数の変数名になります。

 今回の初期値は「0」です。次のループ条件は「i

for文とattachMovieを使ったサンプル

 前回解説したattachMovieとfor文を使って図形を横並びに配置してみます。サンプルファイルはこちらからをダウンロード(http://www.thinkit.co.jp/images/article/81/4/8141.zip)できます(8141.zip/172 KB)。

 1番目に縦横30pxのひし形を作り、ムービークリップとしてシンボル化します。前回同様このムービークリップをリンゲージにします。識別子名は「shape」にしました。

 2番目にfor文の設定を行います。初期値は「var i=0」、ループ条件は「i
 3番目にattachMovieの設定を行います。識別子名「shape」を選択し、配置するインスタンス名を「"shape"+i」にしました。これでループ処理を行うと、インスタンスが7つ生成され、それぞれのインスタンス名は「shape0」「shape1」「shape2」「shape3」「shape4」「shape5」「shape6」となります。for文の変数「i」をそのまま深度することで、自動的に重なる順番を作ることができます。

 このままでは生成された7つのインスタンスが、すべて同じ位置に配置されてしまいますので、X座標プロパティ「_x」を使って横並びにします。

 this["shape"+i]._xでそれぞれに生成されるインスタンスのX座標を指示します。代入する値として変数「i」に30をかけます。こうすることで「shape0」のX座標は0px、「shape1」のX座標は30px、「shape2」のX座標は60pxとなり横並びの配置を計算式で設定することができます(リスト1)。

Webデザイナー。印刷会社、Web制作会社などのデザイナー/ディレクターを経て、2007年からフリーランスとして活動。デジタルハリウッド講師。http://www.morethanwords.jp

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています