外部データの読み込み後に再生する方法

このQ&Aのポイント
  • 外部データの読み込みが完了した後に再生する方法について教えてください。
  • メインのswf内に「loadMovie」を使用して外部swfを読み込んでいますが、読み込みが完了する前に表示がぎこちなくなってしまいます。
  • nowloadingを使用したが解消されず、どのような対応が適切でしょうか?
回答を見る
  • ベストアンサー

外部データの読み込みが完了した後に再生

メインのswf内に「loadMovie」を使って、 外部swfを3つ読み込んでいます。 top.swf タイムライン1フレーム目  stop();  navi.loadMovie("navi.swf");  logo.loadMovie("logo.swf");  bgmplayer.loadMovie("bgm.swf"); bgm.swf自体がxmlファイルを読み込んだり、 外部からの画像を読み込んだりしているせいか、 こちらが表示されるまで、top.swfにあるムービーがぎこちない 動きをしてしまいます。 このような場合、どういった対応をすればよろしいのでしょうか? ※nowloadingをつけてみましたが、解消されませんでした。 (↑つけかた(書き方)が悪かったかもしれませんが…) どなたかご教授お願いいたします。

  • Flash
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • joy_28
  • ベストアンサー率84% (45/53)
回答No.1

anzunyaさん、 Mx2004以上で実装されている、MovieClipLoaderクラスを使ったらどうでしょうか? -top.flaの第一フレームに、以下を記載 //ここから var mcl:MovieClipLoader=new MovieClipLoader(); var listener:Object=new Object(); listener.onLoadInit=function():Void{//bgm.swfの第一フレームの読み込み完了したなら、下を始動させる navi.loadMovie("navi.swf"); logo.loadMovie("logo.swf"); } mcl.addListener(listener); mcl.loadClip("bgm.swf",bgmplayer); //ここまで

anzunya
質問者

お礼

ご回答ありがとうございます。 上記の方法でうまくいきました!! ありがとうございます(^^) 私の作り方のせいだとは思うのですが、 (他部分にタイマー等も使ってるので…) 最初のローディングではbgm.swfがはじめに表示され、 後から他の外部swfが読み込まれてきて、 2回目リロードをかけると通常表示…となるので、 若干調整が必要そうです。 教えてくださった事を無駄にしないよう、がんばりますね!

