• ベストアンサー

loadMovieで変数の中身を読み取る方法は?

再度質問させていただきます。 FlashVarsを使い、htmlにて <param name="FlashVars" value="photo=abc.jpg">と記入し swfに変数photo、値abc.jpgを送り、 flashのroot上に hyouzi というインスタンス名の空のMCを配置し、 同じくroot上にアクションスクリプトを、 hyouzi.loadMovie(photo); と記入したのですが画像が表示されません。 変数photo内にあるabc.jpgを読み込んで欲しいのですがloadMovieは""で囲った文字列しか読み取れないのでしょうか? かといって、"photo"としてしまうとphotoという文字列として認識してしまいますし。 どうすればよいのでしょうか?ご助言お願いします。 以下は参考にしたwebページアドレスです。 http://hfm-kenchan.com/Lesson/log_qa/D0611303.htm

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

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

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

書かれていらっしゃる通りのことをしてみましたが,「abc.jpg」は無事に表示されますよ。 念のための確認ですが, ・ ファイル構造  任意のフォルダ     ├○○.html(○○.swf を表示 FlashVars記入)     ├○○.swf     └abc.jpg ・ ○○.swf 内の階層構造  _root   └空のムービークリップ インスタンス名hyouzi hyouzi が存在する _root のフレームに, hyouzi.loadMovie(photo); を書いてパブリッシュ ○○.html の <Object>~</Object>内に, <param name="FlashVars" value="photo=abc.jpg"> を追加記入で保存。 ○○.html をブラウザで開く。 こういうことですよね? これだと無事に「abc.jpg」はロード表示されます。 FlashVars は FlashPlayer6 以降でサポートされた機能です。 お持ちの "ブラウザの" FlashPlayer が 5 以下である(そんなこと普通はあり得ませんが)だと無理です。 あと,もし SWF を貼り付けるのに <Embed> を使用されていましたら, そっちの方にも書く方が無難です。 「FlashVars を使用して SWF へ変数を渡す」 http://support.adobe.co.jp/faq/faq/qadoc.sv?228618+002 ==================== 普通はテキストフィールドに変数名をつけることはしませんが(非推奨), 実験として _root に photo という "変数名" を付けたダイナミックテキストを用意してパブリッシュし, FlashVars付きの HTML で開いてみたらどうなりますか? FlashVars が正常にはたらいていれば, ダイナミックテキストには 「abc.jpg」 という文字が表示されるはずです。 また別実験で, スクリプトを次のように変更し, photo = "abc.jpg"; hyouzi.loadMovie(photo); 「制御」→「ムービープレビュー」ではどうなりますか? ちゃんと abc.jpg や hyouzi が存在していれば, 「abc.jpg」 が表示されるはずです。 あと, バージョンを書かれていらっしゃらないのが少し気になりますが, 「abc.jpg」は普通のJPEG(非プログレッシブJPEG)ですか? プログレッシブJPEG がロード表示できるようになったのは FlashPlayer8 以降で, なおかつ FlashPlayer8 以上用の SWF をパブリッシュ しなければ表示されません。 思いつく原因と対処方法や実験方法はこれくらいです。

LAMYPARKER
質問者

お礼

回答ありがとうございます。 バージョン Flash:CS3 FlashPlayer:9(パブリッシュ時も)です。 ActionScript2.0 希望する物はまさしく書かれているとおりです。 しかし、何故かどう作成しても表示することができませんでした。 <param name="FlashVars" value="photo=abc.jpg">のみでなく、 <Embed>があったのでそのタグ内に FlashVars="photo=abc.jpg" と記入したがやはり無理でした。 photo = "abc.jpg"; hyouzi.loadMovie(photo); という変更では問題なく表示されたのですが、 ダイナミックテキストを用いた方では表示できませんでした。 なのでFlashVarsがうまく機能していないみたいです。 せっかく丁寧な回答をしていただいたのにうまく完成させることができませんでした。申し訳ないです。 回答ありがとうございました。

