「イベント」の版間の差分
提供: LWF Wiki
(→毎フレーム実行させたい) |
|||
| 56行: | 56行: | ||
==毎フレーム実行させたい== | ==毎フレーム実行させたい== | ||
| + | Movieの更新処理が走る度(毎フレーム)に関数を実行させたい場合のサンプルです<br/> | ||
| + | 更新処理が走る度なので、movie.active=falseになっている場合は実行されません。<br/> | ||
| + | *attachMovieで追加したMovieの場合 | ||
| + | //attachMovieで生成したインスタンスに毎フレーム実行される関数を登録 | ||
| + | var movie = <Movieインスタンス>.attachMovie("linkageName","movieName"); | ||
| + | movie.addEventListener("enterFrame",function(){ | ||
| + | console.log("毎フレームはしってます"); | ||
| + | }); | ||
| + | *フレームスクリプトで記述する場合 | ||
| + | 該当するタイムラインの1フレーム目に記述します。 | ||
| + | /* js_enterFrame | ||
| + | console.log("毎フレームはしってます"); | ||
| + | */ | ||
| + | 上記のjs_enterFrame指定は1Movieにつき1つまでです。<br/> | ||
| + | |||
==カスタムイベントを使いたい== | ==カスタムイベントを使いたい== | ||
2013年10月21日 (月) 21:24時点における版
目次 |
イベントとは?
MovieインスタンスやButtonインスタンスにイベントを設定することで
インスタンスが生成された瞬間や、インスタンスの描画準備が整った瞬間、毎フレームの処理、任意のイベントを発火した瞬間、等
様々なタイミングで関数を実行したりすることができます。
Movieが生成された瞬間に関数を実行したい
Movieインスタンスが生成された瞬間に関数を実行したい場合のサンプルです。
- attachMovieで追加したMovieの場合
//attachMovieでインスタンスが生成された瞬間アラートを表示
<Movieインスタンス>.attachMovie("linkageName","movieName",{
"load":function(){
alert("このMovieは今、生成されました");
}
});
- フレームスクリプトで記述する場合
該当するタイムラインの1フレーム目に記述します。
/* js_load
alert("このMovieは今、生成されました");
*/
上記のjs_load指定は1Movieにつき1つまでです。
Movieの再生準備が整ったら関数を実行したい
Movieインスタンスが生成され、描画の準備が整った瞬間に関数を実行したい場合のサンプルです。
- attachMovieで追加したMovieの場合
//attachMovieでインスタンスが生成され、描画準備が整った瞬間アラートを表示
<Movieインスタンス>.attachMovie("linkageName","movieName",{
"postLoad":function(){
alert("このMovieの描画準備が整いました");
}
});
- フレームスクリプトで記述する場合
該当するタイムラインの1フレーム目に記述します。
/* js_postLoad
alert("このMovieの描画準備が整いました");
*/
上記のjs_postLoad指定は1Movieにつき1つまでです。
Movieが削除された瞬間に関数を実行したい
Movieインスタンスが削除された瞬間に関数を実行したい時のサンプルです。
- attachMovieで追加したMovieの場合
//attachMovieでインスタンスが削除された瞬間アラートを表示
//movieをattach
var movie = <Movieインスタンス>.attachMovie("linkageName","movieName");
//削除された時のイベントリスナーを設定
movie.addEventListener("unload",function(){
alert("このMovieは削除されました");
});
//削除する
movie.removeMovieClip();
- フレームスクリプトで記述する場合
該当するタイムラインの1フレーム目に記述します。
/* js_unload
alert("このMovieは削除されました");
*/
上記のjs_unload指定は1Movieにつき1つまでです。
毎フレーム実行させたい
Movieの更新処理が走る度(毎フレーム)に関数を実行させたい場合のサンプルです
更新処理が走る度なので、movie.active=falseになっている場合は実行されません。
- attachMovieで追加したMovieの場合
//attachMovieで生成したインスタンスに毎フレーム実行される関数を登録
var movie = <Movieインスタンス>.attachMovie("linkageName","movieName");
movie.addEventListener("enterFrame",function(){
console.log("毎フレームはしってます");
});
- フレームスクリプトで記述する場合
該当するタイムラインの1フレーム目に記述します。
/* js_enterFrame
console.log("毎フレームはしってます");
*/
上記のjs_enterFrame指定は1Movieにつき1つまでです。