"いつ"にあたるのがイベント
"いつ" "なにを" "どうする"の中で、"いつ"にあたるのがイベントです。
たとえば、『ボタンAが押されたらムービークリップBのフレームを再生する』場合は、"ボタンAが押されたら"の"押されたら"がイベントの種類になり、イベントの発生元がボタンAになります。
イベントとは?
イベントとは、コンピュータ内で発生する様々な動作のことです。ActionScriptは、イベントの発生をキャッチしたら、それをきっかけとして何か処理をするように、記述します。
イベントの発生をキャッチするための式のことを、イベントハンドラといいます。
2種類のイベント
イベントには、大きく2種類のイベントがあります。
- ユーザーの動作によって起きるイベント
- "マウスをクリックしたとき"のように、ユーザーが起こした動作によって起きるイベントです。
- 自動的に起きるイベント
- "読み込みが完了したとき"や、"再生ヘッドが10フレームに到達したとき"のように、コンピュータ内で自動的に起きるイベントです。
ActionScriptの種類とイベント
ActionScriptの種類は3種類と書きましたが、ActionScriptの種類によって、使用できるイベントも決まっています。イベントの種類を間違うと、エラーが発生したり、何も起きないという可能性があります。
フレームアクションのイベント
フレームアクションの場合、イベントは指定できません。イベントハンドラを記述した時点でエラーとなります。
なぜなら、フレームアクションには、"再生ヘッドが到達したとき"がイベントになるからです。つまりキーフレームを入れて、ActionScriptを記述した時点で、イベントも同時に指定していることになります。
ボタンアクションのイベント
ボタンアクションの場合、イベントの指定が必須になります。イベントハンドラを記述しなかった時点でエラーとなります。
イベントの指定は、イベントハンドラ内にイベントの種類を記述します。ボタンアクションのイベントハンドラは、かならずonではじめます。
ボタンアクションの書式
※例 releaseイベントの場合
on(release) {
処理;
処理;
処理;
}
イベントハンドラ内の"{"から"}"の間に、イベント発生時の処理を記述します。複数行を記述すると、上から順番に実行されます。
ムービークリップアクションのイベント
ムービークリップアクションの場合も、ボタンアクションと同様にイベントの指定が必須になります。ムービークリップアクションの場合も、ボタンアクションと同様にonでイベントを指定して記述することができます。指定出来るイベントの種類も同じです。
またそれ以外にも、ムービークリップアクション専用のイベントを指定することもできます。ムービークリップアクション専用のイベントを指定する場合も、イベントハンドラは必ず指定する必要があり、この場合はonClipEventというイベントハンドラを使用します。
ムービークリップアクションの書式
※例 loadイベントの場合
onClipEvent(load) {
処理;
処理;
処理;
}