Google Swiffyでテキストフィールドで「変数」参照時に_rootで参照するとうまく行かないときの対処法

みなさまお久しぶりです。ちょっとブログをおちついてて書く機会がでてきました。

最近も引き続きGoogle Swiffyを試し続けていますが、テキストフィールドで「変数」参照時に_rootで参照するとうまく行かないときの対処法を書いておきます。

実際に以下のソースで試してみます。

今回のソース

FLASH
[SWF]https://www.1ft-seabass.jp/memo/archives/google-swiffy-010/google-swiffy-010.swf,320,480[/SWF]

ソースは以下のようになってます。


_root.display_text = "テキストが" add "表示されます。";

今回のパブリッシュはFlashLite1.1からの変換を見越し、add関数を利かすためFlashLite2.0書き出しです。Flash8書き出しだとadd関数うまく機能しないことがあります。

テキストフィールドどちらも_root.display_text変数が「テキストが表示されます。」という文字が入っています。

「_root.display_text 参照」と書かれたものは、テキストフィールド設定のオプションで_root.display_textで参照しています。

「/:display_text 参照」と書かれたものは、テキストフィールド設定のオプションで/:display_textで参照しています。

それでは変換してみます

変換されたものは以下の通りです。

別ページで開く

見事に「_root.display_text 参照」と書かれたものは表示されません。

というわけで、テキストフィールド設定のオプションで設定されたテキストフィールドの場合、スラッシュの参照で/:display_textで行いましょう。

なお、AS2.0的なTextfield.textを使った文字列参照の場合はこのようなことはないので安心です。

おわりに

いかがでしたでしょうか?

今回のような、ありえそうなシチュエーションとしては、FlashLite1.1で制作したFlashですとテキストフィールドに文字を代入するにはテキストフィールド設定のオプションを利用せざるえないので、それを変換する場合には注意したほうがよさそうです。私の場合、好みとして、/:display_textよりも_root.display_textのほうがまだしっくりくるので、ついついやってしまいます。

以下、今回のファイル一式を置いておきますので興味のある方は変換して試してみてください。

.fla(CS5.5作成)データダウンロード:google-swiffy-010.zip

それでは、よいGoogle Swiffy Lifeを!