Flash Lite1.1の使い方とムービークリップの表示切り替え方法

このQ&Aのポイント
  • Flash Lite1.1は携帯用のアプリ開発に利用されるツールです。
  • 指定した処理を行いたいMovieClipに対して、ファイルのロードか削除を行うことができます。
  • ムービークリップの表示切り替えにはtellTargetを使った方法や_visibleの設定などがあります。
回答を見る
  • ベストアンサー

Flash Lite1.1 について

お世話になっています。 携帯用のアプリ開発をができる Flash Lite1.1 を扱い始めて、1週間になります。どうしても分からないことがでてきたので、こちらで質問をさせていただきます。 現在、任意の複数のswfファイルを自由に作成と削除を行える携帯アプリを考えています。機能としましては、番号キーで指定した処理を行いたいMovieClipに対して、ファイルのロードか削除を行うというものです。 以下は、読み込み・削除部分のスクリプトです。 // *bボタンで読み込みを行う on( keyPress "*") { // 作成するのMovieClipを指定 newName = "cscr" add no; // MovieClipの複製 // 深度は全て同じ位置 duplicateMovieClip("scr", newName, 0 ); // MovieClipのロード url = "Load" add no add ".swf"; loadMovie ( url, newName ); } // #ボタンで削除 on( keyPress "#") { // アクセスするMovieClip名 newName = "cscr" add no; unloadMovie( newName ); } no : 作成するmovieClip番号・ロードするswfファイルの番号 scr : ムービーファイル表示用MovieClip( あらかじめめ画面に配置してあります ) 私が分からないところは、表示するMovieClipの切り替えです。 作成する分に関しては、作ったMovieClipが表示されていくのですが、以前に作成したムービークリップを表示のさせ方が分かりません。Load0.swf、Load1.swf、Load2.swfをロードした場合、cscr0、cscr1、cscr2が作成され、cscr2が表示されている時に cscr0 の内容に切り替えたいと思います。 私が行った方法は、tellTarget を使い、表示するMovieClip以外は、プロパティの_visible 非表示に設定したり、座標を画面外に移動させる方法を試しましたが、思った通りに動作をしませんでした。 どうやって、表示をさせたらよろしいでしょうか? また、削除するスクリプトに関してですが、本当に削除されているのでしょうか?

  • kot_o
  • お礼率100% (7/7)
  • Flash
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

まず >// 深度は全て同じ位置 >duplicateMovieClip("scr", newName, 0 ); これで同じ深度にムービークリップを複製(作成ではありません)しているところが問題でしょう。 同じ深度に複数のムービークリップは配置できません。 強引に配置すると,前にその深度にあったものが消えてしまいます。 1つしかないムービークリップの表示を, 他のムービークリップに切り替えるということがそもそも不可能になります。 >_visible 非表示に設定したり、 FlashLite 1.x に _visibleプロパティ は存在しません。 MovieClip の _alphaプロパティ は存在しますから, _alpha を 0 にしたり 100 にしたりして表示を切り替えるのが普通だと思います。 何にしても同じ深度に複数のムービークリップは配置できませんから, 単に _alpha を使っただけではどうにもなりませんが。 >削除するスクリプトに関してですが、本当に削除されているのでしょうか? "削除" の意味がわかりませんが, unloadMovie() でムービークリップの削除などできませんよ。 removeMovieClip() がムービークリップを削除する関数です。 「Flash CS3 ドキュメンテーション  Flash Lite 1.x ActionScript リファレンスガイド  removeMovieClip() 」 http://livedocs.adobe.com/flash/9.0_jp/main/00005745.html unloadMovie() はムービークリップ内にロードされたものを, 文字通りアンロードする関数です。 "削除" の意味が "アンロード" でしたら本当にアンロードされると思います。

kot_o
質問者

お礼

