This page was saved using jaction on 2006-09-04 8:33:54.
Address: http://flexdocs.kr/docs/flex2/langref/flash/ui/Mouse.html
Title: flash.ui.Mouse (Flex™ 2 레퍼런스 가이드)  •  Size: 25530
Packageflash.ui
Classpublic final class Mouse
InheritanceMouse Inheritance Object

Mouse 클래스의 Methods는, 마우스 포인터를 비표시로 하거나 표시하거나 하기 위해서 사용됩니다. Mouse 클래스는 톱 레벨의 클래스에서, constructor    을 실행하지 않아도 그 Methods나 property를 사용할 수 있습니다. 디폴트에서는 마우스 포인터가 표시됩니다만, 마우스 포인터를 비표시로 해, custom 포인터를 사용할 수도 있습니다.

View the examples

See also

flash.events.MouseEvent


Public property
 property정의
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
Public Methods
 Methods정의
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
  hide ():void
[static] 포인터를 비표시로 합니다.
Mouse
 InheritedisPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
Object
 InheritedpropertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
Object
 InheritedsetPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
Object
  show ():void
[static] 포인터를 표시합니다.
Mouse
 InheritedtoString ():String
지정된 object의 string 표현을 돌려줍니다.
Object
 InheritedvalueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
Object
Methods의 상세
hide()Methods
public static function hide():void

포인터를 비표시로 합니다. 디폴트에서는, 포인터는 표시됩니다.

See also

show()Methods 
public static function show():void

포인터를 표시합니다. 디폴트에서는, 포인터는 표시됩니다.

See also

Examples

다음의 코드의 예에서는, MouseExample, SimpleButton, ButtonDisplayState, 및 CustomCursor 클래스를 사용해, 단순한 버튼을 스테이지상에 배치합니다. 버튼에는 custom 포인터가 있어, 클릭하면 버튼이 변경됩니다. 이것을 실시하려면 , 이하의 순서를 실행합니다.
    CustomCursor 형의 인스턴스 property cursor, CustomButton 형의 인스턴스 property child 및 uint 형의 인스턴스 property gutter 를 선언합니다.
  1. child 를 새로운 CustomButton 인스턴스에 할당해 그 x 좌표 및 y 좌표를 각각 10 픽셀로 설정해, 인스턴스를 표시 리스트에 추가합니다. CustomButton 클래스는,downState,upState, overState, 및 hitTestState property를 재정의(override) 합니다. 이러한 property는, 다른 사각형을 묘화 하는 ButtonDisplayState object를 인스턴스화합니다. 이것은, child 인스턴스 상태에 따라서 다릅니다.
  2. child 인스턴스는, 다음에,MOUSE_OVER event listener 및 mouseOverHandler() listener Methods를 추가하기 위해서 사용됩니다. MOUSE_OUT event listener 및 관련한다 mouseOutHandler() Methods를 경유해 제공되는 정보가 출력됩니다.
  3. event listener는, 이하와 같이 동작합니다.
    • mouseOverHandler: "통상의" 포인터를 비표시로 해, MOUSE_MOVE listener를 추가합니다. 이 listener는,mouseMoveHandler() 를 사용해 마우스의 이동을 처리합니다. 이 핸들러에 대해서는, 이하로 설명합니다.
    • mouseOutHandler: 마우스가 custom 버튼외로 이동했을 때에, "통상의" 포인터를 표시해, MOUSE_MOVE event listener를 삭제해, custom car 솔의 가시성을 false 로 설정합니다.
    • mouseMoveHandler: 포인터가 이동된 장소에 custom car 솔을 이동해, custom car 솔의 가시성을 true 로 설정합니다.
  4. MouseExample constructor    에 돌아와, 커서의 property를 새롭다 CustomCursor object에 할당한 후,addChild() 을 사용해 표시 리스트에 추가합니다. CustomCursor 클래스는,"통상의" 포인터 대신에 작은 흑색에 가까운 사각형을 묘화 합니다. 이 묘화는, 마우스가 child 위에 놓여졌을 때에 실행됩니다.
  5. 타입이 MOUSE_LEAVE 의 4 개째의 event listener가, 관련한다 mouseLeaveHandler() Methods와 함께 추가됩니다. 이 Methods는, 마우스가 스테이지를 떠나면 불려 가 mouseOutHandler() 에 새로운mouseMove listener objects를 건네줍니다. 이 object는, 본질적으로 포인터를 스테이지상에 남기지 않기 위해(때문에) 포인터를 삭제합니다.
package {
    import flash.display.Sprite;
    import flash.display.DisplayObject;
    import flash.ui.Mouse;
    import flash.events. *;

    public class MouseExample extends Sprite {
         private var cursor:CustomCursor;
         private var child:CustomButton;
         private var gutter:uint = 10;

        public function MouseExample() {
            child = new CustomButton();
            child.x = gutter;
            child.y = gutter;
            addChild(child);

            child.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
            child.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);

            cursor = new CustomCursor();
            addChild(cursor);

            stage.addEventListener(Event.MOUSE_LEAVE, mouseLeaveHandler);
        }

        private function mouseOverHandler(event:MouseEvent) :void {
            trace("mouseOverHandler");
            Mouse.hide();
            child.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
        }

        private function mouseOutHandler(event:MouseEvent) :void {
            trace("mouseOutHandler");
            Mouse.show();
            child.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
            cursor.visible = false;
        }

        private function mouseMoveHandler(event:MouseEvent) :void {
            trace("mouseMoveHandler");
            cursor.x = event.localX;
            cursor.y = event.localY;
            event.updateAfterEvent();
            cursor.visible = true;
        }

        private function mouseLeaveHandler(event:Event) :void {
            trace("mouseLeaveHandler");
            mouseOutHandler(new MouseEvent(MouseEvent.MOUSE_MOVE));
        }
    }
}

import flash.display.Shape;
import flash.display.SimpleButton;
    
class CustomButton extends SimpleButton {
    var upColor:uint = 0xFFCC00;
    var overColor:uint = 0xCCFF00;
    var downColor:uint = 0x00CCFF;
    var size:uint = 80;
    
    public function CustomButton() {
        downState = new ButtonDisplayState(downColor, size+10);
        overState = new ButtonDisplayState(overColor, size);
        upState = new ButtonDisplayState(upColor, size);
        hitTestState = new ButtonDisplayState(upColor, size);
    }
}

class ButtonDisplayState extends Shape {
    var bgColor:uint;
    var size:uint;
    
    public function ButtonDisplayState(bgColor:uint, size:uint) {
        this.bgColor = bgColor;
        this.size = size;
        draw();
    }
    
    private function draw() :void {
        graphics.clear();
        graphics.beginFill(bgColor);
        graphics.drawRect(0, 0, size, size);
        graphics.endFill();
    }
}
    
class CustomCursor extends Shape {
    var bgColor:uint = 0x333333;
    var size:uint = 10;
    
    public function CustomCursor() {
        visible = false;
        draw();
    }
    
    private function draw() :void {
        graphics.clear();
        graphics.beginFill(bgColor);
        graphics.drawRect(0, 0, size, size);
        graphics.endFill();
    }
}






 

코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트

현재의 페이지: http://flexdocs.kr/docs/flex2/langref/flash/ui/Mouse.html