| Package | flash.ui |
| Class | public final class Mouse |
| Inheritance | Mouse Object |
See also
| Method | Defined By | ||
|---|---|---|---|
![]() |
Indicates whether an object has a specified property defined.
| Object | |
|
[static]
Hides the pointer.
| Mouse | ||
![]() |
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter.
| Object | |
![]() |
Indicates whether the specified property exists and is enumerable.
| Object | |
![]() |
Sets the availability of a dynamic property for loop operations.
| Object | |
|
[static]
Displays the pointer.
| Mouse | ||
![]() |
Returns the string representation of the specified object.
| Object | |
![]() |
Returns the primitive value of the specified object.
| Object | |
| hide | () | method |
public static function hide():void
Hides the pointer. The pointer is visible by default.
Note: You need to call Mouse.hide() only once, regardless of
the number of previous calls to Mouse.show().
See also
| show | () | method |
public static function show():void
Displays the pointer. The pointer is visible by default.
Note: You need to call Mouse.show() only once, regardless of
the number of previous calls to Mouse.hide().
See also
cursor of type CustomCursor, child of type
CustomButton, and gutter of type uint. child to a new CustomButton instance, set its x and
y coordinates to 10 pixels each, and then add the instance to the display list.
The CustomButton class overrides the downState, upState,
overState, and hitTestState properties in SimpleButton. Each of these
properties instantiates a ButtonDisplayState object, which draws a different square, depending
on the state of the child instance.child instance is then used to add a MOUSE_OVER event listener and
mouseOverHandler() listener method, along with a MOUSE_OUT event listener and associated
mouseOutHandler() method.mouseOverHandler: Hides the "normal" pointer and adds a MOUSE_MOVE
listener, which processes the mouse moves using mouseMoveHandler(), described
below.mouseOutHandler: When the mouse moves outside the custom button, the
"normal" pointer is shown, the MOUSE_MOVE event listener is removed, and the custom cursor's
visibility is set to false.mouseMoveHandler: Moves the custom cursor around wherever the pointer is
moved and sets the custom cursor's visibility to true.MouseExample constructor, the cursor property is assigned to a new
CustomCursor object and then added to the display list using addChild().
The CustomCursor class draws a small nearly black square in place of the "normal" pointer
whenever the mouse is over child.MOUSE_LEAVE is added, with the associated
mouseLeaveHandler() method. In this method (called if the mouse leaves the Stage),
mouseOutHandler() is passed a new mouseMove listener object, which essentially
removes the pointer so it is not left on the Stage.
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();
}
}