関連するQ&A

  • loadMovieでjpgを外部テキストから読み込むには?

    私はloadMovieを使ってjpgファイルを読み込みたいとおもっているのですが、ただjpgファイルを読み込むのではなく、変数指定を行い、外部txtファイルの変数に指定されているjpgファイルを読み込むようしたいと思っています。 下記のようなソースで書いているのですが、うまくいきません。どうか手ほどきしていただけないでしょうか? お願いします。 (1)タイムライン上に下記のプログラムを書いています。 forJpeg.loadVariables("test.txt"); (2)forJpeg2のムービークリップに下記のプログラムを書いています。 onClipEvent (load) { _root.forJpeg2.loadMovie(abc);//()内は変数名 } (3)test.txtファイルは下記のように書いています。 abc=news.jpg

    • ベストアンサー
    • Flash
  • loadMovie()を組み込んだswfファイルをさらに別のswfファイルで読み込みたい。

    ActionScript初心者です。よろしくお願いいたします。 掲題の通りなのですが、外部のjpgファイルをloadMovieで読み込むswfファイルを、さらに別のswfファイルで読み込みしようとすると、jpgが表示されずに困っています。具体的には以下の通りです。 (1)jpgファイルを読み込むswfファイルについて ・ファイル名:「sub_screen.swf」 ・ムービークリップシンボル(インスタンス名"PHOTO_STAGE")に外部のjpgファイルを読み込ませるために、ボタンに以下のスクリプトを記述 "on(release){loadMovie("photo1.jpg",_root.PHOTO_STAGE);}" ・「sub_screen.swf」及び「photo1.jpg」は同一フォルダに保存 (2)sub_screen.swfを読み込むswfファイル ・ファイル名:「main_screen.swf」 ・ムービークリップシンボル(インスタンス名"STAGE")に「sub_screen.swf」を読み込ませるべく、ボタンに以下のスクリプトを記述 "on(release){loadMovie("sub_screen.swf",_root.STAGE);}" ・「main_screen.swf」、「sub_screen.swf」及び「photo1.jpg」は同一フォルダに保存 以上のような条件で「main_screen.swfファイル」を実行すると、jpgファイルだけが表示されません。(sub_screen.swfのボタン等は表示されます。)2重にloadMovieを実行することは不可能なのでしょうか? ご協力をお願いします。

  • perlで変数の中身を変数とみなす方法ってありますか?

    perlで、変数の中身を変数とみなし、その中身を知る方法ってありますか? 具体的に言うと、 $abc = "$xyz"; $xyz = "test"; なる状況だったとして、$abc から "test" という文字列にたどりつく 方法ってあるのでしょうか? 何をしたいのかというと、テキストファイル上に "$xyz" と書かれてたと します。そのテキストファイルを perl で解読したとき、その時点での 実行中の $xyz に何が入っているかを得たいのです。 もちろん、連想配列を使えば似たようなことができるのは知っていますが、 性質上、できればスタティック変数を使いたいのです。 そのような方法は、perl には用意されているのでしょうか?

    • ベストアンサー
    • Perl
  • 以下のフラッシュですがインターネットエクスプローラーだと「あいうえお」

    以下のフラッシュですがインターネットエクスプローラーだと「あいうえお」などの日本語を含めて全て転送出来るのにファイヤーフォックスだと半角英数しか文字を転送出来ません。何かいい方法はございませんでしょうか? http://hfm-kenchan.com/Lesson/sample/send_str/frame.htm なお、プログラムは「.hfm」様http://hfm-kenchan.com/index.htmlのサンプル作品集 『No.700HTMLフォームに文字列表示』を使用させていただいています。

  • PHPでセッションに入れたクラスの変数が消える

    こんにちは。 PHPでセッションを使っていて困ったことが怒りました。 セッションに入れたクラスインスタンスの中の変数が消えます。 一回目に参照したときは残っていますが、 2回目アクセスした時には無くなってます。 クラスインスタンスのメンバー変数に文字列など、PHP標準のものは残ってますが、メンバー変数にインスタンスを入れると、消えることが判明しました。 これはなぜですか?? よろしくお願いします。

    • 締切済み
    • PHP
  • 半角スペースを含む文字列を変数にセット可能?

    以下のような、画像を読み込む関数を定義します。 function changePhoto(OBJname, image) { document.images[OBJname].src=image; } これを onClick=changePhoto('Photo316','abc xyz.jpg') のように、引数に半角スペースを含む文字列で呼び出すと、エラーになってしまいます。 abc_xyz.jpgであれば問題ありません。 半角スペースは渡せないのでしょうか? よろしくお願いします。

  • 変数内の指定の文字列を消去するには?

    以下のような文字列が変数aの中に入っているとします "ABC CO.,I","4540",""STAR"","2010/03/31" この中から CO.,という文字だけを抜き取り、 変数aにある文字列は "ABC I","4540",""STAR"","2010/03/31" にしたいと思っておりますが、どのように行ったらよいのでしょうか? 初心者の質問で申し訳ありませんがよろしくお願いします。

  • 繰り返し処理

    繰り返し処理 初心者な質問かもしれませんが何卒ご教授お願いします。 行いたい処理としては具体的には ムービクリップが100個あってそれぞれ別画像のjpg画像を読み込み そのムービクリップ内のボタンをクリックするとさらにそれぞれ別の画像を読み込むという仕組みです。 100個それぞれ別のムービクリップしても可能だと思うのですがそれだと大変なので 同じムービークリップでインスタス名を変えております。 インスタンス名は下記のように連番にしました。 m1~m100 読み込む画像は下記のようにフォルダを連番にしました。 photo/1/photo.JPG~photo/100/photo.JPG 一つずつ書くと下記のような感じでしょうか… _root.photo.m1.img.loadMovie('photo/1/photo.JPG'); ・ ・ ・ _root.photo.m100.img.loadMovie('photo/100/photo.JPG'); ボタンの方は _root.photo.m100.bt に置き クリックすると _root_box にphotobox.swfを読み込み、読み込み終わったら photobox.swfのムービークリップ top side back に photo/100/top.JPG photo/100/side.JPG photo/100/back.JPG を読み込むという仕組みです。 これもインスタンス名m1~m100のムービクリップ内のボタンによって読み込む画像が異なります。 連番にしたので while文を使用して出来るかと思ったのですがうまくいきませんでした。 どなたか分かる方がいらしたら是非、教えて頂けると大変助かります。 不明な点がありましたらお手数ですがご連絡下さい。 どうぞ宜しくお願い致します。

  • 変数にHTMLを代入する場合

    ただの文字列であれば $html = "abc"; で代入できますが、 たとえば$htmlという変数に 「 <a href="$url">$url</a> 」 という文字列を代入する場合にはどうすれば良いんでしょうか? もちろん$urlは変数名ではなく、代入された文字列を表示します。 (例:$url = "http://#/")

    • ベストアンサー
    • PHP
  • 引数を変数で渡す方法

    いつもお世話になります・。 function tst(a,b){  alert("a="+a+" b="+b) } として、 tst(1,'bbb'); とすれば a=1  b=bbb となります。 ところが、 Param="1,'bbbb'"; tst(Param); とすると、 a=1,bbb b=undefined となってしまいます。 また、 tst(eval(Param)); とすると、 a=bbb b=undefined と、なってしまいます。 また、 var Param=new array(1,'bbbb') tst(Param); とすると、何も表示されません。 引数 1,'bbb' を変数として関数に渡すにはどうしたらよいのでしょうか。 目的は、JSONで引数文字列を取得して関数に渡したいのです。 JSONで、関数に渡す引数をどのように定義したらよいものかと いうことでの質問です。 が、JSONの記載が長くなるので、 ここで質問した方法がわかれば何とか後は自分でできると思うのですが、 よろしくご教示お願いいたします。

専門家に質問してみよう