Flashの画面上でオリジナルのマウスカーソルを使う時のサンプルです。
矢印カーソルを非表示にして、赤丸を替わりに表示します。
Mouse.hide()でカーソルを非表示にして、替わりのカーソルをスプライトで描画します。
しかし、それだけだと画面外に出た時にカーソルが残ってしまうので
stageのMOUSE_OVERとMOUSE_OUTのイベントで表示を切り替えます。
package
{
import flash.display.Sprite;
import flash.display.Stage;
import flash.events.MouseEvent;
import flash.ui.Mouse;
[SWF(width="400", height="300")]
public class Main extends Sprite
{
public var back:Sprite;//マウス検知用背景
public var csr:Sprite;//替わりのカーソル
public function Main()
{
//マウス検知用背景(透明な背景)
back = new Sprite();
back.graphics.beginFill(0xFFFFFF, 0);
back.graphics.drawRect(0,0,400,300);
this.addChild(back);
//替わりのカーソル
csr = new Sprite();
csr.graphics.beginFill(0xFF0000);
csr.graphics.drawCircle( 0,0, 5 );
csr.graphics.endFill();
csr.visible = false;
csr.mouseEnabled = false;
this.addChild(csr);
this.stage.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver );
this.stage.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut );
this.stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove );
}
public function onMouseOver(e:MouseEvent):void
{
Mouse.hide();
csr.visible = true;
}
public function onMouseOut(e:MouseEvent):void
{
Mouse.show();
csr.visible = false;
}
public function onMouseMove(e:MouseEvent):void
{
csr.x = e.stageX;
csr.y = e.stageY;
}
}
}