メイン 迷える子羊の部屋【初心者専用】
アタッチしたMCを順次フェードインさせる方法 | 投稿するにはまず登録を |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | スレッド |
|---|---|
| hiraoka_y | Åê¹ÆNo.35059 投稿日時: 2007-9-11 21:04 |
新米 ![]() ![]() 居住地: 東京 投稿: 12
使用環境:
MacOS10,Flash8 |
アタッチしたMCを順次フェードインさせる方法 hiraoka_y と申します。
よろしくお願いします。 制作環境:WinXP Flash8 現在、縦横30pxの四角形のムービークリップを縦5列、横5列、に 計25個をアタッチして整列させています。 これらを左上から順にフェードインしてくるものにしたいのですが、うまくいきません。 setIntervalを使うのではと試してみたのですが、どなたかご教授願えませんでしょうか。 以下現状のスクリプトです。 現在は一番最後の右下の四画のみがフェードインしていまいます。 ----------------------------------------------------------- var cont:Number = 25; for (i = 0; i < cont; i++) { this.attachMovie("_mc", "_mc" + i, i, {_alpha:0}); this["_mc" + i]._x = (i % 5) * 35 + 10; this["_mc" + i]._y = Math.floor(i / 5) * 35 + 10; var mc:MovieClip = this["_mc" + i]; mc.square = function() { mc.onEnterFrame = function() { mc._alpha += 5; if (mc._alpha >= 100) { delete onEnterFrame; } }; }; } nId = setInterval(mc, "square", 500); ----------------------------------------------------------- つたない説明となってしまい、大変申し訳ありませんが宜しくお願い致します。 |
| 野中文雄 | Åê¹ÆNo.35060 投稿日時: 2007-9-11 21:17 |
ちょんまげら ![]() ![]() 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: アタッチしたMCを順次フェードインさせる方法 「うまくいきません」というのは、ご説明になりません。変数mcには、どういう値が入っていることを期待されていますか?
![]() 引用: hiraoka_yさんは書きました: mcの値がひとつなら、そのひとつの値に対してしか処理が行われないのは当然です。 参考:「forループでMovieClipに設定したイベントハンドラメソッドから変数を参照する」 |
| ひろゆき | Åê¹ÆNo.35061 投稿日時: 2007-9-11 21:35 |
ちょんまげら ![]() ![]() 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CCSafari 6.1 |
Re: アタッチしたMCを順次フェードインさせる方法 for 文では、同時に、attachMovie されますから、
同時に生成・フェードインが始まってしまいますね。 (1) 順に生成 -> すぐにフェードイン (2) 一度に生成 -> 順にフェードイン のいずれかの方法があるのではないでしょうか? 方法 (1) 方法 (2) (3) フェードイン・タイマーを内蔵させる という手もありますね。 方法 (3)
|
| 永井勝則 | Åê¹ÆNo.35068 投稿日時: 2007-9-12 0:11 |
職人 ![]() ![]() 居住地: 白馬村 投稿: 796
使用環境:
Windows 7 :Flash CS4: 10.6.8 :Flash CS5.5 |
Re: アタッチしたMCを順次フェードインさせる方法 タイトルが「アタッチしたMCを順次フェードインさせる方法」ということなので、Tweenクラスを使った方法を考えてみました、
というよりもTweenクラスを使っただけです。 この方法の欠点はSWFファイルのファイルサイズがひろゆきさんの方法より大きくなることと、 トゥイーンが終了するのを待っているので、全体の中で1つしかフェードインしていないことです。 ひろゆきさんの方法は2つくらいフェードインしているように見えるので、グラデーション効果がきれいです。 フェードインするムービークリップを手作業で作る方法もあります。 つまりムービークリップのタイムラインを使ってフェードさせるムービークリップを作り、それをコードでステージに配置します。 たぶん配置したら全部がほぼ同時にフェードインするので、 ムービークリップにはstop();を入れておいて、 ステージに作成したムービークリップを配列に入れ、適当な時間間隔で配列内のムービークリップに対してplay()を実行すると、フェードインは制御できます。
|
| 野中文雄 | Åê¹ÆNo.35069 投稿日時: 2007-9-12 0:40 |
ちょんまげら ![]() ![]() 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: アタッチしたMCを順次フェードインさせる方法 終了を待たずに、続けざまにTweenを実行してもよいですね。
引用: 永井勝則さんは書きました: |
| hiraoka_y | Åê¹ÆNo.35070 投稿日時: 2007-9-12 2:36 |
新米 ![]() ![]() 居住地: 東京 投稿: 12
使用環境:
MacOS10,Flash8 |
Re: アタッチしたMCを順次フェードインさせる方法 野中様 ひろゆき様 永井様
まずはご連絡遅れました事深くお詫びいたします。 お忙しい所ご返信ありがとうございます。 またご質問内容が説明不足だったことも重ね重ねお詫びいたします。 >野中様 ご指摘恐れ入ります。 参考文献もありがとうございました。 こちら読み返して再考してみます。皆様のご指摘やご回答いただいたサンプルソースを拝見しまして、考え方の根本が間違っていたようです。 >ひろゆき様 参考コードありがとうございます。 大変分かりやすくご回答して頂き恐れ入ります。 フェードイン・タイマーを内臓させるやり方は大変参考になりました。こちらで一から再考し直して見たいと思います。 >永井様 ご回答ありがとうございました。 Tweenクラスを使用したやり方、大変興味を持ちました。 Tweenクラスのこのような使い方をご教授頂き、大変勉強になりました。 こちらも参考にさせて頂きます。 最後になりましたが、皆様お忙しい中要点がまとまっていない質問にも関わらず、ご回答頂きましてありがとうございました。 こちら参考にさせて頂きます、どのご回答も大変勉強になります。 それでは今後とも宜しくお願いいたします。 ありがとうございました。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
| 投稿するにはまず登録を | |



ログイン




CS5.5
.6.8
Vista Home Premium (SP1)







