重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

Flash MXを使用しています。

外部ファイルを読み込んで、指定のフレームでムービーを止めるには
どのような指示をすれば良いのでしょうか?

ちなみに今は外部ファイル側に止めたい所にフレームラベル(stop)を付けて
読み込む側のMCに止める指示を書いています。

onClipEvent (unload) {
gotoAndStop("stop");
}

このように指示しても結局最終フレームまで読み込んでしまいます。


初心者です。よろしくお願いいたします。

A 回答 (1件)

何がされたいのか今ひとつはっきりしませんので,


勝手に予想をして書いておきます。
メインムービーの「load_01」というインスタンス名のMCに「aaa.swf」をロードした場合で書きます。

---方法1(aaa.swfから自分自身の制御)---

◎場合1 自分自身をアンロード
「aaa.swf」に自分自身をアンロードしたいフレームにスクリプトを書く。
---------------------------------
unloadMovie("_root.load_01");
---------------------------------

◎場合2 自分自身をストップ
「aaa.swf」に自分自身を止めたいフレームにスクリプトを書く
---------------------------------
stop();
---------------------------------


--方法2(メインムービーからaaa.swfの制御)--

「load_01」ムービークリップにロードされている「aaa.swf」のフレーム数を取得
 ↓
もし30フレーム以上になれば,アンロード(orストップ)させる。

という流れです。
「flm_no」は勝手に決めた変数名で,
「flm_no」に「load_01」のフレームNoが入って行き,
「flm_no」に30以上が入ると,アンロード(orストップ)が実行されます。
MCを増やすのも手間なので,下のスクリプトは「load_01」自体にムービークリップアクションとしてかけば良いです。


◎場合1 aaa.swfをアンロード
---------------------------------
onClipEvent (enterFrame) {
flm_no = _root.load_01._currentframe ;
if (flm_no >= 30) {
unloadMovie("_root.load_01");
}
}
---------------------------------

◎場合2 aaa.swfをストップ
---------------------------------
onClipEvent (enterFrame) {
flm_no = _root.load_01._currentframe;
if (flm_no>=30) {
tellTarget ("_root.load_01") {
stop();
}
}
}
---------------------------------

とにかく,アンロードしたいのかストップしたいのかわからないうえ,何処から何を制御したいのかわからなかったので,
それぞれについて,書きました。
    • good
    • 0
この回答へのお礼

分かりにくい記述ですみませんでした・・

詳しくご説明いただき、ありがとうございました!

これからはちゃんと勉強してもっと詳しく説明できるようにします!
じゃなくてここに書き込まなくて済むように頑張ります!


実は時間がなく、全く違う方法で解決させてしまいました。。
sassakunさんに教えていただいた事は今後の参考にさせていただきます。

ありがとうございました!

お礼日時:2005/04/19 22:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!