初心者のためのFlash ActionScript講座
Flash ActionScript Helper
Home Menu

最終更新日: 2003年8月25日

ムービークリップのイベントハンドラ

ムービークリップのイベントハンドラ

ムービークリップのイベントハンドラには、旧バージョン形式のonClipEventハンドラ、ボタンムービークリップ用のonハンドラ(旧バージョン形式)、およびFlashMXから導入されたイベントハンドラメソッドの3種類があります。

onClipEventハンドラ

onClipEventハンドラは、Flash5で導入されたイベントハンドラで、ステージ上でムービークリップインスタンスを選択し、インスタンスごとに記述します。インスタンスごとに異なるハンドラが記述できる反面、シンボル共通のハンドラを記述することはできません。また、オーサリング編集画面でのみ記述可能で、ムービー実行時のスクリプトによる追加、削除、変更はできません。

onClipEventハンドラは、[ アクション ] パネルの [ アクション ] - [ ムービークリップ制御 ] カテゴリにあります。[ アクション ] ツールボックスを利用すると、引数の ( ) やブロックの { } も挿入されると同時に、コードヒントが表示されて、イベント名の入力が簡単になります。

[ アクション ] パネルの [ アクション ] - [ ムービークリップ制御 ] カテゴリ
[ アクション ] パネルの [ アクション ] - [ムービークリップ制御 ]カテゴリ

onClipEventハンドラに記述可能なイベントは以下のとおりです。
詳細は、『ActionScript辞書』を参照してください。
このサイトでも、徐々に解説していく予定です。すでに解説が存在するものは、リンクを張っています。

●onClipEventハンドラ

イベント

説明

load

ムービークリップインスタンスが load(生成)された。

unload

ムービークリップインスタンスが unload(削除)された。

enterFrame

フレームが更新された。

mouseDown

ステージ上で、マウスボタンが押された。

mouseUp

ステージ上で、押されていたマウスボタンが離された。

mouseMove

ステージ上で、マウスカーソルが動いた。

keyDown

ムービークリップの総バイト数を返す。

keyUp

ムービークリップの深度(親ムービークリップ座標空間の重なり順)を返す。

data

外部データ(swf、テキスト、jpeg、MP3)がload された(一部はセッションごとに発生)。



onハンドラ

onハンドラは、Flash2で導入されたイベントハンドラで、ステージ上でボタンインスタンスを選択し、インスタンスごとに記述します。インスタンスごとに異なるハンドラが記述できる反面、シンボル共通のハンドラを記述することはできません。また、オーサリング編集画面でのみ記述可能で、ムービー実行時のスクリプトによる追加、削除、変更はできません。FlashMXからは、ムービークリップにも記述できるようになりました。

onハンドラは、[ アクション ] パネルの [ アクション ] - [ ムービーコントロール ] カテゴリにあります。[ アクション ] ツールボックスを利用すると、引数の ( ) やブロックの { } も挿入されると同時に、コードヒントが表示されて、イベント名の入力が簡単になります。

[ アクション ] パネルの [ アクション ] - [ ムービーコントロール ] カテゴリ
[ アクション ] パネルの [ アクション ] - [ムービーコントロール ] カテゴリ

onハンドラに記述可能なイベントは以下のとおりです。
詳細は、『ActionScript辞書』を参照してください。
このサイトでも、徐々に解説していく予定です。すでに解説が存在するものは、リンクを張っています。

●onハンドラ

イベント

説明

press

インスタンスの領域内で、マウスボタンが押された。

release

インスタンスの領域内で、押されていたマウスボタンが離された。

releaseOutside

dragOut 後、インスタンスの領域外で、押されていたマウスボタンが離された。

rollOut

マウスボタンが押されていない状態で、カーソルがインスタンスの領域外に出た。

rollOver

マウスボタンが押されていない状態で、カーソルがインスタンスの領域に入った。

dragOut

press イベント発生後、マウスボタンが押されたまま、カーソルがインスタンスの領域外に出た。

dragOver

