- ベストアンサー
FlashCS4のActionscript2.0でボタンを押して画像をスライド表示させる方法
- FlashCS4のActionscript2.0を使用してウェブサイトのトップページのヘッダー画像にスライドショーを作りたい。
- ボタンBを押した時に、ムービークリップの画像がスライドして表示されるようにしたい。
- スライドショーの動きが参考URLのようになるように実装したい。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
たくさん方法があるのでどうすべきか迷いますが, 理論がわかりやすく,なるべく汎用性が高いものの作成例を1つ書きます。 ステージ上に 例えば(あくまでも例です), 横400px×縦300px の,赤い四角の塗りと 緑の四角の塗りと 青い四角の塗り を描いて その3つの塗りどうしをピッタリつけて横に並べます。 赤赤赤赤緑緑緑緑青青青青 赤赤赤赤緑緑緑緑青青青青 赤赤赤赤緑緑緑緑青青青青 この「赤緑青」の塗り全体を選択してムービークリップに変換します。 変換するときに「基準点」を「左上」にすることにしておきます。 上で作成したステージ上の「赤緑青」ムービークリップに インスタンス名として 例えば 「rgb_mc」 というインスタンス名を付けます。 その 「rgb_mc」 の上辺りにでもボタンを3つ作成しこれらも横に並べます。 そして左のボタンから 例えば 「r_btn」「g_btn」「b_btn」 というインスタンス名を付けます。 これで合計4つのインスタンスがステージ上にできるわけです。 ステージの大きさ(ドキュメントのサイズ)は 横幅 400px にして 「rgb_mc」 の 赤 塗りだけが見えている状態に配置するとわかりやすいと思います。 それら4つのインスタンスがあるフレームに次のように書きます。 ------------------------------ //目標座標の初期化 var goal:Number = 0; //「rgb_mc」に対して毎フレーム時間実行するメソッドを定義 rgb_mc.onEnterFrame = function():Void { //この「rgb_mc」を目標座標に1/3の割合だけ近づける this._x += (goal - this._x) * 1 / 3; }; //「r_btn」クリック時に実行するメソッドを定義 r_btn.onRelease = function():Void { //目標座標を 0 にする goal = 0; }; //「g_btn」クリック時に実行するメソッドを定義 g_btn.onRelease = function():Void { //目標座標を -400 にする goal = -400; }; //「b_btn」クリック時に実行するメソッドを定義 b_btn.onRelease = function():Void { //目標座標を -800 にする goal = -800; }; ------------------------------ 同じことをするにしても もっとスマートな書き方はあるのですが 「スマートさ」ではなく「わかりやすさ」を第一に考えたスクリプトにしているつもりです。
お礼
できました!!!! 本当にありがとうございます!!!!! 感動しました!!!!!!!!!!!!!!!!!