패키지 | flash.ui |
클래스 | public final class MouseCursorData |
상속 | MouseCursorData Object |
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10.2, AIR 2.6 |
커서를 표시하려면 Mouse.registerCursor()
함수를 사용합니다. 커서 이미지의 컨트롤을 운영 체제로 반환하려면 Mouse.unregisterCursor()
를 호출합니다. 현재 컴퓨터에서 기본 커서가 지원되는지 여부를 테스트하려면 Mouse.supportsNativeCursor
를 호출합니다.
최대 커서 크기는 32x32픽셀입니다. 투명도는 대부분의 운영 체제에서 지원됩니다.
기본 마우스 커서는 운영 체제 커서 메커니즘을 통해 직접 구현되며, 사용자 정의 커서 이미지를 표시하는 데 있어 표시 객체를 사용하는 것보다 효과적인 수단입니다. data
속성에 두 개 이상의 이미지를 제공하고 프레임 속도를 설정하여 커서를 애니메이션 처리할 수 있습니다.
커서는 스테이지의 경계 내에서만 표시됩니다. 스테이지 외부에서는 커서 이미지의 컨트롤이 운영 체제로 반환됩니다.
추가 정보
관련 API 요소
속성 | 정의 주체 | ||
---|---|---|---|
constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | ||
data : Vector.<BitmapData>
커서 이미지가 하나 이상 포함된 BitmapData 객체의 Vector입니다. | MouseCursorData | ||
frameRate : Number
커서를 애니메이션 처리하기 위한 프레임 속도입니다. | MouseCursorData | ||
hotSpot : Point
커서의 핫스폿(픽셀 단위)입니다. | MouseCursorData |
메서드 | 정의 주체 | ||
---|---|---|---|
MouseCursorData 객체를 만듭니다. | MouseCursorData | ||
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다. | Object | ||
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다. | Object | ||
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다. | Object | ||
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다. | Object | ||
로캘별 규칙에 따라 서식이 지정된 이 객체의 문자열 표현을 반환합니다. | Object | ||
지정된 객체의 문자열 표현을 반환합니다. | Object | ||
지정된 객체의 프리미티브 값을 반환합니다. | Object |
data | 속성 |
data:Vector.<BitmapData>
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10.2, AIR 2.6 |
커서 이미지가 하나 이상 포함된 BitmapData 객체의 Vector입니다.
이미지를 두 개 이상 제공하고 framerate
속성을 설정하여 커서를 애니메이션 처리합니다.
최대 커서 크기는 32x32픽셀입니다.
구현
public function get data():Vector.<BitmapData>
public function set data(value:Vector.<BitmapData>):void
frameRate | 속성 |
hotSpot | 속성 |
MouseCursorData | () | 생성자 |
public function MouseCursorData()
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10.2, AIR 2.6 |
MouseCursorData 객체를 만듭니다.
커서를 표시하려면 Mouse.registerCursor()
함수를 호출합니다.
관련 API 요소
이 예제에서는 Graphics 클래스를 통해 사용할 수 있는 드로잉 명령으로 8개의 회전하는 화살표 이미지를 만듭니다. 이러한 이미지는 벡터에 삽입되고 MouseCursorData 객체의 data
속성에 할당됩니다. 커서에 대해 미리 렌더링된 비트맵 이미지를 사용할 수도 있습니다.
package { import flash.display.Sprite; import flash.display.Shape; import flash.display.BitmapData; import flash.display.GraphicsPath; import flash.ui.MouseCursorData; import flash.ui.Mouse; import flash.geom.Matrix; public class MouseCursorDataExample extends Sprite { //Graphics path data for an arrow private var cursorPoints:Vector.<Number> = new <Number>[0,8, 16,8, 16,0, 24,12, 16,24, 16,16, 0,16, 0,8]; private var cursorDrawCommands:Vector.<int> = new <int>[1,2,2,2,2,2,2,2]; public function MouseCursorDataExample() { var mouseCursorData:MouseCursorData = new MouseCursorData(); mouseCursorData.data = makeCursorImages(); mouseCursorData.frameRate = 1; Mouse.registerCursor( "spinningArrow", mouseCursorData ); Mouse.cursor = "spinningArrow"; } //Returns a Vector containing 8 cursor images private function makeCursorImages():Vector.<BitmapData> { var cursorData:Vector.<BitmapData> = new Vector.<BitmapData>(); var cursorShape:Shape = new Shape(); cursorShape.graphics.beginFill( 0xff5555, .75 ); cursorShape.graphics.lineStyle( 1 ); cursorShape.graphics.drawPath( cursorDrawCommands, cursorPoints ); cursorShape.graphics.endFill(); var transformer:Matrix = new Matrix(); //Rotate and draw the arrow shape to a BitmapData object for each of 8 frames for( var i:int = 0; i < 8; i++ ) { var cursorFrame:BitmapData = new BitmapData( 32, 32, true, 0 ); cursorFrame.draw( cursorShape, transformer ); cursorData.push( cursorFrame ); transformer.translate(-15,-15); transformer.rotate( 0.785398163 ); transformer.translate(15,15); } return cursorData; } } }
Tue Jun 12 2018, 03:17 PM Z