• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数ボタンで指定のフレームに移動)

複数ボタンで指定のフレームに移動する方法

このQ&Aのポイント
  • CS4、ASは3.0を使用しています。ASについてはまったくの初心者です。お店のFLASHを作成しています。ボタンが4つ出てくるその各ボタンを押すと指定したフレームに飛ばすというものです。一番近かったのが下記のようになります。ボタンのインスタンスはmenuです。
  • スクリプトがダメなのか、それともスクリプトを配置する場所がダメなのすらも分かりません。1.指定のフレームに移動するスクリプトを教えて下さい。2.スクリプトを配置する場所は1~4のウチでどうれでしょうか?
  • 丸一日これに費やしたのですが、まったく出来ず困ってます。

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

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

#1です。 > 添付写真1~4の部分どこに記述してもエラーになってしまいます。 1~4の中では 2 または 3 に書く必要があります。 少なくとも「menu」というインスタンス名を付けたインスタンス(ボタン)がその時点で存在しないと,何も命令や設定はできませんから。 > この場合どんな原因が考えられるのでしょうか? 私は, 「インスタンスを作成(配置)する」→「インスタンス名を付ける」→「場合によってはそのインスタンスにモーショントゥイーンなどを付ける」 という普通にやる手順通りにいつも作成してますので今まで気付きませんでしたが, CS4 の モーショントゥイーン (新モーショントゥイーン) は少々特別なようです。 モーショントゥイーン後のインスタンスにスクリプトで何かを指定したり命令する場合, モーショントゥイーン開始時からそのインスタンスにインスタンス名をつけておかなければならないようです。 ですから, 上に書いた「インスタンスを作成(配置)…モーショントゥイーンなどを付ける」 という手順通り作成していれば何も問題は起こらないのですが, モーショントゥイーンを作成した後にインスタンス名を付けるという普通ではない手順を取った場合, 必ず 「モーショントゥイーン開始時のインスタンスにインスタンス名を付ける」 ということに気を付けなければならないようです。 ※ 小さいですが図参照のこと↓。

onnoji
質問者

お礼

わざわざ画像までありがとうございます。 色々実験してみて、ボタンとASを1フレーム目に持って行ったら無事できました。 しかし、2フレーム以降にボタンとASを持って行くとエラーが出てダメです。 インスタンスがその時点にあるにもかかわらず、1フレーム目でないと上手く動きません。不思議です。 ボタンのーショントゥイーンも削除してみて実験してみましたが、結果同じです。 構成では最初はボタンは表示されないようにしたいので、1フレーム目に透明にしたボタンとASを配置して、途中からボタンが出てきた感じに仕上げる事ができました。 ただ、問題はプログレスバーです。 これから設置するのですが、ボタンもASも1フレーム以外受け付けないとなると、又、頭を抱えてしまいます。

その他の回答 (1)

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

??? 最重要ポイントを押さえていませんよ。 > this.menu.addEventListener(MouseEvent.CLICK,goNext); > function goNext(e:MouseEvent):void { >  this.nextFrame(); > } > > これをアレンジして(69のフレームに飛ばす この質問のしかたを見る限り, 「アレンジする前は無事動作するのにアレンジした後にエラーが出る。」 という意味になります。 つまり, アレンジする前ではOKなのか, それともアレンジ前にすでにその時点でエラーがでているのか, その最重要ポイントが抜けています。 「アレンジする前は無事動作するのにアレンジした後にエラーが出る。」 というのでしたら一目瞭然, this.gotoAndPlay(69)(); が間違っています。 this.gotoAndPlay(69); です。 「○○()」 は 「○○を実行する」 という意味になります。 もしその実行するときに引数を渡す場合は,()内に引数を入れます。 「○○(引数)」 →「引数を渡して○○を実行」 「gotoAndPlay(69)」→「引数69を渡してgotoAndPlayを実行」

onnoji
質問者

補足

すみません、補足します。 アレンジする前のオリジナルのスクリプト(本に載っていた)のですら、 「TypeError: Error #1009: null のオブジェクト参照のプロパティまたはメソッドにアクセスすることはできません。」 とエラーが出てきます。 添付写真1~4の部分どこに記述してもエラーになってしまいます。 この場合どんな原因が考えられるのでしょうか? これさえクリアできたら、後はthis.gotoAndPlay(69);に差し替えて、実行可能って事ですよね? 以上よろしくお願い致します。

関連するQ&A