BlurFiltan の回答履歴

全2890件中141~160件表示
  • 拡大するとマウスのローカル座標が変わってしまう

    ある四角形の左上から見たマウスの座標を取得したいと考えています。 四角形は移動したり回転させるので、ローカル座標を利用しようと思い、 次のコードを書きました。 mc_box.width = mc_box.width * 2; stage.addEventListener(MouseEvent.MOUSE_MOVE, function(){ mc_label.text = mc_box.mouseX.toString(); }); 一行目でmc_boxのサイズを拡大すると、表示されるmc_box.mouseXは 実際の半分のサイズになってしまいます。 回転させても四角形の左上隅が(0,0)になるようにしたいです。 どうすれば正しくマウスの座標を得られるのでしょうか?

    • ベストアンサー
    • django13
    • Flash
    • 回答数1
  • Flashのスライドショーについてご教授ください

    Flashで困っています!わかる方ご教授お願いします。 タイムラインでスライドショー程度しか作ったことがないFlashど素人なんですが、需要があって四苦八苦しています。 内容はこちら↓ ・写真5枚、写真と連動したテキストのスライドショー(横または縦の動き) ・「次へ」などのボタンは不要 ・最後にstop();またはループ ・写真は季節ごとに差し替えの更新があるので外部から読み込める仕様 ・お客様でも写真を差し替えれば可能な状態 アクションスクリプトじゃなきゃできないのか、タイムラインだけで大丈夫なのか、部分的にスクリプトを書けば可能なのかお教えいただけませんでしょうか。 それか、今さらFlash?っていう人もいるかと思います。 jQueryとかでも実装が可能でしたらご教授いただければと思います。 お手数おかけしてすみませんが、よろしくお願いします。

  • AS3.0でフェードインできない

    まず制作環境ですが、 MacOSX Flash CS5 AS3.0 です。 下記スクリプト内の 「onFadeOut();」 が、効かずに困っています。 どなたかどうすればこの「onFadeOut();」が効く様になるか 教えていただけませんでしょうか? よろしくお願いいたします。 // 写真のURLを保存する配列 var photoArr:Array // var btnArr:Array // 写真を自動的に変更するタイマー var imageTimer:Timer; // 大きな画像を読み込むローダー var bigImageLoader:Loader; // 現在表示されている画像の番号 var imageNum:Number = 0; //-------------------------------- // 初期化の処理 //-------------------------------- // 配列を設定する photoArr = new Array(); photoArr[0] = "test01.swf"; photoArr[1] = "test02.swf"; photoArr[2] = "test03.swf"; photoArr[3] = "test04.swf"; photoArr[4] = "test05.swf"; // btnArr = new Array(); btnArr[0] = btnA; btnArr[1] = btnB; btnArr[2] = btnC; btnArr[3] = btnD; btnArr[4] = btnE; // タイマーを起動 startTimer(); // 大きな画像を読み込む loadImage(); // タイマーをスタートする function startTimer() { imageTimer = new Timer(2000, 0); imageTimer.start(); imageTimer.addEventListener(TimerEvent.TIMER, onTimerCalled); } // タイマーが呼ばれるたびに実行される function onTimerCalled(evt) { btnA.y -= 60; btnB.y -= 60; btnC.y -= 60; btnD.y -= 60; btnE.y -= 60; if(btnA.y <= 0){ btnA.y = 280; } if(btnB.y <= 0){ btnB.y = 280; } if(btnC.y <= 0){ btnC.y = 280; } if(btnD.y <= 0){ btnD.y = 280; } if(btnE.y <= 0){ btnE.y = 280; } onFadeOut(); // フェードアウトをつける function onFadeOut(eventObj) { bigImageLoader.alpha -= 0.1; } // フェードアウトの処理を取り除く if (bigImageLoader.alpha <= 0) { removeEventListener(Event.ENTER_FRAME, onFadeOut); //配置されている画像の削除 mainTarget.removeChild(bigImageLoader); } btnArr[imageNum].alpha = 1; // imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn01をクリックした時の処理 btn01.addEventListener(MouseEvent.CLICK,xClick01); function xClick01(evt:Event):void { btnA.y -= 60; btnB.y -= 60; btnC.y -= 60; btnD.y -= 60; btnE.y -= 60; if(btnA.y <= 0){ btnA.y = 280; } if(btnB.y <= 0){ btnB.y = 280; } if(btnC.y <= 0){ btnC.y = 280; } if(btnD.y <= 0){ btnD.y = 280; } if(btnE.y <= 0){ btnE.y = 280; } //ボタンの透明度を戻す処理 btnArr[imageNum].alpha = 1; imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn02をクリックした時の処理 btn02.addEventListener(MouseEvent.CLICK,xClick02); function xClick02(evt:Event):void { btnA.y += 60; btnB.y += 60; btnC.y += 60; btnD.y += 60; btnE.y += 60; if(btnA.y >= 281){ btnA.y = 40; } if(btnB.y >= 281){ btnB.y = 40; } if(btnC.y >= 281){ btnC.y = 40; } if(btnD.y >= 281){ btnD.y = 40; } if(btnE.y >= 281){ btnE.y = 40; } //ボタンの透明度を戻す処理 btnArr[imageNum].alpha = 1; imageNum-=1; if (imageNum <= -1) { //photoArr.lengthを-1に変更 imageNum = 4; } // 大きな画像を読み込む loadImage(); } // 大きな画像を読み込む function loadImage() { // 新しい画像を読み込む var url = "gallery_img/"+photoArr[imageNum]; //ボタンの透明度を戻す処理 btnArr[0].alpha = 1; btnArr[1].alpha = 1; btnArr[2].alpha = 1; btnArr[3].alpha = 1; btnArr[4].alpha = 1; //読み込まれた画像に該当するボタンの透明度を30%にする処理 btnArr[imageNum].alpha = 0.5; var req = new URLRequest(url); bigImageLoader = new Loader(); bigImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoad); bigImageLoader.load(req); mainTarget.addChild(bigImageLoader); } // 大きな画像が読み込まれたら実行される処理 function onImageLoad(eventObj) { bigImageLoader.alpha = 0; stage.addEventListener(Event.ENTER_FRAME, onFadeIn); } // フェードインをつける function onFadeIn(eventObj) { bigImageLoader.alpha += 0.1; } // フェードインの処理を取り除く if (bigImageLoader.alpha >= 1) { removeEventListener(Event.ENTER_FRAME, onFadeIn); }

  • as3 Event.ADDED_TO_STAGE

    flash cs5で記述しています。 Event.ADDED_TO_STAGEについて調べていますが、 現在まで特に使用しなくても、ステージ上でイベントもしくわマウスイベントなどを 起こす事ができています。サイトに乗っていた記述では、もしあるSWFが外部から ロードされる場合は、Event.ADDED_TO_STAGEを記述しなければならない。 という事は、それ以外のときには記述する必要はないという事でしょうか? しかしながら、 http://www.webzaru.net/as30/974/ のサイト (中段のスクリプト) にあるような、外部にSWFをロードする目的ではない時にも 使用している例があります。(結構あります。) 現在、上記のサイトのスクリプトの理解に努めています。 (webzaru様から引用) public function Main():void { super();    if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); の必要性が全くわかりません。 また、上記ではコンストラクタの記述をしているところですが、 なぜその中に、また初期化をするためのsuper();が記述されているのかがよくわかりません。(自分のイメージの中には初期化する設定の中にまた初期化する設定があるように見えています。) ご存知の方いらっしゃいましたら、是非教えていただけますと助かります。 何卒よろしくお願い致します。

  • ActionScriptのLoaderクラス

    以下、FLASHのカテゴリーがあることに気付かずに、プログラミング(その他)に投稿してしまいましたので、再投稿いたします。よろしくお願いいたします。 以下はActionScript3.0を用いたフォトギャラリーで、外部のXMLファイルに記述しているパスをFLASH上に読み込み、それを参照して外部のフォルダからサムネイル画像を読み込むプログラムの一部です。 おそらく、ActionScriptの超初歩的なことが分かっていないのだと思います。 申し訳ございませんが、ご教示ください。 1 var thumbLoader_obj:Loader; 2 for(var i:uint=0;i<8;i=i+1){ 3 var thumbBtn:MovieClip=this["btn0"+(i+1)+"_mc"]; 4 var thumbUrl:URLRequest=new URLRequest(imgThumb_arr[i]); 5 thumLoader_obj=new Loader(); 6 thumbLoader_obj.load(thumbUrl); 7 thumbLoader_obj.x=3; 8 thumbLoader_obj.y=3; 9 thumbBtn.addChild(thumbLoader_obj); 10 } 以上は配列:imgThumb_arrに格納しているサムネイル画像のパスを参照して、loadメソッドを用いて インスタンス:thumLoader_objに読み込んだサムネイル画像を、サムネイル画像の枠を格納しているインスタンス:thumbBtnにループ処理で配置させるプログラムです。 3行目からわかる通り、サムネイル画像の枠のインスタンス名はbtn01_mc~btn08_mcで、 7行目と8行目は単なるサムネイル画像と枠の配置調整のための座標設定です。 さて、質問なのですが、5行目の代わりに1行目を thumLoader_obj=new Loader(); と書いて、5行目をコメントアウト(もしくは削除)してもプログラム的には問題ないように初心者の私には思えてしまうのですが、このようにすると、最後のサムネイル枠(btn08_mc)にしかサムネイル画像が読み込まれません。最初の通りだとすべての枠に該当するサムネイル画像が読み込まれてうまくいきます。明らかなプログラム上の違いがあるのだと思いますが、調べてみても簡単には分かりませんでした。どなたか、お教えいただければ幸いです。

  • Flashで日毎に違う数字を外部テキストで表示

    初めて投稿させて頂きます。 FLASHで抽選くじのようなものを作ろうとしているのですが つまづいてしまいましたので、アドバイスを頂けたら幸いです。 内容は以下の通りです。 こちらの指定した電話番号の下4桁の数字で、当たりの出る抽選クジを作りたいと思っています。 『例)今日は、下4桁が1234の方に◯◯をプレゼント!』という感じです。 4桁の数字は日毎に変わるようにしたいです。(1、2週間分の数字をストックしておきたいです。) 更新しやすいように、4桁の数字は外部のテキストを読み込ませたいと思っております。 スタートボタンを押すと、パラパラと適当な乱数が表示された後にその日の4桁が表示される。といった方法にしたいと思っています。 説明が下手ですみません。 よろしくお願い致します。

  • Flashで日毎に違う数字を外部テキストで表示

    初めて投稿させて頂きます。 FLASHで抽選くじのようなものを作ろうとしているのですが つまづいてしまいましたので、アドバイスを頂けたら幸いです。 内容は以下の通りです。 こちらの指定した電話番号の下4桁の数字で、当たりの出る抽選クジを作りたいと思っています。 『例)今日は、下4桁が1234の方に◯◯をプレゼント!』という感じです。 4桁の数字は日毎に変わるようにしたいです。(1、2週間分の数字をストックしておきたいです。) 更新しやすいように、4桁の数字は外部のテキストを読み込ませたいと思っております。 スタートボタンを押すと、パラパラと適当な乱数が表示された後にその日の4桁が表示される。といった方法にしたいと思っています。 説明が下手ですみません。 よろしくお願い致します。

  • as3 Event.ADDED_TO_STAGE

    flash cs5で記述しています。 Event.ADDED_TO_STAGEについて調べていますが、 現在まで特に使用しなくても、ステージ上でイベントもしくわマウスイベントなどを 起こす事ができています。サイトに乗っていた記述では、もしあるSWFが外部から ロードされる場合は、Event.ADDED_TO_STAGEを記述しなければならない。 という事は、それ以外のときには記述する必要はないという事でしょうか? しかしながら、 http://www.webzaru.net/as30/974/ のサイト (中段のスクリプト) にあるような、外部にSWFをロードする目的ではない時にも 使用している例があります。(結構あります。) 現在、上記のサイトのスクリプトの理解に努めています。 (webzaru様から引用) public function Main():void { super();    if (stage) init(); else addEventListener(Event.ADDED_TO_STAGE, init); の必要性が全くわかりません。 また、上記ではコンストラクタの記述をしているところですが、 なぜその中に、また初期化をするためのsuper();が記述されているのかがよくわかりません。(自分のイメージの中には初期化する設定の中にまた初期化する設定があるように見えています。) ご存知の方いらっしゃいましたら、是非教えていただけますと助かります。 何卒よろしくお願い致します。

  • ac3 if 構文の作り方

    以下のスクリプとで、最初にbox1が動き出して、box1がbox2を、x座標について値が上回ったとき、box2も動き出す、というもので詰まっています。すごく単純な見落としをしているのだと思いますが、どうにも行きません。お知恵をお借りできますと助かります。 import flash.display.Sprite; import flash.events.Event; var box1:Sprite=new Sprite; box1.graphics.beginFill(0x00FF00);   box1.graphics.drawRect(50,100,50,50);   box1.graphics.endFill(); var box2:Sprite=new Sprite; box2.graphics.beginFill(0x00FF00);   box2.graphics.drawRect(100,200,50,50);   box2.graphics.endFill(); addChild(box1); addChild(box2); box1.addEventListener(Event.ENTER_FRAME,mo); function mo(e:Event):void{ box1.x += 1;} trace("ok") if(box1.x>box2.x){ box2.addEventListener(Event.ENTER_FRAME,mo2); function mo2(e:Event):void{ box2.x += 1} trace("ok2")};

  • ActionScriptのLoaderクラス

    以下、FLASHのカテゴリーがあることに気付かずに、プログラミング(その他)に投稿してしまいましたので、再投稿いたします。よろしくお願いいたします。 以下はActionScript3.0を用いたフォトギャラリーで、外部のXMLファイルに記述しているパスをFLASH上に読み込み、それを参照して外部のフォルダからサムネイル画像を読み込むプログラムの一部です。 おそらく、ActionScriptの超初歩的なことが分かっていないのだと思います。 申し訳ございませんが、ご教示ください。 1 var thumbLoader_obj:Loader; 2 for(var i:uint=0;i<8;i=i+1){ 3 var thumbBtn:MovieClip=this["btn0"+(i+1)+"_mc"]; 4 var thumbUrl:URLRequest=new URLRequest(imgThumb_arr[i]); 5 thumLoader_obj=new Loader(); 6 thumbLoader_obj.load(thumbUrl); 7 thumbLoader_obj.x=3; 8 thumbLoader_obj.y=3; 9 thumbBtn.addChild(thumbLoader_obj); 10 } 以上は配列:imgThumb_arrに格納しているサムネイル画像のパスを参照して、loadメソッドを用いて インスタンス:thumLoader_objに読み込んだサムネイル画像を、サムネイル画像の枠を格納しているインスタンス:thumbBtnにループ処理で配置させるプログラムです。 3行目からわかる通り、サムネイル画像の枠のインスタンス名はbtn01_mc~btn08_mcで、 7行目と8行目は単なるサムネイル画像と枠の配置調整のための座標設定です。 さて、質問なのですが、5行目の代わりに1行目を thumLoader_obj=new Loader(); と書いて、5行目をコメントアウト(もしくは削除)してもプログラム的には問題ないように初心者の私には思えてしまうのですが、このようにすると、最後のサムネイル枠(btn08_mc)にしかサムネイル画像が読み込まれません。最初の通りだとすべての枠に該当するサムネイル画像が読み込まれてうまくいきます。明らかなプログラム上の違いがあるのだと思いますが、調べてみても簡単には分かりませんでした。どなたか、お教えいただければ幸いです。

  • ActionScript For文を使っての方法

    ActionScript3.0の質問です。 JSONのデータを読み込んでテキストレイヤーに表示しているのですが、行数の関係上、JSONの配列内にある "aaaa":"表示されるテキスト" が15を超えると、複数行での表示ができなくなります 今回、for文を使って、一定数(15個)を超えたら、新たな配列を作り、テキストレイヤーに表示できるようにしたいと思っています。 ぜひ、詳しい方、アクションスクリプト(構文)を教えてください。 よろしくお願いします。

  • FLASHでコンパイルエラーが出てしまいます

    FLASH(CS5)にてカウントダウンを作っています。 (作っていますといっても、ネットでいろいろ調べて引用したものです:引用したサイト様はFLASH8で作成したようです) しかしながら、 以下のAS(2.0で作成)を記載してダイナミックテキストに表示させようとしてもコンパイルエラーが出てしまいます。 コンパイルエラー内容 シーン=シーン 1, layer=ao, frame=1、行 7 シンタックスエラー ※該当箇所:var currentTime = today.getTime(); シーン=シーン 1, layer=ao, frame=1、行 6 演算子 '=' は、オペランドの前に来る必要があります。 ※該当箇所:var today:Date = new Date(); AS内容 this.onEnterFrame = function(){ /* ------------------------------------------------------------     ●現在のローカル時間を取得     ●1970年1月1日0時から現在時刻までのミリ秒を取得 ------------------------------------------------------------ */     var today:Date = new Date();     var currentTime = today.getTime(); /* ------------------------------------------------------------     ●カウントダウンの日付を指定     ※この場合は「2012年7月14日 0時0分0秒」とする ------------------------------------------------------------ */     var targetDate:Date = new Date(2012,6,14,0,0,0); /* ------------------------------------------------------------     ●1970年1月1日0時からカウントダウンの日付までのミリ秒を取得 ------------------------------------------------------------ */     var targetTime = targetDate.getTime(); /* ------------------------------------------------------------     ●【カウント日時】-【現在日時】=【残り時間】 ------------------------------------------------------------ */     var timeLeft = targetTime - currentTime; /* ------------------------------------------------------------     ●残り時間をそれぞれ「秒、分、時、日」に変換 ------------------------------------------------------------ */     var sec = Math.floor(timeLeft/1000);     var min = Math.floor(sec/60);     var hrs = Math.floor(min/60);     var days = Math.floor(hrs/24); /* ------------------------------------------------------------     ●カウントダウン開始     ※残り時間が過ぎていれば(マイナスであれば)カウントダウン停止&数字を空にする ------------------------------------------------------------ */     if(timeLeft <= 0){         delete this.onEnterFrame;         _root.time_days.text = _root.time_hrs.text = _root.time_mins.text = _root.time_secs.text = "";         /* --------------------------------------------------------         カウント終了後、動作させたい場合はココに追記してください         ※ページ移動なら、getURL("http://www.google.co.jp/"); など         -------------------------------------------------------- */     } else {         days = string(days);         //秒が1桁なら2桁に変換         sec = string(sec % 60);         if(sec.length < 2){             sec = "0" + sec;         }         //分が1桁なら2桁に変換         min = string(min % 60);         if(min.length < 2){             min = "0" + min;         }         //時が1桁なら2桁に変換         hrs = string(hrs % 24);         if(hrs.length < 2){             hrs = "0" + hrs;         }         var counter_days:String = days;         var counter_hrs:String = hrs;         var counter_mins:String = min;         var counter_secs:String = sec;         _root.time_days.text = counter_days;         _root.time_hrs.text = counter_hrs;         _root.time_mins.text = counter_mins;         _root.time_secs.text = counter_secs;</span>     } } 作成している全体図は タイムラインにAS用のレイヤーを作成してそこに上記のASを入れています。 その下のレイヤーにメインとなるレイヤーにダイナミックテキストを4つ(日、時、分、秒) その下のレイヤーに、装飾画像をいれています。 ダイナミックテキストのインスタンス名とASの出力する名前は間違っておりません。 ネットで調べて、コピペでできるはずとおもったのですが、「コンパイルエラー」出てしまい、 修正できず壁に当たっております。 御手数ですが、どなたか、ご教授下さい。 よろしくお願いいたします

  • AS3.0でギャラリーのボタンの透明度を変えたい

    環境:MacOSX Flash CS5 AS3.0 写真がステージに読み込まれた際にその写真に該当するボタンの透明度を 50%にしたいと思ったのですが、うまくいかなくて困っています。 btnArr[imageNum].alpha = 0.5; 上記のスクリプトでいけるとおもったのですが、うまくいきません。。 別の写真がステージに配置された時には透明度を戻したいのですが 分からず困っています。 どなたかどうかよろしくお願いします。 // 写真のURLを保存する配列 var photoArr:Array // var btnArr:Array // 写真を自動的に変更するタイマー var imageTimer:Timer; // 大きな画像を読み込むローダー var bigImageLoader:Loader; // 現在表示されている画像の番号 var imageNum:Number = 0; //-------------------------------- // 初期化の処理 //-------------------------------- // 配列を設定する photoArr = new Array(); photoArr[0] = "c00.jpg"; photoArr[1] = "c01.jpg"; photoArr[2] = "c02.jpg"; photoArr[3] = "c03.jpg"; photoArr[4] = "c04.jpg"; // btnArr = new Array(); btnArr[0] = btnA; btnArr[1] = btnB; btnArr[2] = btnC; btnArr[3] = btnD; btnArr[4] = btnE; // タイマーを起動 startTimer(); // 大きな画像を読み込む loadImage(); // タイマーをスタートする function startTimer() { imageTimer = new Timer(1000, 0); imageTimer.start(); imageTimer.addEventListener(TimerEvent.TIMER, onTimerCalled); } // タイマーが呼ばれるたびに実行される function onTimerCalled(evt) { btnA.y -= 85; btnB.y -= 85; btnC.y -= 85; btnD.y -= 85; btnE.y -= 85; if(btnA.y <= 0){ btnA.y = 380; } if(btnB.y <= 0){ btnB.y = 380; } if(btnC.y <= 0){ btnC.y = 380; } if(btnD.y <= 0){ btnD.y = 380; } if(btnE.y <= 0){ btnE.y = 380; } imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn01をクリックした時の処理 btn01.addEventListener(MouseEvent.CLICK,xClick01); function xClick01(evt:Event):void { btnA.y -= 85; btnB.y -= 85; btnC.y -= 85; btnD.y -= 85; btnE.y -= 85; if(btnA.y <= 0){ btnA.y = 380; } if(btnB.y <= 0){ btnB.y = 380; } if(btnC.y <= 0){ btnC.y = 380; } if(btnD.y <= 0){ btnD.y = 380; } if(btnE.y <= 0){ btnE.y = 380; } imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn02をクリックした時の処理 btn02.addEventListener(MouseEvent.CLICK,xClick02); function xClick02(evt:Event):void { btnA.y += 85; btnB.y += 85; btnC.y += 85; btnD.y += 85; btnE.y += 85; if(btnA.y >= 381){ btnA.y = 40; } if(btnB.y >= 381){ btnB.y = 40; } if(btnC.y >= 381){ btnC.y = 40; } if(btnD.y >= 381){ btnD.y = 40; } if(btnE.y >= 381){ btnE.y = 40; } imageNum-=1; if (imageNum <= -1) { //photoArr.lengthを-1に変更 imageNum = 4; } // 大きな画像を読み込む loadImage(); } // 大きな画像を読み込む function loadImage() { // 新しい画像を読み込む var url = "gallery_img/"+photoArr[imageNum]; btnArr[imageNum].alpha = 0.5;//読み込まれた画像に該当するボタンの透明度を50%にする処理 var req = new URLRequest(url); bigImageLoader = new Loader(); bigImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoad); bigImageLoader.load(req); mainTarget.addChild(bigImageLoader); } // 大きな画像が読み込まれたら実行される処理 function onImageLoad(eventObj) { bigImageLoader.alpha = 0; stage.addEventListener(Event.ENTER_FRAME, onFadeIn); } // フェードインをつける function onFadeIn(eventObj) { bigImageLoader.alpha += 0.1; } // フェードインの処理を取り除く if (bigImageLoader.alpha >= 1) { removeEventListener(Event.ENTER_FRAME, onFadeIn); }

  • AS3.0でギャラリーのボタンの透明度を変えたい

    環境:MacOSX Flash CS5 AS3.0 写真がステージに読み込まれた際にその写真に該当するボタンの透明度を 50%にしたいと思ったのですが、うまくいかなくて困っています。 btnArr[imageNum].alpha = 0.5; 上記のスクリプトでいけるとおもったのですが、うまくいきません。。 別の写真がステージに配置された時には透明度を戻したいのですが 分からず困っています。 どなたかどうかよろしくお願いします。 // 写真のURLを保存する配列 var photoArr:Array // var btnArr:Array // 写真を自動的に変更するタイマー var imageTimer:Timer; // 大きな画像を読み込むローダー var bigImageLoader:Loader; // 現在表示されている画像の番号 var imageNum:Number = 0; //-------------------------------- // 初期化の処理 //-------------------------------- // 配列を設定する photoArr = new Array(); photoArr[0] = "c00.jpg"; photoArr[1] = "c01.jpg"; photoArr[2] = "c02.jpg"; photoArr[3] = "c03.jpg"; photoArr[4] = "c04.jpg"; // btnArr = new Array(); btnArr[0] = btnA; btnArr[1] = btnB; btnArr[2] = btnC; btnArr[3] = btnD; btnArr[4] = btnE; // タイマーを起動 startTimer(); // 大きな画像を読み込む loadImage(); // タイマーをスタートする function startTimer() { imageTimer = new Timer(1000, 0); imageTimer.start(); imageTimer.addEventListener(TimerEvent.TIMER, onTimerCalled); } // タイマーが呼ばれるたびに実行される function onTimerCalled(evt) { btnA.y -= 85; btnB.y -= 85; btnC.y -= 85; btnD.y -= 85; btnE.y -= 85; if(btnA.y <= 0){ btnA.y = 380; } if(btnB.y <= 0){ btnB.y = 380; } if(btnC.y <= 0){ btnC.y = 380; } if(btnD.y <= 0){ btnD.y = 380; } if(btnE.y <= 0){ btnE.y = 380; } imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn01をクリックした時の処理 btn01.addEventListener(MouseEvent.CLICK,xClick01); function xClick01(evt:Event):void { btnA.y -= 85; btnB.y -= 85; btnC.y -= 85; btnD.y -= 85; btnE.y -= 85; if(btnA.y <= 0){ btnA.y = 380; } if(btnB.y <= 0){ btnB.y = 380; } if(btnC.y <= 0){ btnC.y = 380; } if(btnD.y <= 0){ btnD.y = 380; } if(btnE.y <= 0){ btnE.y = 380; } imageNum+=1; if (imageNum >= photoArr.length) { imageNum = 0; } // 大きな画像を読み込む loadImage(); } //btn02をクリックした時の処理 btn02.addEventListener(MouseEvent.CLICK,xClick02); function xClick02(evt:Event):void { btnA.y += 85; btnB.y += 85; btnC.y += 85; btnD.y += 85; btnE.y += 85; if(btnA.y >= 381){ btnA.y = 40; } if(btnB.y >= 381){ btnB.y = 40; } if(btnC.y >= 381){ btnC.y = 40; } if(btnD.y >= 381){ btnD.y = 40; } if(btnE.y >= 381){ btnE.y = 40; } imageNum-=1; if (imageNum <= -1) { //photoArr.lengthを-1に変更 imageNum = 4; } // 大きな画像を読み込む loadImage(); } // 大きな画像を読み込む function loadImage() { // 新しい画像を読み込む var url = "gallery_img/"+photoArr[imageNum]; btnArr[imageNum].alpha = 0.5;//読み込まれた画像に該当するボタンの透明度を50%にする処理 var req = new URLRequest(url); bigImageLoader = new Loader(); bigImageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoad); bigImageLoader.load(req); mainTarget.addChild(bigImageLoader); } // 大きな画像が読み込まれたら実行される処理 function onImageLoad(eventObj) { bigImageLoader.alpha = 0; stage.addEventListener(Event.ENTER_FRAME, onFadeIn); } // フェードインをつける function onFadeIn(eventObj) { bigImageLoader.alpha += 0.1; } // フェードインの処理を取り除く if (bigImageLoader.alpha >= 1) { removeEventListener(Event.ENTER_FRAME, onFadeIn); }

  • AS3.0 設置した画像を次のラベルで解除させたい

    ActionScript 3.0でフォトギャラリーを設置しました。 XMLファイル内の画像とテキストを「次へ」と「戻る」ボタンで 切り替えるスクリプトをfiaファイルにつけてあります。 しかし次のラベルに移動した時に画像がステージ上に残ったままになってしまいます。 次のラベルに移動したら画像は消えるようにしたいのですが なにを書きくわえたらよいのでしょうか。 すいませんどうか教えて下さい。 (asファイルも使用しています。) 以下からファイルをダウンロードしてご覧になって頂けますでしょうか。 ☆フォトギャラリーのXMLファイル設置について flaファイル211フレーム目に記述されています。 (asファイルと関連付けされています) ラベル「Art_Gallery-end」に移動したとき画像設置を解除したいです。 http://firestorage.jp/download/465c3bb4ec882440b1cb99df3acced594b8f1cb6 お手数ですが どうか宜しくお願いします。

  • FlashCS4 Professional

    Flash初心者です。 FlashCS4 Professionalを使用しています。 ムービークリップを再生後、次のフレームに自動的に移動させたいのですが、調べても良く分かりません・・・ どういうアクションを書けばいいのでしょうか? ラベル名 : ムービークリップを入れてあるフレーム「frame01」、次のフレーム「frame02」 ムービークリップのインスタンス名:「clip01」 として設定してあります。 ご指導よろしくお願い致しますm(_ _)m

  • クラスのプロパティ一覧を列挙してその値を取得する

    クラスのプロパティ一覧を列挙してその値を取得する お世話になります。 AS3 / Flash Professional CS5を使用しています。 クラスのプロパティ一覧を列挙して、その値を取得する方法で悩んでいます。 やりたいことは以下の通りです。 1.Flashムービー実行中にFlash CS5でリンケージされたクラスをnewしてインスタンスを作る 2.1のインスタンスを渡すと中にあるTextFieldを根こそぎ列挙して、その中身の値を読みだす 3.2の値をもとにTextFieldを継承した別の何かを生成し、置換していく 4.1~3を大量のオブジェクトに対して一斉に行う なのですが、2の「中にあるTextFieldを根こそぎ探して」の段階で詰まっています。 describeTypeメソッドでクラスの中身のXMLを吐くことができましたが、 そこから先はどうすればよいのかわからず困っています。 mx.utils.ObjectUtil.getClassInfo()が使えたらどれだけ楽なことか……。 大人の事情で外部ライブラリは一切使用できない、と言うことになっているのです。 どうかご教示お願いします。

    • ベストアンサー
    • dmq
    • Flash
    • 回答数1
  • カラーシミュレーションソフトについて

    通販サイトを始め外壁塗装などホームページ上でカラーイメージのできるカラーシミュレーションなるページを見かけますが、自作するにはどのようなソフトを使うのですか? また、どのような知識が必要なのでしょうか? 参考ページ http://www.tutto.jp/2011color_simulation/color_s_ultimate_sped/web-page.htm カラーシミュレーションを自作する上で参考になるサイトのリンクもあれば幸いです。 詳しい方がおられましたらご教授ください。

  • Flashでの横スライドについて

    Flash初心者です。 http://thinkblue.jp/#/concept 上記のサイトののフッターのような横にスライドしてその上ループするという動作は どのようにやれば出来るのか知りたいです。OSはMacにです。 よろしくお願いします。

  • Giam

    今晩は、アニメの初心者です宜しくお願いします。 Giamで画像が回転するFlashを作ったのですが、回転速度速すぎるので 何とか回転速度を遅くしようとしても、ウエイトが1(1/1S?)までしか遅く出来ません。 もうこれ以上遅くすることは出来ないのでしょうか。