• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:addChildしたオブジェクトを完全に消したい。)

【解決方法あり】flash cs3 action script3.0でaddChildしたオブジェクトを完全に消す方法

このQ&Aのポイント
  • flash cs3 action script3.0でaddChildしたオブジェクトを完全に消す方法が知りたいです。
  • papervision3Dで制作したswfを3つ同じフォルダ内に置き、ボタンを作成し、呼び出しています。
  • removeChildの後に消えないので、呼び出したswfを完全に消す方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • an631
  • ベストアンサー率82% (28/34)
回答No.1

意図的にメモリ上から完全に消し去る事はできません。

参考URL:
http://oshiete1.goo.ne.jp/qa3808297.html
jsqrm
質問者

お礼

回答ありがとうございます。 ガベージコレクション、勉強になりました!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Flash as3.0版ソース  ボタンで内容遷移、うまくいかない…

    こんにちは。 Flash as3.0勉強始めてばかりです。 下記のソースのエラーはボタンを押したたびに、表示した内容はどんどん重ねています。たとえば、(1)ボタンを押した場合、(1)の内容を表示されまして。(2)ボタンを押したとき、画面には(1)+(2)の内容を表示されています。 いろいろ調べましたんですが、なかなかうまくいかないです。 ご解答をよろしくお願い致します。 詳細ソース ーーーーーーーーーーーーーーーーーーーーーー // イベントを設定 Button_tsr.addEventListener ( MouseEvent.CLICK , onClick1 ); Button_gaiyou.addEventListener ( MouseEvent.CLICK , onClick2 ); Button_message.addEventListener ( MouseEvent.CLICK , onClick3 ); Button_jigyou.addEventListener ( MouseEvent.CLICK , onClick4 ); Button_saiyou.addEventListener ( MouseEvent.CLICK , onClick5 ); Button_toiawase.addEventListener ( MouseEvent.CLICK , onClick6 ); // ローダーオブジェクトを作成し配置 var loader_obj : Loader = new Loader(); stage.addChild (loader_obj); loader_obj.x = 85; loader_obj.y =97; // 画面クリックをするとonClickが動作するイベント function onClick1 ( event:MouseEvent ) { // URLRequestを設定 var url0:URLRequest = new URLRequest( "Top.swf" ); // 実際にページに飛ぶ loader_obj.load ( url0 ); } function onClick2 ( event:MouseEvent ) { // URLRequestを設定 var url1:URLRequest = new URLRequest( "概要.swf" ); // 実際にページに飛ぶ loader_obj.load ( url1 ); } function onClick3 ( event:MouseEvent ) { // URLRequestを設定 var url2:URLRequest = new URLRequest( "Message.swf" ); // 実際にページに飛ぶ loader_obj.load ( url2); } function onClick4 ( event:MouseEvent ) { // URLRequestを設定 var url3:URLRequest = new URLRequest( "サービス.swf" ); // 実際にページに飛ぶ loader_obj.load ( url3); } function onClick5 ( event:MouseEvent ) { // URLRequestを設定 var url4:URLRequest = new URLRequest( "情報.swf" ); // 実際にページに飛ぶ loader_obj.load ( url4); } function onClick6 ( event:MouseEvent ) { // URLRequestを設定 var url5:URLRequest = new URLRequest( "問合せ.swf" ); // 実際にページに飛ぶ loader_obj.load ( url5); }

  • AS3.0による外部swfの制御

    AS3.0による外部swfの制御 質問させていただきます。 やりたいと事は、メインとなるswfのボタンを押して、 読み込んだ外部swf(stopしている)を再生(play)したいと考えております。 メインのswfはAS3.0、読み込む外部swfはAS2.0になります。 環境はFlash CS3です。 以下がスクリプトになります。 //swf読み込み配置 var loader_obj : Loader = new Loader(); var url : URLRequest = new URLRequest("test.swf"); MovieClip(root).loader_obj.load(url); loader_obj.y = 3 loader_obj.x = 392 stage.addChild(loader_obj); //swfボタン制御 btn.addEventListener(MouseEvent.ROLL_OVER,btn_play); function btn_play(event:MouseEvent):void {MovieClip(root).photo.gotoAndPlay(2);//メインswfのムービーリップも動かす <--ここに外部swfを参照するスクリプトが入ると思うのですが・・・-->gotoAndPlay(2);//外部swfの2フレーム目から再生 } 肝心の所のスクリプトはわかりません・・・ 宜しくお願い致します。

    • ベストアンサー
    • Flash
  • (AS3)外部swfを読み込んだが表示されない

    AS3で、以下のようなコードで外部SWFを呼び出して表示するというプログラムを組んでいるのですが、なぜか画面に表示されません。ContentTypeを調べたりなど色々やってみたところ、情報が取得できるのでなんらかの理由でステージに配置されていない、または配置されているが見えなくなっています。読み込むのを画像データにしてみるとうまくいきます。画像読み込みとSWF読み込みのコードって共通ですよね? package {  import flash.display.*;  import flash.net.*;   public class Main extends Sprite {    function Main():void {     var filename:String = "easy.swf";     var request:URLRequest = new URLRequest(filename);     var loader:Loader = new Loader();     loader.load(request);     addChild(loader);   }  } } 読み込むSWFのバージョンは9.0、このプログラムの書き出しも9.0で行っているのでバージョンの問題でも無いはずです。どなたかお分かりでしたら、どうかご教授お願い致します。

  • Flash professional CS5を使っており,AS3.0で

    Flash professional CS5を使っており,AS3.0で記述しています。 外部swf(test.swf)をムービークリップ(my_mcとしました)に読み込むには どのようにコードを記述すればよいのでしょうか? MovieClipLoaderを使う物や var urlReq:URLRequest=new URLRequest("test.swf"); var swfLoader:Loader=new Loader(); swfLoader.load(urlReq); このようにロードする方法は見つかったのですが my_mc = loader.content as MovieClip; などとしても ムービークリップに読み込めません。 いろいろ試したのですが直接ステージに読み込まれて表示されたり,エラーも起こらず表示されなかったりします。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • AS3での外部swfの制御

    こんにちは。 Flashのコードについて質問させていただきます。 AS3で外部swfを読み込み、制御したいのですが上手くいきません。 ここでいう外部swfはflashで作ったものではなく、aftereffectsでswfで書き出したものです。 var swf:MovieClip; var loader:Loader = new Loader(); var newSWFRequest:URLRequest = new URLRequest("swfs/" + "test" + ".swf"); loader.load(newSWFRequest); addChild(loader); 上記コードでswfを表示+再生は出来ます。 更に、swfを停止、再再生、逆再生などしたいのですが、可能でしょうか? そもそもこのswfにはタイムラインという概念が存在しないので微妙ですが。。。 swf = new MovieClip(); swf .stop(); とか書き足せば、 TypeError: Error #1034: 強制型変換に失敗しました。flash.display::AVM1Movie@231c04a1 を flash.display.MovieClip に変換できません。 が出ます。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • 外部swf内関数の使い方を教えてください

    actionscript 3でムービークリップ内に読み込んだ外部swf内の関数の使い方を教えてください。 以下仮ソースです var mc:MovieClip = new MovieClip(); var imgLoader:Loader = new Loader(); var path:URLRequest = new URLRequest("materials/key_550.swf"); var childSwf:MovieClip; imgLoader.load(path); imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,compLoader); function compLoader(evt:Event):void{ mc.addChild(imgLoader); addChild(mc); childSwf = mc.imgLoader.content as MovieClip //ここをimgLoader.content as MovieClipとするといけるのですが、mcの子のloaderと指定したいのです。 startGOGO(); } function startGOGO():void{ childSwf.keyContMove(); //子のswf内の関数です。 } よろしくお願い致します。

  • AS3のloaderを使って、外部swf(子swf)をloadして再生

    AS3のloaderを使って、外部swf(子swf)をloadして再生する swf(親swf)を作っています。 loadするときに、子swfにflashvarsのパラメータを与えたいと思っています。 子swfでパラメータを使うためです。 その際の、パラメータの渡し方を教えていただきたく思います。 ソースのイメージは以下です。 var loader:Loader = new Loader(); loader.load(new URLRequest("http://~.swf"); URLRequestする際に、swf?id=~ のように書けば、 flashvarsとして与えることが出来ることは分かったのですが、 渡したい値が複数あるため、 可読性をあげるために値を1つずつ設定する方法を探しています。 イメージとしては、以下のような形です。 loader.parameters["id"] = "123"; //parametersという名前は仮です。 loader.parameters["name"] = "sato"; こういったことが可能でしょうか? おわかりになる方、ご教授よろしくお願いいたします。

  • AS3 アクションのクリア

    ボタンクリックで外部のswfを読み込んでいます。 btn1.addEventListener(MouseEvent.CLICK,link1); function link1(event:MouseEvent):void { var req:URLRequest = new URLRequest("movie.swf"); var ld:Loader = new Loader(); ld.load(req); MovieClip(parent).main_mc.mc1.addChild(ld); } 他のボタンにも同じようにmain_mc.mc1にそれぞれのswfを読み込むようにしていますが、 ボタンをクリックするたびに、main_mc.mc1に読み込んだswfが重なって表示されてしまいます。 AS1・2のように自動的にクリアになり新しいswfが読み込まれるということができません。 他のボタンをクリックしたときにmain_mc.mc1に表示されているswfをクリアにする方法はないでしょうか。 ActionScript3は勉強中のため、知識が浅く申し訳ありませんが、わかる方教えてください。 お願いいたします。

    • ベストアンサー
    • Flash
  • addChildとremoveChildの処理についてご教授ください

    いつもお世話になります。 ActionScript3でサイト制作を行なっています。 初歩的な質問で大変恐縮ですが、addChildとremoveChildの処理に関するご質問です。 予め「a_mc」、「b_mc」、「bg_mc」というムービークリップを作成し、それぞれをリンケージしておきます。 1.ENTER_FRAME内の条件Aの中で「bg_mc」上に「a_mc」をaddChildします。 2.条件Bにあるhoge関数の中で「bg_mc」上に「b_mc」をaddChildします。 3.「a_mc」は不要なのでremoveChildしたいのですが、下記のエラーが出てしまいます。 【ArgumentError: Error #2025: 指定した DisplayObject は呼び出し元の子でなければなりません。】 上記のエラーの原因がよく理解できなかたので、色々試してみましたが、 例えば、条件Aの中でステージ上にaddChildしたオブジェクト「this.addChild(c)」は、 条件Bのhogeの中でremoveChildすることができました。 上記の3の処理ができない原因は何でしょうか? また、上記の処理を実現するにはどのような処理方法が適切でしょうか? 是非ご教授ください。 宜しくお願い申し上げます。 // 背景MC var bg:MovieClip = new bg_mc(); // コンテンツMC var a:MovieClip; var b:MovieClip; this.addEventListener(Event.ENTER_FRAME, visibleCheck); function visibleCheck(eventObject:Event):void {  if(条件A) {   a = new a_mc();   bg.addChild(a);  } else if (条件B) {   hoge();   function hoge():void {    b = new b_mc();    bg.addChild(b);    bg.removeChild(a);   }  } }

  • 下記のような関数から外部からの戻り値を返したいのですが

    下記のような関数から外部からの戻り値を返したいのですが 良い方法はございませんでしょうか? 例えば trace( test( "test" ) ); このように戻り値を返す関数にしたいです。 function test( strData:String ):String { var variables:URLVariables = new URLVariables(); variables.data = strData; var request:URLRequest = new URLRequest(); request.url = "http://test.asp"; request.data = variables; request.method = URLRequestMethod.POST; var loader = new URLLoader(); loader.addEventListener(Event.COMPLETE , function(event) { var retValue:String = new String(event.target.data); }); loader.load(request); //return ???? }

    • ベストアンサー
    • Flash
このQ&Aのポイント
  • 反町隆史さんが主演の連続ドラマ『今どきの若いモンは』にちなんで、上司にかけられて嬉しかった言葉を教えてください。
  • OKWAVEの特別企画『OKWAVE Stars』からの質問です。反町隆史さんがインタビューを通じて、皆さんのエピソードを聞きたいとのことです。
  • 参加には注意事項を確認して、OKWAVE Starsのホームページから回答をお願いします。
回答を見る