• ベストアンサー

FLASHでボタンを押すと画像が変わる。

現在MacromediaのFLASH MXを使って作っています。 ボタンを押すと画像が変わるものを作りたいのですが、やり方がどう調べてもわかりません。 ある人のの写真があって「帽子」のボタンを押すといろんな帽子を被っていくというものが作りたいのですが、 私の持っている書物には載っておらず、ネットで探しても見当たらなかったのでこちらでお伺いしました。 素材(帽子など)はできあがっているのですが、どなたか教えてください。 よろしくお願いします。

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

  • ベストアンサー
  • DPE
  • ベストアンサー率85% (666/776)
回答No.1

表示したい帽子を全て1つのムービークリップの中にまとめ、ボタンを押すごとに表示するフレームを変える、という方法はいかがでしょう。 仮に、表示したい帽子が10種類あるとします。 ムービークリップを1つ作り、1フレームに1つずつ帽子を配置します。つまり、このムービークリップは10フレームでできたムービークリップとなります。 このムービークリップのインスタンスと、選択ボタンのインスタンスをステージに配置し、それぞれにインスタンス名を付けます。 この手の選択ボタンは、次の帽子を選ぶボタンの他に、1つ前に戻るボタンがあると便利です。 そこで、ここでは、次を選ぶボタン「 next 」と、1つ前に戻るボタン「 back 」、帽子の「 hat 」というインスタンスがあるとします。 「 hat 」は1フレームずつ違った帽子が配置されています。ですから、例えば1番目の帽子ならフレーム1、5番目の帽子ならフレーム5を表示すればいいわけです。この制御には ActionScript を使います。 スクリプトは次のように考えます。 今表示するフレーム(つまりは帽子の種類)を変数で管理します。「 next 」または「 back 」ボタンが押されるごとにこの変数を加減して、その変数の値に応じた「 hat 」のフレームを表示させます。 以上の考え方でスクリプトを組むと、大体、以下のような形になるかと思います。インスタンスにではなく、フレームに設定して下さい。 (↓このスクリプトをコピーして使う場合は、各行頭の全角のスペースを、全て半角のスペースかタブに置き換えて下さい。このまま使うとシンタックスエラーになります)  //表示する帽子を管理する変数:最初は1番目の帽子を表示  hat_no = 1;  //帽子の総数  hat_max = 10;  //「次の帽子」ボタンが押された場合の処理  next.onPress = function ()  {   //次の帽子を選択   hat_no++;   //総数を超えたら最初の帽子に戻る   if( hat_no > hat_max )   {    hat_no = 1;   }   //該当する帽子を表示   hat.gotoAndStop( hat_no );  };  //「前の帽子」ボタンが押された場合の処理  back.onPress = function ()  {   //前の帽子を選択   hat_no--;   //1番目の帽子を表示していた場合は最後の帽子を選択   if( hat_no < 1 )   {    hat_no = hat_max;   }   //該当する帽子を表示   hat.gotoAndStop( hat_no );  }; これだけでは、「 hat 」が表示された途端にフレーム1から 10 まで連続で再生されてしまい、帽子1~ 10 がくるくる表示されるという、おかしな結果になってしまいます。 そこで、ムービークリップイベントの load イベントを利用して、最初に表示する帽子のフレームで再生を止めておきます。以下のようなスクリプトを、「 hat 」に設定します。今度はフレームにではなく、インスタンスに設定して下さい。  //デフォルトの帽子を表示  onClipEvent( load )  {   this.gotoAndStop( _root.hat_no );  } 変数を使わなくても、  this.gotoAndStop( 1 ); というようにフレームの番号を直接指定しても同じですが、何かの理由で最初に表示する帽子が1番目ではなくなった場合でも、hat_no の初期値を書き換えるだけでこちらも連動して変わりますから、変数で指定する方がオススメです。 ポイントは、帽子の番号とムービークリップのフレーム番号を対応させておくことと、表示する帽子の番号を変数で管理することです。 前の帽子を選ぶボタンが不要なら、back.onPress = ・・・のスクリプトは削除して下さい。 上記のスクリプトでは、帽子の番号が1または 10 になった時は 10 もしくは1に戻り、エンドレスに選択できるようになっていますが、if 文の中を少し改造すると、これを1と 10 で止めておくようにすることも可能です。 また、UI コンポーネントにあるコンボボックスやリストボックスを使ったり、テキスト入力で番号をユーザーに入力してもらう、などの応用も考えられますが、原理は同じです。 長くなってすみませんでした。

hazzy_funky
質問者

