package {
import flash.display.Sprite;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.ui.Mouse;
public class CustomCursor extends Sprite {
private var request:URLRequest;
private var cursorLoader:Loader;
/* When you create a custom cursor, pass in the URL of the cursor you want to use */
public function CustomCursor(url:String='crosshair_image.png') {
setCursor(url);
}
public function setCursor(url:String):void
{
/* Load our image from the url path */
request = new URLRequest(url);
cursorLoader = new Loader();
cursorLoader.load(request);
/* Listen for when the content of the loader is finished loading */
cursorLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, cursorLoaded);
}
private function cursorLoaded(event:Event):void
{
/* The width and height of the new cursor */
var w:Number = event.target.width;
var h:Number = event.target.height;
/* Center the image on the mouse */
cursorLoader.x = -w/2;
cursorLoader.y = -h/2;
/* Hide the default cursor */
Mouse.hide();
/* Add the cursor graphic to the stage */
addChild(cursorLoader);
/* startDrag keeps the object the same x,y as the mouse cursor */
this.startDrag(true);
}
}
}