スポンサーサイト

-------- | --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

[ActionScript 3.0] ドラッグ&ドロップ

2007-07-07 | 16:27

上の円はマウスでドラッグ&ドロップが出来ます。

package {
    import flash.display.*;
    import flash.display.DisplayObject;
    import flash.events.MouseEvent;
    import flash.filters.DropShadowFilter;
    public class DragDrop extends Sprite {
        public function DragDrop( ) {
            var red:Sprite = createCircle( 0xFF0000, 10 );
            var green:Sprite = createCircle(0x00FF00, 10);
            red.x = 10;
            red.y = 10;
            green.x = 30;
            green.y = 10;
            addChild( red );
            addChild( green );

            red.addEventListener( MouseEvent.MOUSE_DOWN, pickup );
            red.addEventListener( MouseEvent.MOUSE_UP, place );
            green.addEventListener( MouseEvent.MOUSE_DOWN, pickup );
            green.addEventListener( MouseEvent.MOUSE_UP, place );
        }
        public function pickup( event:MouseEvent ):void {
            // ドラッグ処理を開始して、影フィルターをつける
            event.target.startDrag( );
            event.target.filters = [ new DropShadowFilter( ) ];
            // 最前面に表示されるようにする
            setChildIndex( DisplayObject( event.target ), numChildren - 1 );
        }
        public function place( event:MouseEvent ):void {
            // ドラッグ処理を終了して影フィルターをオフ
            event.target.stopDrag( );
            event.target.filters = null;
        }
        public function createCircle( color:uint, radius:Number ):Sprite {
            var shape:Sprite = new Sprite( );
            shape.graphics.beginFill( color );
            shape.graphics.drawCircle( 0, 0, radius );
            shape.graphics.endFill( );
            return shape;
        }
    }
}

スポンサーサイト

Comment

Post a comment

Secret

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。