HTMLソースからFlashファイルに変数を渡す方法について書きました。
ActionScriptの場合は変数はHTMLソースの中で指定して、Flashファイルに渡す
ことで、Flashファイルを動的に処理することができます。
先週はActionScript3.0の場合で作ってみましたが、今週はActionScriptの
1.0/2.0の場合で作ってみます。
今回もFlash CS4 Professionalを使っています。
ActionScriptの場合は変数はHTMLソースの中で指定して、Flashファイルに渡す
ことで、Flashファイルを動的に処理することができます。
先週はActionScript3.0の場合で作ってみましたが、今週はActionScriptの
1.0/2.0の場合で作ってみます。
今回もFlash CS4 Professionalを使っています。
1.次の画面からはFlashファイル(AS 2.0)を選択し、任意の名前をつけます。(図1)

ファイル→新規→Flashファイル(AS 2.0)の順にクリックして、任意の名前をつけ
ることもできます。
ここでは、vartest.flaという名前にしています。
2.レイヤー1の1フレーム目を右クリックしてアクション選択して、アクション
フレームを出します。
3.ここに次のプログラムを書きます。
上の青いチェックボタンを押して、シンタックスエラーチェックします。
これでエラーがないか確認します。(図2)

後は先週と同じ手順でパブリッシュします。
先週も書きましたが、今週も書いておきます。
3.ファイル→パブリッシュの設定を選択し、パブリッシュの設定をします。
ここでは、Flash(swf)とHTMLにチェックを入れて、パブリッシュボタンを押しま
す。(図3)

パブリッシュボタンを押すとflaファイルを保存したところと同じフォルダに
vartest.swfファイルとvartest.htmlファイルが生成されます。
4.vartest.htmlを編集します。
4-1.秀丸などのテキストエディタでvartest.htmlファイルを開いて、次の
JavaScriptの関数を探します。
AC_FL_RunContent
たくさん引数がずらずらとあります。
引数に...
を追加します。
この場合は変数myStrにaaa、変数myNumに555を入れてswfファイルを呼び出します。
修正後はこんな感じになります。
4-2.paramタグを追加します。
JavaScriptを有効にしていれば、4-1だけでも動きますがJavaScriptを無効にし
ている場合も追加しておきます。
など、paramタグがずらずらと並んでいるところに...。
を追加します。
4-3.embedタグの追加
もうひとつ、embedタグの要素を追加します。
のところを...。
を追加します。
このような感じになります。
それでは、vartest.htmlをブラウザで開いてみます。
おお~。swfファイルでHTMLで指定した名前と引数が表示されました~。(図4)

前回と今回作ったFlashファイルは簡単すぎるくらい簡単ですが、PHPなどサー
バーサイドプログラムで取得したデータを利用してFlashの表示を変更したり、
JavaScriptなAPIを使って動的にデータを取得してFlashで表示する場合にも使わ
れます。
モバイル版のFlashはFlash Liteを使いますが、最新のFlash Lite 3も使ってい
るActionScriptは2.0のままです。
将来的にはActionScript3.0を使う機会が増えていくと思われますが、
ActionScript2.0を使う機会がまだまだ多いです。
ActionScriptについては2.0と3.0、両方覚えたほうがいいと思います。
今日はこれでおしまいです。

ファイル→新規→Flashファイル(AS 2.0)の順にクリックして、任意の名前をつけ
ることもできます。
ここでは、vartest.flaという名前にしています。
2.レイヤー1の1フレーム目を右クリックしてアクション選択して、アクション
フレームを出します。
3.ここに次のプログラムを書きます。
// テキストフィールドの作成
this.createTextField("myTxt", 100, 0, 0, 100, 20);
// myWordの表示
if (_root.myWord == undefined) {
myTxt.text = "myWord is not defined";
} else {
myTxt.text = "myWord = ";
myTxt.text += _root.myWord;
myTxt.text += "\n";
}
// myNumberの表示
if (_root.myNumber == undefined) {
myTxt.text = "myNumber is not defined";
} else {
myTxt.text += "myNumber = ";
myTxt.text += _root.myNumber;
myTxt.text += "\n";
}
上の青いチェックボタンを押して、シンタックスエラーチェックします。
これでエラーがないか確認します。(図2)

後は先週と同じ手順でパブリッシュします。
先週も書きましたが、今週も書いておきます。
3.ファイル→パブリッシュの設定を選択し、パブリッシュの設定をします。
ここでは、Flash(swf)とHTMLにチェックを入れて、パブリッシュボタンを押しま
す。(図3)

パブリッシュボタンを押すとflaファイルを保存したところと同じフォルダに
vartest.swfファイルとvartest.htmlファイルが生成されます。
4.vartest.htmlを編集します。
4-1.秀丸などのテキストエディタでvartest.htmlファイルを開いて、次の
JavaScriptの関数を探します。
AC_FL_RunContent
たくさん引数がずらずらとあります。
引数に...
'FlashVars', 'myStr=aaa&myNum=555',
を追加します。
この場合は変数myStrにaaa、変数myNumに555を入れてswfファイルを呼び出します。
修正後はこんな感じになります。
AC_FL_RunContent(
'codebase',
'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0',
'width', '550',
'height', '400',
'src', 'vartest',
'quality', 'high',
'pluginspage', 'http://www.adobe.com/go/getflashplayer_jp',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'showall',
'wmode', 'window',
'devicefont', 'false',
'id', 'vartest',
'bgcolor', '#ffffff',
'name', 'vartest',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', 'vartest',
'FlashVars', 'myStr=aaa&myNum=555',
'salign', ''
); //end AC code
4-2.paramタグを追加します。
JavaScriptを有効にしていれば、4-1だけでも動きますがJavaScriptを無効にし
ている場合も追加しておきます。
<param name="allowScriptAccess" value="sameDomain" />
など、paramタグがずらずらと並んでいるところに...。
<param name="FlashVars" value="myStr=aaa&myNum=555" />
を追加します。
4-3.embedタグの追加
もうひとつ、embedタグの要素を追加します。
<embed src="vartest.swf" quality="high" bgcolor="#ffffff" width="550"
height="400" name="vartest" align="middle"
allowScriptAccess="sameDomain" allowFullScreen="false"
type="application/x-shockwave-flash"
pluginspage="http://www.adobe.com/go/getflashplayer_jp" />
のところを...。
FlashVars="myStr=aaa&myNum=555"
を追加します。
このような感じになります。
<embed src="vartest.swf" FlashVars="myStr=aaa&myNum=555" quality="high"
bgcolor="#ffffff" width="550" height="400" name="vartest" align="middle"
allowScriptAccess="sameDomain" allowFullScreen="false"
type="application/x-shockwave-flash"
pluginspage="http://www.adobe.com/go/getflashplayer_jp" />
それでは、vartest.htmlをブラウザで開いてみます。
おお~。swfファイルでHTMLで指定した名前と引数が表示されました~。(図4)

前回と今回作ったFlashファイルは簡単すぎるくらい簡単ですが、PHPなどサー
バーサイドプログラムで取得したデータを利用してFlashの表示を変更したり、
JavaScriptなAPIを使って動的にデータを取得してFlashで表示する場合にも使わ
れます。
モバイル版のFlashはFlash Liteを使いますが、最新のFlash Lite 3も使ってい
るActionScriptは2.0のままです。
将来的にはActionScript3.0を使う機会が増えていくと思われますが、
ActionScript2.0を使う機会がまだまだ多いです。
ActionScriptについては2.0と3.0、両方覚えたほうがいいと思います。
今日はこれでおしまいです。














コメントする