こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

FLASHをSUZUKAを使って製作しています。

FLASHをSUZUKAを使って製作しています。
下記サイトみたいなconceptをクリックするとまたFLASHが出てきますが、同じようにFLASHの上にFLASHをスプライトを作って乗せているのですが同じようにCLOSEボタンをクリックして閉じることができません。
http://www.romansweets.jp/
どうすればいいのでしょうか?
CLOSEボタンのアクションスクリプトの書き方だと思うのですが初心者のためわかりません。
よろしくお願いします。

投稿日時 - 2010-07-26 16:01:32

QNo.6065553

すぐに回答ほしいです

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

> CLOSEボタンをクリックして閉じることができません。

その方法に決まりがあるわけではありません。自分で決めるのです。
問題は『concept』のウィンドウをどうやって出したかです。

「『concept』のウィンドウを出す方法」など無数にあります。
ですから「CLOSEボタン」のスクリプト(CLOSEする方法)も無数にあるんです。


「『concept』ウィンドウを出す方法」は無数にあるのですが
どの方法をとるにしてもたいてい「スプライト(ムービークリップ)」が絡むと思います。

大雑把な例として例えば
『concept』ウィンドウを
「あるスプライトに外部SWFを loadMovie する」
という方法で出したとします。
その場合「CLOSEボタン」では
「スプライトから外部SWFを unloadMovie する」
というような内容のことをすべきです。

また例えば
『concept』ウィンドウを
「シンボルリストのスプライトを attachMovie する」
という方法で出したとします。
その場合「CLOSEボタン」では
「出したスプライトを removeMovieClip する」
というような内容のことをすべきです。

全体のしくみが決まる(決める)からこそ
「CLOSEボタン」のスクリプトも決まるんです。



======

もし全体のしくみが考え付かないようでしたら
loadMovie などよりもっと基本的な
スプライト内のタイムライン操作で『concept』ウィンドウを出す方法を使うのが良いと思います。



シンボルリストにスプライトを追加して
そのスプライト内に【下の図↓】のようなしくみを作ります。

スプライト内のフレーム1には何も置かず
ActionScript として
stop();
だけを記入しておきます。

スプライト内のフレーム2以降に何かを置いて
スプライト内の最終フレームにも
ActionScript として
stop();
を記入します。

スプライト内の「×ボタン」自体には
on(release){
gotoAndStop(1);
}
と記入します。

これで自動再生されないスプライトができます。
また再生が開始されると最終フレームで止まり
「×ボタン」クリックでフレーム1に戻るという動作をします。


このようにして作ったスプライトを
メインのレイヤーに追加します。

そして追加したスプライトのレイヤーに
例えば 「concept_mc」 という インスタンス名 を付けます。

その 「concept_mc」 を再生させるボタンもメインのレイヤーに追加します。
そしてそのボタンには
on(release){
concept_mc.gotoAndPlay(2);
}
と書きます。

これで「concept_mc」の再生を開始させるボタンが完成します。


以上のようにして全体を作って行きます。
このスプライトのタイムライン操作がFlashの基本です。
http://suzupara.iinaa.net/kiso031.html



もし余裕があれば
loadMovie や attachMovie の方法や
_visible プロパティによる切り替えとか
リンクシンボル などに挑戦してみても良いかもしれません。
(別に無理して挑戦する必要はありませんよ。)

投稿日時 - 2010-07-28 18:50:21

お礼

できましたー!ありがとうございます!!
すごく助かりました。


・・・しかしまた問題が・・・

http://okwave.jp/qa/q6072742.html

投稿日時 - 2010-07-29 15:27:07

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

回答(1)