AS3ロールオーバー/MouseEvent
【基本記述:ロールオーバーするたびにMCのwidthを2倍にする方法】
記述方法もいくつかあるようですが、よく使いそうな記述です。
しかしながら、AS2の時のようにMCに直接記述することはできないようですね、アクションスクリプト3は。
①addEventListenerに関数を記述する方法。(***はMC名)
***.addEventListener(MouseEvent.ROLL_OVER ,
function(e){
***.width *= 2;
});
Object(root).***.addEventListener(MouseEvent.ROLL_OVER,this.Ffunc);
function Ffunc(e){
Object(root).***.x *= 2;//ロールオーバー時に***のX座標を
}
MCに直接書きこめない不自由感。外部ASクラスで管理するというのがAS3の定説でしょうか。まだまだ使い込んでいないので、わからないことが多すぎる気がします。
●マウスイベント
ROLL_OUT
ROLL_OVER
CLICK
MOUSE_OUT
MOUSE_OVER
MOUSE_UP
MOUSE_DOWN
DOUBLE_CLICK
MOUSE_MOVE
MOUSE_WHEEL
マウスイベントにはDOUBLE_CLICKなどもあり、AS2にあったかどうか定かでないですが、結構以前は一度目のクリックと二度目のクリックの時間を取得してダブルクリック判定をしていたような気がします。
オーサリングはAS2のが早くて、AS3でのコンテンツ作成はシステム開発に近い、わりあい込み入ったソースが必要な時か趣味で制作する時というのが今のアクションスクリプト3に対する印象です。
いままでアクションスクリプト2では、モーションとActionScript制御が垣根なしにできたのに、AS3ではベルリンの壁が復活したような印象でした。