• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Flash ムービーのスライド画像について)

Flashムービーのスライド画像作成方法

このQ&Aのポイント
  • Flashムービーのスライド画像を作成したい場合、インデックスをクリックすることで画像がスライドするようにしたいと思っています。特にBをクリックした場合はCも移動させたいです。
  • 質問者はFlashに関する知識が少ないため、わかりやすいサイトを教えて欲しいとしています。
  • 質問者はWindows VistaとAdobe Flash CS4を使用しています。

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

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

仕様が良くわからない部分もありますが。 とりあえず各「写真」と「ボタン(インスタンス名「btn」)」を入れた 「A_mc」「B_mc」「C_mc」というインスタンス名の MC(ムービークリップ) を作成するとします。 「A_mc」が一番左の一番下で 「C_mc」が一番右で一番上であるものとします。 ※参照【添付図】↓ ◎ ムービー内のインスタンスの構造  メインタイムライン   ├C_mc   │ ├btn   │ └写真など   ├B_mc   │ ├btn   │ └写真など   └A_mc     ├btn     └写真など ※ 各ムービークリップの基準点は   左上のコーナーであるものとします。 そうしておいた上で 各ムービークリップ内のボタン(「btn」)をクリックすることによって 「A_mc」「B_mc」「C_mc」を動かす目標座標を変えてやれば良いのではないでしょうか。 その方法でする場合の ActionScript 3.0 でのフレームに書くスクリプト例です。 //============================== //動かす MC を配列に登録 var mc_arr:Array = [A_mc,B_mc,C_mc]; //動くスピードを設定(0~1の間) var spd:Number = 1 / 5; //ステージ幅を取得 var sw:Number = stage.stageWidth; //動く目標座標を指定する配列を作成 (btn の幅が 20 の場合) var pos_arr:Array = new Array(); //「A_mc.btn」クリック時の各MCの目標座標を設定 pos_arr[0] = [0,sw - 40,sw - 20]; //「B_mc.btn」クリック時の各MCの目標座標を設定 pos_arr[1] = [0,20,sw - 20]; //「C_mc.btn」クリック時の各MCの目標座標を設定 pos_arr[2] = [0,20,40]; //初期目標座標番号を設定(C_mcを表示) var pos_num:int = 2; //---↑以上が設定↑------ //動かす MC の数分ループ for (var i:int = 0; i <mc_arr.length; i++) { //各MCを初期座標に配置 mc_arr[i].x = pos_arr[pos_num][i]; //各MC固有の番号 n を登録 mc_arr[i].n = i; //各MC内の btn クリック時に関数 changeNum を実行 mc_arr[i].btn.addEventListener(MouseEvent.CLICK,changeNum); } //関数 changeNum の定義 function changeNum(e:MouseEvent):void{ //pos_num にクリックした btn の親 MC の n の値を代入 pos_num = e.currentTarget.parent.n; } //毎フレーム時間 関数 moveMC を実行 addEventListener(Event.ENTER_FRAME,moveMC); //関数 moveMC の定義 function moveMC(e:Event):void { //動かす MC の数分ループ for (var i:int = 0; i <mc_arr.length; i++) { //各MCを目標座標に移動 mc_arr[i].x += (pos_arr[pos_num][i]-mc_arr[i].x)*spd; } } //============================== 常に「A_mc」~「C_mc」を目標座標に近付けさせているのです。 その目標座標を各 MC 内の btn クリックによって変えてやるという方法例です。  

yu_ray2007
質問者

お礼

とても敏速にとても親切に解説ありがとうございます。 勉強中なので手探りでやっていますが、スプリクトが難しくて戸惑っています。 頑張ってやってみます。 また何かありましたらよろしくお願いします。 ありがとうございました。

関連するQ&A