home > September 2010

AS3 : スライド設定

September 20, 2010

良く忘れるのでメモ。

各インスタンス名の説明
元のオブジェクト : _slidemc
スライドするオブジェクト : slideimg
スライドバー : bar

import flash.events.*;
import flash.geom.Rectangle;

//イベントリスナー登録
_slidemc.bar.buttonMode = true;
_slidemc.bar.addEventListener(MouseEvent.MOUSE_DOWN, startMove);
_slidemc.bar.addEventListener(MouseEvent.MOUSE_UP, StopMove);
_slidemc.addEventListener(MouseEvent.MOUSE_UP, StopMove);

〜省略〜

private var Druggrec:Rectangle = new Rectangle(338,-177,0,(405 - 100));// ドラッグの範囲
private var yMax:Number;// MCが実際にスライドする範囲
private var SlideRate:Number;// スライドする割合

//スライド
public function startMove(event:MouseEvent):void
{
_slidemc.bar.startDrag(false,Druggrec);

yMax = 405 - 90;
SlideRate = (_slidemc.slideimg.height - yMax)/yMax;
_slidemc.bar.addEventListener(Event.ENTER_FRAME,ActiveScroll);
}

public function StopMove(event:MouseEvent):void
{
_slidemc.bar.stopDrag();
_slidemc.bar.removeEventListener(Event.ENTER_FRAME,ActiveScroll);
}

//スライドさせるTweener
public function ActiveScroll(event:Event){
Tweener.addTween(_slidemc.slideimg, { y:-Math.abs(SlideRate*( -177 - _slidemc.bar.y )),
time:1, transition:"easeOutExpo"});
}


Permalink | Comments (0)