関連するQ&A

  • 外部ムービー再生終了後、特定のラベルへ飛ぶ

    外部ムービー再生終了後、特定のラベルへ飛ぶ 質問させていただきます。 制作環境はAS2.0 FlashCS3 やりたいことは親swfに外部swfムービーを読み込んで 外部ムービーの再生が終わったら、親swfの特定のラベルに飛ぶ、というものです。 親swfの1フレーム目に書き込んだスクリプトは・・・ this.stop(); this.movie.loadMovie("movie1.swf"); if ( movie._currentframe == movie._totalframes ) { this.gotoAndStop("next"); } しかし、いきなりnextラベルに飛んでしまいます・・・ 宜しくお願い致します。

  • 外部swfのフレームを指定して読み込み

    あるムービークリップ(mc1とします)に外部swf(001.swfとします) を読み込むことはできるのですが、 mc1に001.swfを読み込み、001.swfの50フレーム目から再生ということは可能でしょうか。 いろいろと調べたのですが、どうしてもうまくいきませんでした。 ボタンを作りボタンを押したら読み込み50フレーム目から再生という指示を書いたのですが、、、 on (press) { _root.mc1.loadMovie("top.swf"); _root.mc1.gotoAndPlay(50); } 1フレーム目から再生されてしまいます。

  • 外部ムービー読込み後 AS が動きません

    どなたかお教え下さい。 _root上のMCに外部swfを読み込んだとします。 その読み込まれたswf上のムービーの途中でASでストップstop();、を 入れて途中で一度とめるようにしてありますが、止まりません。 プログラムの知識がないのでずっと悩んでいます。 よろしくお願いいたします。 ■現状■ set_mcという名のMC上に、同じ階層にある01.swfを読み込む。 現在テスト用に、読み込む側は読込みだけ、読み込まれる01.swfは 10フレーム中の5フレーム目にキーフレームをつくり アクションで this.stop(); とだけ書いてあります 読込み側 _root.set_mc.loadmovie("01.swf"); _root.set_mc._lockroot = true; 読み込まれた01.swfの5フレーム目 this.stop(); ------------------------ 01.swf のみならばちゃんと止まるのですが読み込まれると とまりません。非常に初歩的なことかもしれませんが、 どうかよろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 外部swfの読込について

    1枚のFlashに二つの外部swfを読み込む方法を教えて下さい。 今参考書を見ながらやってみたのですが外部ファイルが読み込まれていないようで 書き出したswfファイルには何も表示されません。 試した方法ですが・・・ 外部swfファイル読込用ムービークリップを作成、 オブジェクトアクションを挿入 --------------------------------- onClipEvent (load) { function Load (file) {  this.loadMovie (file);   } } --------------------------------- フレームを作成し下記アクション挿入 --------------------------------- contents_mc.Load("about.swf") --------------------------------- 使用ソフトはFlash5です。 どうぞ宜しくお願いします。

    • ベストアンサー
    • Flash
  • ムービークリップ内に空ムービーを置いて外部SWFをロードするやり方

    ムービークリップ(menu1)このムービーはシーン1に設置してあり、動きはクリックすると右から左に引き出す感じのナビゲーションにしてあります。 それがmenu1,menu2,menu3とありそれぞれ再度押すと元の場所にもどります。 ここまでは完成しているのですが、このmenu1,2,3をそれぞれ押して引き出した後にその引き出した画面にコンテンツを外部swfでロードさせたいのですが、まったく表示されず白い画面のままです。 this.stop(); if(this.onFlag == 0){ //↑左にコンテンツをopenさせ元の位置に戻らぬようストップ //↓menu1外部charch読み込みswf_charchは空ムービー swf_charch.loadMovie("charch.swf"); } このスクリプトをムービークリップmenu1のフレームに書き込んでます。 空ムービー(swf_charch)をつくりmenu1に配置して、インスタンス名もswf_charchにしてあります。 もしかして、ムービークリップ内に空ムービーを入れ子にして外部swfの読み込みは不可能なのでしょうか? それともスクリプトの記述がloadMovieではなく別のスクリプトなのでしょうか? 説明が下手で分かりづらいと思いますが、分かる方いらっしゃいましたら宜しくお願いいたします。

  • loadMovieで外部swfの読込みについて

    現在、外部swfを連続で再生させるフラッシュを作成中です。 以下の方法で実現しています。 ------------------------------------------------- 親SWFの_rootに,例えば「loadMC」というインスタンス名のムービークリップを作ります。 このMCは小さくて透明のMCか,中に何も入っていない空のMCが良いと思います。 そして,親SWFのフレームのスクリプトに _root.loadMC.loadMovie("movie1.swf"); と書けば,「loadMC」というインスタンス名のムービークリップに「movie1.swf」が読み込まれます。 またはボタンにスクリプトを書いて,ボタンで読み込みをさせても良いです。 そして,「movie1.swf」の最終フレームに, _root.loadMC.loadMovie("movie2.swf"); と書いておきます。これで同じ「loadMC」に「movie2.swf」が読み込まれます。 同じ所に新たなムービーを読み込むと自動的に前のムービーは unload されるので, unloadMovie(); は必要ありません。 「movie2.swf」の最終フレームには _root.loadMC.loadMovie("movie3.swf"); 「movie3.swf」の最終フレームには _root.loadMC.loadMovie("movie4.swf");   …  … ------------------------------------------------- 作成後のプレビュー又はswfをダブルクリックなどで直接表示させると正常に表示されます。 しかし、HTMLに埋め込むと真っ白な状態でまったく表示されません。 調べているのですが原因がわかりません。 どなたかご教授のほど宜しくお願い致します。

    • ベストアンサー
    • Flash
  • 外部swfのラベル移動

    FLASH MX2004で作成しています。 main.swf上のload_mcのレベル0に、外部swfのA.swfを読み込んでいます。 #main上のフレーム this.load_mc.loadMovie("A.swf", 0); A.swfが終わると同時に、main.swf上のload_mcのレベル1に、外部swfのB.swfを読み込みます。 #A.swfの最終フレーム stop(); _root.load_mc.loadMovie("B.swf", 1); ここまではできています。 その後、B.swf内のcontentsというMC内のラベルをlabel2に移動させたいのです。 #A.swfの最終フレーム stop(); _root.load_mc.loadMovie("B.swf", 1); _root.load_mc.contents.loadMovie("label2"); これができません。 _root.load_mc.contents.loadMovie("label2"); _root.contents.loadMovie("label2"); _root.load_mc.loadMovie("label2"); load_mc.contents.loadMovie("label2"); contents.loadMovie("label2"); なども試してみましたが、うまくいきません。 わたしの頭ではこれが限界です。 ぜひともお力お貸しください!

  • 複数の外部swfを一瞬の間も空けずに表示させたい

    【希望の動き】 外部FLVのキューポイント機能を使って、ある特定の時間がきたら外部swfを表示させたい 【現状の動きと問題点】 cuePointListenerObj.cuePoint=function (evt:Object) { loadMovie("images/" + evt.info.name+ ".swf","cueBox_mc") ; } //--------------cueBox_mcは外部swfを表示させるMC--------- 一応、上記のScriptで外部swfの表示はできていますが、外部swfとその次に表示される外部swfの間に一瞬だけ「間」が空きます。 いろいろ調べてみると、loadMovieはムービークリップを「入れ替え」る機能であるとのことなので、次のムービークリップを読み込む「間」ができてしまうようです。 ですのでムービークリップを「重ねて」表示できれば「間」が空くことはないのではないかと考えたのですが、その方法が思い浮かびません。 (loadMovieに「深度」の機能があればいいのに・・・) 【やってみて失敗したこと】 attachMovieを使って全ての外部swfを読み込んでから、メインの動きをするフレームに飛ぶようにしたらどうか、と思って試してみましたが、外部jpgのように静止画として読み込まれるだけで、アニメーションの機能は消えてしまいました。 【そこで質問!】 外部swfを重ねて表示させる方法はないでしょうか? もしくは、「間」を空けずに連続して外部swfを表示させる方法はないでしょうか? 【使用環境】 Flash8 WindowsXP よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 複数の外部SWFの読み込みする場合のサウンド制御について

    1~5.swfが存在し、それらをMain.swfから読み込み順番に再生するようにしています。 Main.swfの1フレーム目に→ stop();_root.seen1.loadMovie("1.swf"); 1.swfの最後に→ _root.nextFrame(); Main.swfの1フレーム目に→ _root.seen2.loadMovie("2.swf"); 2.swfの最後に→ _root.nextFrame(); これを1~5まで同様に設定し5.swfが終わると1.swfが始まりループするように設定し問題なく動いています。 1~5.swfには、それぞれ異なるBGMを設定しています。 ココで質問なのですが、よくあるBGMの「ON/OFFボタン」を作成しサウンドを制御したいのです。 1.swfに「ON/OFFボタン」を作成して「OFF」を選んでも、次の2.swfではまた再生されてしまいますので、「ON/OFFボタン」はMain.swfに設置したいと考えています。 Main.swfに「ON/OFFボタン」を設置して、1~5.swfのサウンドを制御するう方法を教えて下さい。 宜しくお願いします。 補足が必要な場合は言って下さい。

    • ベストアンサー
    • Flash
  • flv外部読み込みファイルのエンドレス再生が不安定です。

    flvファイルを外部読み込みにし、エンドレス再生を試みました。 _root.onEnterFrame = function(){ if(mediacomponent.playheadTime >= mediacomponent.totalTime){ mediacomponent.stop();//停止 mediacomponent.play();//再生 } } とasフレームに書き込みました。 スムーズに連続再生される時もあるんですが、 3分くらい一時停止した後に再生されるときもあります。 1回の再生終了後、スリープ数秒の記述を入れれば、 うまく連続再生できるのでしょうか? だとしても、その記述の仕方がわかりません。 あと、fiv外部読み込みにする前はフレーム読み込みで連続再生 を試みたのですが、速度がオリジナルよりだいぶ遅くなり断念しました。 その際、NowLoading設定していたのは効いていたんですが、 flv読み込みに変更した後からは効いていないようです。 3フレーム目にムービーが読み込まれているので、 if (_framesloaded>3) { gotoAndPlay(3); } else { gotoAndPlay(1); } と記述しています。 ●flv外部読み込みで安定した連続再生の方法 ●flv外部読み込みでNowLoadingを有効にする方法 おわかりの方、お知恵をお貸しください。

    • ベストアンサー
    • Flash

専門家に質問してみよう