- ベストアンサー
Flush起動変数に関する問題
- Flush起動変数に関する問題の解決方法を教えてください。
- HTMLからFlushに値を送っても表示されない問題が発生しています。
- 原因がHTML側にあるのかFlush側にあるのか切り分けができません。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
文字が表示されないだけで、 Flash(※Flushではありません。flushはSharedObjectクラスのメソッドです。) は表示されるのでしょう? それだと HTML ではなく Flash に問題があると思います。 しかし Flash に関しては、 バージョン(Flashのバージョン・パブリッシュするSWFのバージョン・ActionScriptのバージョン)や、 ステージに置いた物の状況などなど、 全く何も書かれていらっしゃいませんから回答が非常に難しいです。 手当たり次第書くと次のような感じです。 ・ダイナミックテキストのテキストフィールド を _root(シーン1 などメインムービー)のタイムラインのステージ上に配置してあるか。 →配置していなければ配置する。 "静止テキスト" ではなく "ダイナミックテキスト" を配置。 ・配置したテキストフィールド に「test」という "変数名" を付けているか。 →この場合付けるのは "インスタンス名" ではなく "変数名" なので間違えないように付ける。 ・配置したテキストフィールドの文字色は適切か。 →背景色と同色だと表示されても見えないので注意。 ・配置したテキストフィールドのフォントは適切か。 →マーク記号のようなフォントではhogeは表示されない 「_ゴシック」など前に「_」の付いたデバイスフォントが望ましい。 まだまだ他にもうまく表示されない原因は考えられますが、 だいたい上のようなことが表示されない原因になっていることが多いと思います。 ================== 上のように何らかの対処をして表示されてから "先の話" です。 対処して表示される前には、下記のことを考えない方が良いと思います。 混乱するだけだと思います。 http://oshiete1.goo.ne.jp/qa2964016.html にも書かれてありますが、 これは簡単に 「確認する方法」 です。 FlashMX以上をお持ちで、FlashPlayer6 以上用の SWF をパブリッシュする場合は、 この方法はMacromediaもAdobeも推奨していません。 「確認するため」 にテキストフィールドに "変数名" を付けるのは良いかもしれませんが、 本番では避けるべきです。 FlashPlayer6 以上用の SWF をパブリッシュする場合は、 テキストフィールド の 変数名 を削除します。 そして変数名とは別の "インスタンス名" を付けます。 例えば、 「hyouji_txt」 のようなインスタンス名を付けます。 そして、 hyouji_txt.text = test; のようなスクリプトを、フレームに書くなどして表示させます。 Flash CS3 ドキュメンテーション 「テキストフィールドのインスタンス名と変数名について」 http://livedocs.adobe.com/flash/9.0_jp/main/00000881.html > プロパティインスペクタの [変数] テキストボックスで、 > 変数名をダイナミックテキストフィールドや > テキスト入力フィールドに割り当てることができます。 > これによって、変数に値を割り当てることができます。 > これは、旧バージョンの Flash Player (Flash Player 4 など) 用の > アプリケーションを作成するときに使用する可能性のある > 非推奨の機能です。 > それよりも新しいプレーヤーを対象にするときは、 > インスタンス名と ActionScript を使用して、 > テキストフィールドのテキストをターゲットにする必要があります。
その他の回答 (1)
- shinya23so
- ベストアンサー率50% (80/159)
<param name="FlashVars" value="test=hogehoge"/> //のつぎに <embed FlashVars="test=hogehoge"/>
お礼
丁寧なご回答ありがとうございました。 Flashなのですが、他の人が作成したものを使用するという形をとっていますので、バージョンなど詳しいことが書けずにいました。 (あとで確認してみたところ、Flashのバージョンは6だそうです。) そのため、不具合の原因の切り分けもできず、困っていました。 今回、ご回答をいただき指針を立てることができました。 まことにありがとうございました。