質問ページ2 / 117


質問ページ2 / 117

質問ページ2/117

概要LocalConnection?()の実現
投稿者Parafla Quality
状態
カテゴリーActionScript
投稿日2008-03-28 (金) 19:23:18
バージョン1.37

質問内容

[Flex 2アプリケーション内でのFlash 8 SWFの使用について] http://www.adobe.com/jp/support/flex/ts/documents/749eaa47.htm の内容をParaflaで実現したいのですが、 lc = new flash.net.LocalConnection?(); と書いて実行すると、ログに、 「警告 : LocalConnection? は関数ではありません」 と書き出されます。 どのように記述すればよいのでしょうか?

回答

  • こちらも参考にされてみては如何でしょうか?http://livedocs.adobe.com/flash/9.0_jp/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001792.html#wp508910-- 2008-03-29 (土) 13:46:28
  • ありがとうございます。
    まだ完成してませんが、警告は出なくなりました。
    flash.net.LocalConnection?();ではなくflash.Object.LocalConnection?();でした。 -- 質問者? 2008-03-30 (日) 01:09:59
  • 色々いぢってみましたが、ParaFlaではLocalConnection?は使えないようです。 -- 質問者? 2008-04-08 (火) 22:03:37
  • 解決済になってますが、過去に使ったことありますよ。ただ、LocalConnection?はドメインの関係などもあるので、じっくり調べたほうが良いと思います。 -- 2008-04-09 (水) 00:00:59
  • ありがとうございます。
    再び未解決にさせて頂きました。
    質問のURLのサンプルのstar_flash.swfをparaflaで作りました。
    こんな感じで。
    traceはテキストです。
    lc = new flash.object.LocalConnection?();
    lc.rotateStar = function( angle ) { trace = "angle"; };
    lc.zoomStar = function( factor ) { trace = "factor"; };
    lc.stopPlanet = function() { trace = "stop"; };
    lc.resumePlanet = function() { trace = "start"; };
    lc.allowDomain("*");
    lc.connect("swf8connector");
    でも、受信できなかったので、LocalConnection?は使えないと判断しました。
    かなり調べたのですが、参考になる例はありませんでした。
    宜しければ、解決案やアイディアを教えて下さい。 -- 質問者? 2008-04-09 (水) 21:55:55
  • 上記に書かれたサンプルは見れてないのですが、基本的な同じドメインでの変数の受け渡しから試してみては如何でしょうか?下記ご参考までに。
    new LocalConnection?() //コンストラクタ 受信・送信の両方に記述
    LocalConnection?.connect(接続名) //受信側で、接続名を設定
    LocalConnection?.send(受信側の接続名, 関数名, [パラメータ1...N]) //送信側の設定 (connectで設定した接続名, 受信側で設定した関数名)
    LocalConnection?.close() //受信側で不要になった接続を解除
    この4つの使い方が解れば出来ると思います。受信側と送信側の両方に設定が必要になります。ちなみにこのクラスはFlashPlayer6以上です。 追記です。サンプル読みました。すみません、見落としてました。Flexとの通信なんですね。当方Flex使ったことがないのでわかりませんが、そちらの設定は間違いないでしょうか?LocalconnectionクラスはParaflaでも使えたのでその通りに記述すればいけそうなんですが・・・。ちなみにコンストラクタのflash.object.へのパスは書かなくてもOKです。 -- 2008-04-10 (木) 00:16:48
  • Flexでの設定はサンプルをそのまま使っているので、間違いはないはずです。
    parafla同士のLocalConnection?を試してみようと思います。
    探してもなかったのですがサンプルってどこかにあるでしょうか? -- 質問者? 2008-04-10 (木) 22:35:50
  • Parafla同士の簡単なサンプルを作ったので宜しければご参考下さい。このページの下にpflファイル(2つ)添付しました。 -- 2008-04-11 (金) 12:44:22
  • サンプル大変ありがとうございます。とても参考になりました。
    flash.object.をつけていたのが原因でした。
    Flexとの通信、上手く出来ました。ありがとうございます。 -- 質問者? 2008-04-12 (土) 01:22:36
  • うまくいって良かったです。LocalConnection?クラスはトップレベルクラスなのでflash.object.は必要ないんですね。これを付けてしまうと同じトップレベルクラスのObjectクラスってことになってしまうのかも?こういうflash.〜パスをつけるのはパッケージを使用するときぐらいだと思います。私も勉強になりました。ありがとうございました。 -- 2008-04-12 (土) 13:10:33
  • サンプルありがとうございます。余分な「;」がいくつかあるかもですが、そのままサンプルpfl.に使わせていただきます -- 2008-04-14 (月) 10:28:57