BlurFiltan様、回答していただきありがとうございます。 初めて扱う言語で、毎日思考錯誤しながら、作業を進めています。 その中で、どうしても自分一人の力で解決できなかったことなので、こちらで質問させていただきました。 >これで同じ深度にムービークリップを複製(作成ではありません)しているところが問題でしょう。 >同じ深度に複数のムービークリップは配置できません。 >強引に配置すると,前にその深度にあったものが消えてしまいます。 >1つしかないムービークリップの表示を, >他のムービークリップに切り替えるということがそもそも不可能になります。 一つの深度に、何枚もムービークリップを配置できないことを初めて知りました。 >FlashLite 1.x に _visibleプロパティ は存在しません。 >MovieClip の _alphaプロパティ は存在しますから, >_alpha を 0 にしたり 100 にしたりして表示を切り替えるのが普通だと思います。 >何にしても同じ深度に複数のムービークリップは配置できませんから, >単に _alpha を使っただけではどうにもなりませんが。 分からないなりに、色々試しました。 >"削除" の意味がわかりませんが, >unloadMovie() でムービークリップの削除などできませんよ。 >removeMovieClip() がムービークリップを削除する関数です。 > >「Flash CS3 ドキュメンテーション > Flash Lite 1.x ActionScript リファレンスガイド > removeMovieClip() 」 >​http://livedocs.adobe.com/flash/9.0_jp/main/00005745.html​ > >unloadMovie() はムービークリップ内にロードされたものを, >文字通りアンロードする関数です。 >"削除" の意味が "アンロード" でしたら本当にアンロードされると思います。 ここに、 「関数。loadMovie()、loadMovieNum()、または duplicateMovieClip() を使用してロードしたムービークリップを Flash Lite から削除します。」 と書いてあったので、読み込んだデータも含めて全て消してくれるものだと思っていました。 http://livedocs.adobe.com/flash/9.0_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00005745.html 本当にありがとうございました。 貴重な意見を是非、参考にさせていただきたいと思います。

