LocalConnectionにより異なるウィンドウのSWF間でデータをやり取りする方法について、たまたまご質問が続きました。そこで、サンプルムービーをアップしました。
サンプルムービーは、ComboBoxから項目を選択すると、別ウィンドウに表示されるSWFの画像表示が切り替ります。
データのやり取りは、2方向の通信ですので、LocalConnectionのインスタンスもふたつ作成します。これは、電話で話すときの手順と同じです。
[1]電話をダイヤルする(接続確認のLocalConnection 1号作成)
[2]呼出し音が途切れて相手が出る(接続確立)
[3]相手「はい○○です。ご用件は?」(テータ通信のLocalConnection 2号作成)
[4]「△△です。実は、お願いがあります」(データを送信)
電話なら、当然の手順です。ところが、ActionScriptになった途端、ダイヤルもし終わらないうち([1])に、いきなり喋りまくって([4])、「おかしい、伝わらない」と悩む初心者が少なくありません。伝わりません([2]や[3]が抜けています)。
この記事へのコメント
●1.kazu(2003年10月31日 11:53)
僕も作ってみました
http://situcha.swee.to/flash/2003/localConnection2.html
localConnectionて動作検証するとき二つSWFを開かなければならないし、前に開いていたswfが開きっぱなしだったりするとうまくいかなったりと、いつも苦戦しています。
●2.野中文雄(2003年11月02日 10:54)
getURLアクションのターゲットを"_blank"でなく、別の
名前で指定すればよいでしょう。その名前のターゲットが
存在しなければ、新規にブラウザウィンドウが開きます。
存在すれば、それと置き換わりますので、受け側が複数に
なってしまうことは避けられます。
_____
> 前に開いていたswfが開きっぱなしだったりするとうまくいかなったりと、いつも苦戦しています。
●3.野中文雄(2003年11月23日 17:14)
Internet Explorer 6.0/Windows XPで、getURLによるウィンドウの指定が利かないという問題が発見されました。
[IE/WinでgetURLのウィンドウ指定ができない]
http://f-site.org/articles/2003/11/23165731.html
そこで、この問題の対処を行ったサンプルを、再作成しました。
http://www.fumiononaka.com/Sample/F-site/LocalConnection/LocalConnection2.html