お礼

大変解りやすいご説明本当にありがとうございます!!このページを開いたとたん鳥肌が立つような感動に見舞われました(†〇†) おかげさまで無事に完成いたしました♪ 本当にありがとうございました。

関連するQ&A

  • flashボタンオーバーで残像を残した画像切替え

    初心者です。 http://www.agete.com/ このトップページのように、ボタンにマウスオーバーすると画像が切り替わるという同じタイプのflashを作成したいのですが、 このページのように、画像の残像を残しながら切り替わる というやり方がわかりません。 ちなみに使用しているソフトは、Macromedia Flash MX Professional 2004 です。 宜しくお願い致します。

    • ベストアンサー
    • Flash
  • Flashのボタンについて

     当方、Flash MXを使用しているのですが、どうしてもわからないところがあります。  現在、「1」の画像の上に「2」の画像があります。  「2」の画像にカーソルを置いた場合に「2」の絵が変わり、「1」が見えるようになる。  これが「ボタン機能」を使えばいいというところまではわかりました。  実際に作ってみて、「シンプルボタン」にチェックを入れるとその場では動くのですが、いざプレビュー画面にするとまったく動かないのです。  これに関する解決方法を知っている方がいましたら是非教えて下さいませ…。

  • Flashを編集したいのですが・・・。

    いつもお世話になっています。 Flashについて質問があります。。。 インターネット上でのFlashを自分のパソコンに保存して、編集などをすることはできないのでしょうか?(素材など) よろしくお願いします。Macromedia Flash MX 2004を使っています。

    • ベストアンサー
    • Flash
  • Flashの画像がネスケ4で表示されない

    Macromedia Flash MX 2004で作成したFlashの画像がネスケ4で表示されないのです。 ネスケ7.1、IEでは動いてちゃんと見えます。 初心者なのでわかりませーん

  • ホームページにフラッシュ画像を入れるにはどうしたらよいでしょうか。

    ホームページにフラッシュ画像を入れるにはどうしたらよいでしょうか。 写真を何枚か次々に入れ替えて表示するフラッシュを導入したいと思っています。800ピクセル×400ピクセルくらいのサイズを考えています。 ネットで見ても中々思ったような無料素材が見つかりませんでした。 無料素材でそのようなものがあれば教えてください。

  • 画像をクリックして進むアルバムをFlashで作りたい。

    初めて質問させて頂きます。 現在使用しているソフトはMacromedia Flash MX 2004・Flashは始めたばかりです。Windows使用。 画像をクリックすると、フェードアウトをし 次の画像に移動するものを作りたいと考えています。 (まさしくこちらのものなのですが、自作をしたい為に質問させて頂きました) tp://www.1000leaves.jp/1kleaves/materials/index.html 色々検索し、作ってもみましたがどうしても上手くいきません。 どの様に作ればいいのか、もしどなたかわかりましたらお手数ですが御返信頂ければ幸いです。

  • FLASHのこと

    こんばんは。 「macromedia FLASH MX」のことでいくつかお訊ねしたいのですが。 ・↑のエデューケーション版は学生だったら買えるんですよね? ・エデューケーション版は普通の58000円のと比べて何か機能などに  かかわって変わるところなどはあるんでしょうか?(えと、たとえば幾つか  使えない機能が出てくるとか。) ・プレイヤーとごっちゃになりがちなのですが、「macromedia FLASH MX」は  FLASHを作るソフトですよね・・? 初歩的なことですいません。 初歩過ぎるためかホームページにもかかれていなかったので・・・。 どうぞ宜しくお願いします。

  • Flashでの画像の歪曲について

    Flash MX を使っています。 読み込みで写真などの画像を読み込むのですが、 その画像を [修正]→[歪曲] をしようとしても できないのですが、これはどうしようもないことなのでしょうか? よろしくお願いいたします

  • Flashのボタンについて

    Flash初心者です。使用しているソフトはFlash MX 2004です。 現在、独学でFlashの勉強中なのですが、分からないことがあるので質問させてください。 AというボタンとA'というボタンを作成します。どちらもマウスを上に持っていくと色が変わるだけの単純なボタンです。 これらをページの右側と左側に配置します。 Aのボタンにマウスを持っていったときに、AとA'両方のボタンが反応して色が変わる、また逆も然りというふうにするにはどうしたら良いのでしょうか。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • Macromedia Flash MX

    Macromedia Flash MX について教えてください。イラストレーターVer9.02(Windows)で作成した画像を取り込みたいのですが、うまく行かないのですが、どうすればよいのでしょうか。