関連するQ&A

  • Flash lite 1.1での質問です。

    Flash lite 1.1での質問です。 最近Flashをはじめたばかりの初心者です。 とても初歩的な質問かもしれませんが、どなたかご教授頂けると助かります。 <質問内容> メインのswfファイルのルートに配置されているmcというムービークリップを、loadMovie関数で外部swfファイルに置き換えたあと、外部swf内に定義されている変数が参照できません。 (外部のswfには画像データも含まれているので、loadvariables関数は使えません) 【構成】 ・main.swf(メインのswfファイル)   ├btn(main.swfのルートに配置されているボタン)   └mc(main.swfのルートに配置されているムービークリップ) ・gaibu.swf(loadMovieで読み込む外部のswfファイル) 【gaibu.swfのルートタイムラインのActionScript】 msg = "this is gaibu.swf!"; 【やりたいこと】 メインのswfでのボタンアクションで、gaibu.swfをロードし、「action」というルートタイムライン上のラベルに移動します。 on(press) { loadMovie("gaibu.swf","mc"); gotoAndStop("action"); } 「action」に移動した後、ボタンアクションにてloadMovieで読み込んだgaibu.swf内の変数msgを出力したいのですが、何も表示されません。 on(press) { trace(mc.msg); } loadMovie関数を使って外部のswfを読み込むと、(gaibu.swfは色を変えてあるので)読み込みは出来ていると思うのですが、そのswf内で定義されている変数が参照できません。loadMovie関数で読み込んだswf内で定義されている変数は消えてしまうのでしょうか? 分かりにくい説明ですみませんが、宜しくお願いいたします。

    • ベストアンサー
    • Flash
  • 携帯Lite1.1用のプログラム

    こんにちは。 現在、携帯用のプログラムをテスト中なのですが、 キー5を押すとステージにあるムービークリップ(myobj_mc)を 8ドット単位に右に3個複製するというテストです。 ※myobj_mcは、ボタンMCです。 ※複製名は、clip0, clip1, clip2 ボタンインスタンスに下記のasを記述。 on ( keyPress "5" ) { for ( i = 0; i < 3; i++ ) { newName = "clip" add i; duplicateMovieClip("myobj_mc", newName, i ); xpos = i * 8; setProperty( newName, _x, xpos ); } } 動作環境 XP Flash8pro Lite1.1 以上のプログラムなのですが、エラーが出てしまいます。 Ctr+Enter時でエラー。 警告 :このムービーは Flash Lite 1.1 Player でサポートされていない機能を使用しています シーン = Scene 1, レイヤー = 玉くん, フレーム = 1 :Flash MX ボタンインスタンス名 シーン = Scene 1, レイヤー = 玉くん, フレーム = 40 :Flash MX ボタンインスタンス名 実行後のエラーです。 【次のコンテンツに問題があります : 5 ~ SWF データ内の ActionScript が無効です。】 どこか間違いがあるかご教授お願い致します。

  • 外部swfの読込について

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

    • ベストアンサー
    • Flash
  • Flash professional CS5を使っており,AS3.0で

    Flash professional CS5を使っており,AS3.0で記述しています。 外部swf(test.swf)をムービークリップ(my_mcとしました)に読み込むには どのようにコードを記述すればよいのでしょうか? MovieClipLoaderを使う物や var urlReq:URLRequest=new URLRequest("test.swf"); var swfLoader:Loader=new Loader(); swfLoader.load(urlReq); このようにロードする方法は見つかったのですが my_mc = loader.content as MovieClip; などとしても ムービークリップに読み込めません。 いろいろ試したのですが直接ステージに読み込まれて表示されたり,エラーも起こらず表示されなかったりします。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • fwfからFLASHのタイムラインなどを復元することはできないのですか?

    こんにちは、 FLASHでムービーを作成しSWFファイルに出力後、元のFLASHファイルを削除しました。その場合、SWFから元のFLASHファイルを復元することは可能なのでしょうか? ほか、他のページで作られているムービーから、作られ方を再現することって可能なのでしょうか? よろしくお願いします。

    • ベストアンサー
    • Flash
  • FLASH

    質問させていただきます。 http://hfm-kenchan.com/Lesson/log_qa/D0510122.htm# こちらのサイトを参考にフラッシュを作成しています。 ダウンロードしたものを解凍して中にある、SWFファイルは問題なく再生できます。 私が表示させたい画像に差し替えてパブリッシュして作成されたSWFファイルもhtmlファイルもブラウザで問題なく表示されます。 しかいdreamweaerでSWFを埋め込みブラウザで確認すると写真がロードされません。 nextボタンやprevボタンは表示されています。 昨日からはまってしまい色々と試したのですが解決できません。 どなたか教えていただけると大変助かります! よろしくお願いします!!!!

    • ベストアンサー
    • Flash
  • Flashで背景をランダムに変えたいんですが‥‥

    外部のSWFファイルを読み込んで、それをランダムに表示させたいんですがどうも上手くいきません。 Flashがバージョン5のため、画像のみを貼りつけたSWFファイルを読み込ませて、それを背景に使おうとしています。 ホームページに載せて、見るたびに背景を変えようという狙いです。 それで、色々と調べてみてスクリプトもいじって外部ファイルを読み込んで表示はしてくれるようになったんですが、表示の一番上に来てしまってメニューのボタンなんかが隠れてしまうのです。 これが、書いてあるスクリプトです。 onClipEvent (load) { no = Math.floor(Math.random()*3)+1; loadMovieNum("haikei"+no+".swf", 0); } スクリプトにはどうも分からない点が多いので、細かく説明していただけるとありがたいです。 修正点や、「こういうやり方もある」っていうのがありましたら、ご指導の方をよろしくお願いします。

  • FLASH 5

    FLASHを使い始めたばかりの初心者です。 会社のパソコンにある FLASH 5 を使っているのですが、 ムービーの書き出しをして .swf ファイルを作ってサーバーに UPしました。 IE で表示させて 『 名前をつけて保存 』 をしても当然 .swf ファイルは保存されませんが、FF で保存をすると .swf ファイルも保存されます。 ただ、普通はその .swf ファイルを開いても何も表示されませんが、 私が作った .swf ファイルは表示されてしまいます。 何か設定が必要なのでしょうか? 宜しくお願い致します。

    • ベストアンサー
    • Flash
  • Flashアクションスクリプトで

    Flashアクションスクリプトで、Movieクリップにswfファイルを読み込む時に、swfファイルが表示されるMovieクリップの背景色ってどうやって帰られるのでしょうか?? よとしくおねがいしますm(__)m

  • フラッシュCS5を使用し、swfファイルを作成しムービープレビューで確

    フラッシュCS5を使用し、swfファイルを作成しムービープレビューで確認し、動作が問題なく作動するので、そのswfファイルをドリームウェーバーCS5で作成したHTMLのテーブルに埋め込みアップロードを行いWEB上で確認した所、何故かアップロードしたPCで閲覧する場合のみswfファイルムービーがちゃんと作成したとおりに表示され、動作します。しかし、アップロードしたPC以外で同じように閲覧すると…swfファイルムービーが思い通りに表示されずに動作しないのです…。 つまり、アップロードしたPCでしかswfファイルムービーが動作しないのです…。他のPCからの閲覧では思い通りに動作しないのです…そんなことってあるのでしょうか?それってどうしてでしょうか? やはり、どのPCから見ても同じように表示され動作するようにしたいのです…。 解決方法が解る方がいましたら教えてください。お願い致します。

    • ベストアンサー
    • Flash

専門家に質問してみよう