dragOut したカーソルが、インスタンスの領域内に戻った。

keyPress ("key")

"Key"で指定されたキーが押された。



イベントハンドラメソッド

イベントハンドラメソッドは、FlashMXで導入された、これからの主役となるイベントハンドラです。フレームアクションにも記述できるため、シンボル共通のハンドラを記述することができます。また、ムービー実行時のスクリプトによる追加、削除、変更が可能で、柔軟なスクリプトを記述することができます。

ムービークリップのイベントハンドラメソッドは、[ アクション ] パネルの [ オブジェクト ] - [ ムービー ] - [ MovieClip ] - [ イベント ] カテゴリにあります。[ アクション ] ツールボックスを利用すると、=以下のイベントハンドラメソッドの基本書式が挿入されるので、入力が楽になります。

[ アクション ] パネルの [ オブジェクト ] - [ ムービー ] - [ MovieClip ] - [ イベント ] カテゴリ
[ アクション ] パネルの [ オブジェクト ] - [ムービー ] - [MovieClip ] - [イベント ] カテゴリ

ムービークリップのイベントハンドラメソッドは以下のとおりです。
ご覧のとおり、 ムービークリップのイベントハンドラメソッドは、FlashMXで導入された2つを除き、onClipEvent ハンドラおよび on ハンドラと同じイベントを取得するものです。メソッド名は、イベント名の最初の1文字目を大文字にし、イベントハンドラメソッドを表す接頭辞「on」を付けたものです。
詳細は、『ActionScript辞書』を参照してください。
このサイトでも、徐々に解説していく予定です。

●ムービークリップのイベントハンドラメソッド

イベント

説明

onLoad

onClipEvent ( load ) ハンドラのイベントハンドラメソッド版 *注1

onUnload

onClipEvent ( unLoad ) ハンドラのイベントハンドラメソッド版

onEnterFrame

onClipEvent ( enterFrame ) ハンドラのイベントハンドラメソッド版

onMouseDown

onClipEvent ( mouseDown ) ハンドラのイベントハンドラメソッド版

onMouseUp

onClipEvent ( mouseUp ) ハンドラのイベントハンドラメソッド版

onMouseMove

onClipEvent ( mouseMove ) ハンドラのイベントハンドラメソッド版

onKeyDown

onClipEvent ( keyDown ) ハンドラのイベントハンドラメソッド版 *注2

onKeyUp

onClipEvent ( keyUp ) ハンドラのイベントハンドラメソッド版 *注2

onData

onClipEvent ( data ) ハンドラのイベントハンドラメソッド版

●ボタンムービークリップ用

onPress

on ( press ) ハンドラのイベントハンドラメソッド版

onRelease

on ( release ) ハンドラのイベントハンドラメソッド版

onReleaseOutside

on ( releaseOutside ) ハンドラのイベントハンドラメソッド版

onRollOut

on ( rollOut ) ハンドラのイベントハンドラメソッド版

onRollOver

on ( rollOver ) ハンドラのイベントハンドラメソッド版

onDragOut

on ( dragOut ) ハンドラのイベントハンドラメソッド版

onDragOver

on ( dragOver ) ハンドラのイベントハンドラメソッド版

onKillFocus

インスタンスがフォーカスを失った。(FlasnMX)

onSetFocus

インスタンスがフォーカスを受け取った。(FlasnMX)

*注1:onLoadは、コンポーネントの初期化用に用意されたイベントハンドラメソッドです。コンポーネント以外で使用することはできません。
*注2:キーボードイベントのイベントハンドラメソッドは、onClipEventハンドラとは異なり、フォーカスされていることがイベント取得の条件となります。 また、マウスポインタが動くと、ムービークリップはフォーカスを失うので注意が必要です。


・関連項目

ムービークリップ
ムービークリップ定義済みプロパティ
ムービークリップ定義済みメソッド

(C)2000-2004 Ginga Baba. All rights reserved. お問い合わせ先:ginga@nifty.com
ページTOPへ
Home Menu