メイン コーダーズルーム【スクリプト系】 onReleaseの有効範囲 | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
inu_kt | Åê¹ÆNo.24858 投稿日時: 2006-4-14 4:42 |
半人前 居住地: 投稿: 33
使用環境:
Flash 8 Pro Windows XP |
onReleaseの有効範囲 お世話になっております。
onReleaseの有効範囲についてお聞きしたいのですが、 onReleaseは、一度定義すると、それ以降のフレームでは 基本的にずっと有効になるのではないのでしょうか? 現在、 1フレーム目: onReleaseを定義(押されたら4フレーム目へ) 2フレーム目: stop()しておき、ボタン押し待ち ---------- 4フレーム目: メイン処理 5フレーム目: 処理が終わったので2フレーム目に戻ってボタン押し待ち という流れのスクリプトを書いたのですが、 1フレーム目→2フレーム目に来たときは、onReleaseが有効なのですが、5フレーム目→2フレーム目に来たときは、ボタンを押しても onReleaseが発生しません。 なお、5フレーム目から1フレーム目に戻って再度onReleaseを定義 すると、onReleaseが発生します。 前のフレームに戻ると、onReleaseは無効になってしまうのでしょうか? --- すみません、追伸です。実験してみたところ、そのボタンの インスタンスが無いフレームに行くと、その後はonReleaseが 無効になってしまうようです。 しかし、処理中(4フレーム目)は、ボタンを別のグラフィックに したいので、どうしても消したいです。 でも消すとonReleaseも無効になる。。 どうすればいいでしょう? |
ひろゆき | Åê¹ÆNo.24860 投稿日時: 2006-4-14 5:23 |
ちょんまげら 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CC Safari 6.1 |
Re: onReleaseの有効範囲 _root 第1フレーム ムービークリップ(インスタンス名: btn_mc) を配置。
ムービークリップ(インスタンス名: btn_mc) を削除。(空白キーフレーム挿入) _root 第4フレーム
ですね。 例えば、btn_mc のムービークリップアクションに
btn_mc のフレームアクションに
これは、onRelease に限らず、 _root 第1フレーム ムービークリップ(インスタンス名: btn_mc) を配置。
ムービークリップ(インスタンス名: btn_mc) を削除。(空白キーフレーム挿入) _root 第4フレーム
どうしても、_root のフレームアクションに記述をするのであれば、 _root 第2フレームにも btn_mc.onRelease = function() {} を記述するとか。 _root 第1フレームで function にしておいて、
あるいは、 _root 第3フレーム以降で、btn_mc を削除せずに、 _root 第1フレームに
|
野中文雄 | Åê¹ÆNo.24861 投稿日時: 2006-4-14 5:26 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: onReleaseの有効範囲 本題に入る前に、「thisの意味が分からない」は、解決されましたでしょうか?→【フィードバックをしない】
また、以前アドバイス差し上げたイベントハンドラメソッドについての理解は、再確認されましたか? MovieClip.onReleaseイベントハンドラメソッドは、MovieClipのメソッドです。したがって、MovieClip._xプロパティやMovieClip.gotoAndPlay()メソッドなどと同じく、そのターゲットのインスタンスが存在しなくなれば、MovieClipとともに消滅します。 引用: kenさんは書きました: そのターゲットのMovieClipインスタンス自身に、イベントハンドラメソッドを定義すればよいでしょう。つまり、MovieClipアクションのonClipEvent (load)ハンドラあるいはMovieClipシンボル内の第1フレームに、自身thisをターゲットにしてイベントハンドラメソッドを記述します。 引用: しかし、処理中(4フレーム目)は、ボタンを別のグラフィックに |
inu_kt | Åê¹ÆNo.25057 投稿日時: 2006-4-22 13:20 |
半人前 居住地: 投稿: 33
使用環境:
Flash 8 Pro Windows XP |
Re: onReleaseの有効範囲 返信が遅くなってしまい、申し訳ございません!
メールアドレスの登録が間違っていて、レスが付いたことに 気づきませんでした。 お教えいただいた通り、インスタンスが消えるとメソッドも 消滅するようなので、2フレーム目(ボタン押し待ちフレーム)に onRelease()を記述して、ボタンを押せるようにするたびに 毎回、onRelease()を定義するようにしました。 _visibleを一旦falseにする方法も、覚えておきたいと思います。 MCアクションに記述するのも良いのですが、なるべく フレームアクションで完結させたかったので、、 どうもありがとうございました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |