Package | flash.display |
Class | public class Sprite |
Inheritance | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Subclasses | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
A Sprite object is similar to a movie clip, but does not have a timeline. Sprite is an appropriate base class for objects that do not require timelines. For example, Sprite would be a logical base class for user interface (UI) components that typically do not use the timeline.
The Sprite class is new in ActionScript 3.0. It provides an alternative to the functionality of the MovieClip class, which retains all the functionality of previous ActionScript releases to provide backward compatibility.
More examples
Learn more
Basics of display programming
Core display classes
Working with display objects
Choosing a DisplayObject subclass
Property | Defined By | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
The current accessibility implementation (AccessibilityImplementation)
for this InteractiveObject instance. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
The current accessibility options for this display object. | DisplayObject | ||
alpha : Number
Indicates the alpha transparency value of the object specified. | DisplayObject | ||
blendMode : String
A value from the BlendMode class that specifies which blend mode to use. | DisplayObject | ||
blendShader : Shader [write-only]
Sets a shader that is used for blending the foreground and background. | DisplayObject | ||
buttonMode : Boolean
Specifies the button mode of this sprite. | Sprite | ||
cacheAsBitmap : Boolean
If set to true, Flash runtimes cache an internal bitmap representation of the
display object. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
If non-null, this Matrix object defines how a display object is rendered when
cacheAsBitmap is set to true. | DisplayObject | ||
constructor : Object
A reference to the class object or constructor function for a given object instance. | Object | ||
contextMenu : NativeMenu
Specifies the context menu associated with this object. | InteractiveObject | ||
doubleClickEnabled : Boolean
Specifies whether the object receives doubleClick events. | InteractiveObject | ||
dropTarget : DisplayObject [read-only]
Specifies the display object over which the sprite is being dragged, or on
which the sprite was dropped. | Sprite | ||
filters : Array
An indexed array that contains each filter object currently associated with the display object. | DisplayObject | ||
focusRect : Object
Specifies whether this object displays a focus rectangle. | InteractiveObject | ||
graphics : Graphics [read-only]
Specifies the Graphics object that belongs to this sprite where vector
drawing commands can occur. | Sprite | ||
height : Number
Indicates the height of the display object, in pixels. | DisplayObject | ||
hitArea : Sprite
Designates another sprite to serve as the hit area for a sprite. | Sprite | ||
loaderInfo : LoaderInfo [read-only]
Returns a LoaderInfo object containing information about loading the file
to which this display object belongs. | DisplayObject | ||
mask : DisplayObject
The calling display object is masked by the specified mask object. | DisplayObject | ||
metaData : Object
Obtains the meta data object of the DisplayObject instance if meta data was stored alongside the
the instance of this DisplayObject in the SWF file through a PlaceObject4 tag. | DisplayObject | ||
mouseChildren : Boolean
Determines whether or not the children of the object are mouse, or user input device, enabled. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Specifies whether this object receives mouse, or other user input, messages. | InteractiveObject | ||
mouseX : Number [read-only]
Indicates the x coordinate of the mouse or user input device position, in pixels. | DisplayObject | ||
mouseY : Number [read-only]
Indicates the y coordinate of the mouse or user input device position, in pixels. | DisplayObject | ||
name : String
Indicates the instance name of the DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Specifies whether a virtual keyboard (an on-screen, software keyboard) should display
when this InteractiveObject instance receives focus. | InteractiveObject | ||
numChildren : int [read-only]
Returns the number of children of this object. | DisplayObjectContainer | ||
opaqueBackground : Object
Specifies whether the display object is opaque with a certain background color. | DisplayObject | ||
parent : DisplayObjectContainer [read-only]
Indicates the DisplayObjectContainer object that contains this display object. | DisplayObject | ||
root : DisplayObject [read-only]
For a display object in a loaded SWF file, the root property is the
top-most display object in the portion of the display list's tree structure represented by that SWF file. | DisplayObject | ||
rotation : Number
Indicates the rotation of the DisplayObject instance, in degrees, from its original orientation. | DisplayObject | ||
rotationX : Number
Indicates the x-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container. | DisplayObject | ||
rotationY : Number
Indicates the y-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container. | DisplayObject | ||
rotationZ : Number
Indicates the z-axis rotation of the DisplayObject instance, in degrees, from its original orientation relative to the 3D parent container. | DisplayObject | ||
scale9Grid : Rectangle
The current scaling grid that is in effect. | DisplayObject | ||
scaleX : Number
Indicates the horizontal scale (percentage) of the object as applied from the registration point. | DisplayObject | ||
scaleY : Number
Indicates the vertical scale (percentage) of an object as applied from the registration point of the object. | DisplayObject | ||
scaleZ : Number
Indicates the depth scale (percentage) of an object as applied from the registration point of the object. | DisplayObject | ||
scrollRect : Rectangle
The scroll rectangle bounds of the display object. | DisplayObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Defines the area that should remain on-screen when a soft keyboard is displayed (not available on iOS). | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
Controls sound within this sprite. | Sprite | ||
stage : Stage [read-only]
The Stage of the display object. | DisplayObject | ||
tabChildren : Boolean
Determines whether the children of the object are tab enabled. | DisplayObjectContainer | ||
tabEnabled : Boolean
Specifies whether this object is in the tab order. | InteractiveObject | ||
tabIndex : int
Specifies the tab ordering of objects in a SWF file. | InteractiveObject | ||
textSnapshot : flash.text:TextSnapshot [read-only]
Returns a TextSnapshot object for this DisplayObjectContainer instance. | DisplayObjectContainer | ||
transform : flash.geom:Transform
An object with properties pertaining to a display object's matrix, color transform, and pixel bounds. | DisplayObject | ||
useHandCursor : Boolean
A Boolean value that indicates whether the pointing hand (hand cursor) appears when the pointer rolls
over a sprite in which the buttonMode property is set to true. | Sprite | ||
visible : Boolean
Whether or not the display object is visible. | DisplayObject | ||
width : Number
Indicates the width of the display object, in pixels. | DisplayObject | ||
x : Number
Indicates the x coordinate of the DisplayObject instance relative to the local coordinates of
the parent DisplayObjectContainer. | DisplayObject | ||
y : Number
Indicates the y coordinate of the DisplayObject instance relative to the local coordinates of
the parent DisplayObjectContainer. | DisplayObject | ||
z : Number
Indicates the z coordinate position along the z-axis of the DisplayObject
instance relative to the 3D parent container. | DisplayObject |
Method | Defined By | ||
---|---|---|---|
Sprite()
Creates a new Sprite instance. | Sprite | ||
Adds a child DisplayObject instance to this DisplayObjectContainer instance. | DisplayObjectContainer | ||
Adds a child DisplayObject instance to this DisplayObjectContainer
instance. | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event. | EventDispatcher | ||
Indicates whether the security restrictions
would cause any display objects to be omitted from the list returned by calling
the DisplayObjectContainer.getObjectsUnderPoint() method
with the specified point point. | DisplayObjectContainer | ||
Determines whether the specified display object is a child of the DisplayObjectContainer instance or
the instance itself. | DisplayObjectContainer | ||
Dispatches an event into the event flow. | EventDispatcher | ||
Returns a rectangle that defines the area of the display object relative to the coordinate system
of the targetCoordinateSpace object. | DisplayObject | ||
Returns the child display object instance that exists at the specified index. | DisplayObjectContainer | ||
Returns the child display object that exists with the specified name. | DisplayObjectContainer | ||
Returns the index position of a child DisplayObject instance. | DisplayObjectContainer | ||
Returns an array of objects that lie under the specified point and are children
(or grandchildren, and so on) of this DisplayObjectContainer instance. | DisplayObjectContainer | ||
Returns a rectangle that defines the boundary of the display object,
based on the coordinate system defined by the targetCoordinateSpace
parameter, excluding any strokes on shapes. | DisplayObject | ||
Converts the point object from the Stage (global) coordinates
to the display object's (local) coordinates. | DisplayObject | ||
Converts a two-dimensional point from the Stage (global) coordinates to a
three-dimensional display object's (local) coordinates. | DisplayObject | ||
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | ||
Indicates whether an object has a specified property defined. | Object | ||
Evaluates the bounding box of the display object to see if it overlaps or intersects with the
bounding box of the obj display object. | DisplayObject | ||
Evaluates the display object to see if it overlaps or intersects with the
point specified by the x and y parameters. | DisplayObject | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
Converts a three-dimensional point of the three-dimensional display
object's (local) coordinates to a two-dimensional point in the Stage (global) coordinates. | DisplayObject | ||
Converts the point object from the display object's (local) coordinates to the
Stage (global) coordinates. | DisplayObject | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Removes the specified child DisplayObject instance from the child list of the DisplayObjectContainer instance. | DisplayObjectContainer | ||
Removes a child DisplayObject from the specified index position in the child list of
the DisplayObjectContainer. | DisplayObjectContainer | ||
Removes all child DisplayObject instances from the child list of the DisplayObjectContainer instance. | DisplayObjectContainer | ||
Removes a listener from the EventDispatcher object. | EventDispatcher | ||
Raises a virtual keyboard. | InteractiveObject | ||
Changes the position of an existing child in the display object container. | DisplayObjectContainer | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Lets the user drag the specified sprite. | Sprite | ||
Lets the user drag the specified sprite on a touch-enabled device. | Sprite | ||
Recursively stops the timeline execution of all MovieClips rooted at this object. | DisplayObjectContainer | ||
Ends the startDrag() method. | Sprite | ||
Ends the startTouchDrag() method, for use with touch-enabled devices. | Sprite | ||
Swaps the z-order (front-to-back order) of the two specified child objects. | DisplayObjectContainer | ||
Swaps the z-order (front-to-back order) of the child objects at the two specified index positions in the
child list. | DisplayObjectContainer | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
Returns the string representation of the specified object. | Object | ||
Returns the primitive value of the specified object. | Object | ||
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type. | EventDispatcher |
Event | Summary | Defined By | ||
---|---|---|---|---|
[broadcast event] Dispatched when the Flash Player or AIR application gains operating system focus and becomes active. | EventDispatcher | |||
Dispatched when a display object is added to the display list. | DisplayObject | |||
Dispatched when a display object is added to the on stage display list, either directly or through the addition of a sub tree in which the display object is contained. | DisplayObject | |||
Dispatched when the user selects 'Clear' (or 'Delete') from the text context menu. | InteractiveObject | |||
Dispatched when a user presses and releases the main button of the user's pointing device over the same InteractiveObject. | InteractiveObject | |||
Dispatched when a user gesture triggers the context menu associated with this interactive object in an AIR application. | InteractiveObject | |||
Dispatched when the user activates the platform-specific accelerator key combination for a copy operation or selects 'Copy' from the text context menu. | InteractiveObject | |||
Dispatched when the user activates the platform-specific accelerator key combination for a cut operation or selects 'Cut' from the text context menu. | InteractiveObject | |||
[broadcast event] Dispatched when the Flash Player or AIR application operating loses system focus and is becoming inactive. | EventDispatcher | |||
Dispatched when a user presses and releases the main button of a pointing device twice in rapid succession over the same InteractiveObject when that object's doubleClickEnabled flag is set to true. | InteractiveObject | |||
[broadcast event] Dispatched when the playhead is entering a new frame. | DisplayObject | |||
[broadcast event] Dispatched when the playhead is exiting the current frame. | DisplayObject | |||
Dispatched after a display object gains focus. | InteractiveObject | |||
Dispatched after a display object loses focus. | InteractiveObject | |||
[broadcast event] Dispatched after the constructors of frame display objects have run but before frame scripts have run. | DisplayObject | |||
Dispatched when the user presses two points of contact over the same InteractiveObject instance on a touch-enabled device (such as presses and releases two fingers over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user moves a point of contact over the InteractiveObject instance on a touch-enabled device (such as moving a finger from left to right over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user performs a rotation gesture at a point of contact with an InteractiveObject instance (such as touching two fingers and rotating them over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user performs a swipe gesture at a point of contact with an InteractiveObject instance (such as touching three fingers to a screen and then moving them in parallel over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user creates a point of contact with an InteractiveObject instance, then taps on a touch-enabled device (such as placing several fingers over a display object to open a menu and then taps one finger to select a menu item on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user performs a zoom gesture at a point of contact with an InteractiveObject instance (such as touching two fingers to a screen and then quickly spreading the fingers apart over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
This event is dispatched to any client app that supports inline input with an IME | InteractiveObject | |||
Dispatched when the user presses a key. | InteractiveObject | |||
Dispatched when the user attempts to change focus by using keyboard navigation. | InteractiveObject | |||
Dispatched when the user releases a key. | InteractiveObject | |||
Dispatched when a user presses and releases the middle button of the user's pointing device over the same InteractiveObject. | InteractiveObject | |||
Dispatched when a user presses the middle pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when a user releases the pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when a user presses the pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when the user attempts to change focus by using a pointer device. | InteractiveObject | |||
Dispatched when a user moves the pointing device while it is over an InteractiveObject. | InteractiveObject | |||
Dispatched when the user moves a pointing device away from an InteractiveObject instance. | InteractiveObject | |||
Dispatched when the user moves a pointing device over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when a user releases the pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when a mouse wheel is spun over an InteractiveObject instance. | InteractiveObject | |||
Dispatched by the drag initiator InteractiveObject when the user releases the drag gesture. | InteractiveObject | |||
Dispatched by the target InteractiveObject when a dragged object is dropped on it and the drop has been accepted with a call to DragManager.acceptDragDrop(). | InteractiveObject | |||
Dispatched by an InteractiveObject when a drag gesture enters its boundary. | InteractiveObject | |||
Dispatched by an InteractiveObject when a drag gesture leaves its boundary. | InteractiveObject | |||
Dispatched by an InteractiveObject continually while a drag gesture remains within its boundary. | InteractiveObject | |||
Dispatched at the beginning of a drag operation by the InteractiveObject that is specified as the drag initiator in the DragManager.doDrag() call. | InteractiveObject | |||
Dispatched during a drag operation by the InteractiveObject that is specified as the drag initiator in the DragManager.doDrag() call. | InteractiveObject | |||
Dispatched when the user activates the platform-specific accelerator key combination for a paste operation or selects 'Paste' from the text context menu. | InteractiveObject | |||
Dispatched when the user lowers an active stylus past the proximity detection threshold of the screen. | InteractiveObject | |||
Dispatched when the user lifts an active stylus above the proximity detection threshold of the screen. | InteractiveObject | |||
Dispatched when the user moves an active stylus over the screen while remaining within the proximity detection threshold. | InteractiveObject | |||
Dispatched when the user moves an active stylus away from this InteractiveObject while remaining within the proximity detection threshold of the screen. | InteractiveObject | |||
Dispatched when the user moves an active stylus directly above this InteractiveObject while remaining within the proximity detection threshold of the screen. | InteractiveObject | |||
Dispatched when the user moves an active stylus away from this InteractiveObject and any of its children while remaining within the proximity detection threshold of the screen. | InteractiveObject | |||
Dispatched when the user moves an active stylus over this InteractiveObject from outside the object's tree of descendents in the display list (while remaining within the proximity detection threshold of the screen). | InteractiveObject | |||
Dispatched when a user releases the button on the pointing device after the user first pressed the button over an InteractiveObject instance and then moved the pointing device off of the InteractiveObject instance. | InteractiveObject | |||
Dispatched when a display object is about to be removed from the display list. | DisplayObject | |||
Dispatched when a display object is about to be removed from the display list, either directly or through the removal of a sub tree in which the display object is contained. | DisplayObject | |||
[broadcast event] Dispatched when the display list is about to be updated and rendered. | DisplayObject | |||
Dispatched when a user presses and releases the right button of the user's pointing device over the same InteractiveObject. | InteractiveObject | |||
Dispatched when a user presses the pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when a user releases the pointing device button over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when the user moves a pointing device away from an InteractiveObject instance. | InteractiveObject | |||
Dispatched when the user moves a pointing device over an InteractiveObject instance. | InteractiveObject | |||
Dispatched when the user activates the platform-specific accelerator key combination for a select all operation or selects 'Select All' from the text context menu. | InteractiveObject | |||
Dispatched immediately after the soft keyboard is raised. | InteractiveObject | |||
Dispatched immediately before the soft keyboard is raised. | InteractiveObject | |||
Dispatched immediately after the soft keyboard is lowered. | InteractiveObject | |||
Dispatched when the value of the object's tabChildren flag changes. | InteractiveObject | |||
Dispatched when the object's tabEnabled flag changes. | InteractiveObject | |||
Dispatched when the value of the object's tabIndex property changes. | InteractiveObject | |||
Dispatched when a user enters one or more characters of text. | InteractiveObject | |||
Dispatched when the user first contacts a touch-enabled device (such as touches a finger to a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user removes contact with a touch-enabled device (such as lifts a finger off a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user touches the device, and is continuously dispatched until the point of contact is removed. | InteractiveObject | |||
Dispatched when the user moves the point of contact away from InteractiveObject instance on a touch-enabled device (such as drags a finger from one display object to another on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user moves the point of contact over an InteractiveObject instance on a touch-enabled device (such as drags a finger from a point outside a display object to a point over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user moves the point of contact away from an InteractiveObject instance on a touch-enabled device (such as drags a finger from over a display object to a point outside the display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user moves the point of contact over an InteractiveObject instance on a touch-enabled device (such as drags a finger from a point outside a display object to a point over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject | |||
Dispatched when the user lifts the point of contact over the same InteractiveObject instance on which the contact was initiated on a touch-enabled device (such as presses and releases a finger from a single point over a display object on a mobile phone or tablet with a touch screen). | InteractiveObject |
buttonMode | property |
buttonMode:Boolean
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifies the button mode of this sprite. If true
, this
sprite behaves as a button, which means that it triggers the display
of the hand cursor when the pointer passes over the sprite and can
receive a click
event if the enter or space keys are pressed
when the sprite has focus. You can suppress the display of the hand cursor
by setting the useHandCursor
property to false
,
in which case the pointer is displayed.
Although it is better to use the SimpleButton class to create buttons,
you can use the buttonMode
property to give a sprite
some button-like functionality. To include a sprite in the tab order,
set the tabEnabled
property (inherited from the
InteractiveObject class and false
by default) to
true
. Additionally, consider whether you want
the children of your sprite to be user input enabled. Most buttons
do not enable user input interactivity for their child objects because
it confuses the event flow. To disable user input interactivity for all child
objects, you must set the mouseChildren
property (inherited
from the DisplayObjectContainer class) to false
.
If you use the buttonMode
property with the MovieClip class (which is a
subclass of the Sprite class), your button might have some added
functionality. If you include frames labeled _up, _over, and _down,
Flash Player provides automatic state changes (functionality
similar to that provided in previous versions of ActionScript for movie
clips used as buttons). These automatic state changes are
not available for sprites, which have no timeline, and thus no frames
to label.
Implementation
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Related API Elements
Example ( How to use this example )
buttonMode
property to true
for one and false
for the other. When you compile
and run the application, both sprites respond to mouse events, but only the one in which
buttonMode
is set to true
uses the hand cursor and is included
in the tab order:
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
dropTarget | property |
dropTarget:DisplayObject
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifies the display object over which the sprite is being dragged, or on which the sprite was dropped.
Implementation
public function get dropTarget():DisplayObject
Related API Elements
Example ( How to use this example )
circle
sprite and two target
sprites. The startDrag()
method is called on the circle
sprite when the user
positions the cursor over the sprite and presses the mouse button, and the stopDrag()
method
is called when the user releases the mouse button. This lets the user drag the sprite. On release of the mouse
button, the mouseRelease()
method is called, which in turn traces the name
of the dropTarget
object — the one to which the user dragged the
circle
sprite:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
graphics | property |
graphics:Graphics
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifies the Graphics object that belongs to this sprite where vector drawing commands can occur.
Implementation
public function get graphics():Graphics
Example ( How to use this example )
circle
sprite and uses its
graphics
property to draw a circle with a yellow (0xFFCC00) fill:
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
hitArea | property |
hitArea:Sprite
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Designates another sprite to serve as the hit area for a sprite. If the hitArea
property does not exist or the value is null
or undefined
, the
sprite itself is used as the hit area. The value of the hitArea
property can
be a reference to a Sprite object.
You can change the hitArea
property at any time; the modified sprite immediately
uses the new hit area behavior. The sprite designated as the hit area does not need to be
visible; its graphical shape, although not visible, is still detected as the hit area.
Note: You must set to false
the mouseEnabled
property of the sprite designated as the hit area. Otherwise, your sprite button might
not work because the sprite designated as the hit area receives the user input events instead
of your sprite button.
Implementation
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Example ( How to use this example )
circle
sprite and a square
sprite. The square
sprite is the hitArea
for the circle
sprite.
So when the user clicks the square
sprite, the circle
sprite dispatches
a click
event:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var square:Sprite = new Sprite(); square.graphics.beginFill(0xCCFF00); square.graphics.drawRect(200, 0, 100, 100); circle.hitArea = square; square.mouseEnabled = false; circle.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void{ trace(event.target == circle); // true trace(event.target == square); // false } addChild(circle); addChild(square);
soundTransform | property |
soundTransform:flash.media:SoundTransform
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Controls sound within this sprite.
Note: This property does not affect HTML content in an HTMLControl object (in Adobe AIR).
Implementation
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Related API Elements
Example ( How to use this example )
container
and adds a Loader object to its child list. The Loader object loads a SWF file.
When the user clicks the link in the tf
text field true
, the
mute()
method sets the volume
property of the
soundTransform
property of the container
sprite:
import flash.display.Sprite; import flash.display.Loader; import flash.events.IOErrorEvent; import flash.events.MouseEvent; import flash.net.URLRequest; import flash.text.TextField; import flash.media.SoundTransform; var container:Sprite = new Sprite(); addChild(container); var ldr:Loader = new Loader; var urlReq:URLRequest = new URLRequest("SoundPlayer.swf"); ldr.load(urlReq); container.addChild(ldr); ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound); var tf:TextField = new TextField(); tf.htmlText = "<a href = 'event:Mute'>Mute / Unmute</a>"; addChild(tf); var mySoundTransform:SoundTransform = new SoundTransform(); mySoundTransform.volume = 1; tf.addEventListener(MouseEvent.CLICK, mute); function mute(event:MouseEvent):void { if (mySoundTransform.volume == 0) { mySoundTransform.volume = 1; } else { mySoundTransform.volume = 0; } container.soundTransform = mySoundTransform; } function urlNotFound(event:IOErrorEvent):void { trace("The URL was not found."); }
useHandCursor | property |
useHandCursor:Boolean
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0 |
A Boolean value that indicates whether the pointing hand (hand cursor) appears when the pointer rolls
over a sprite in which the buttonMode
property is set to true
.
The default value of the useHandCursor
property is true
.
If useHandCursor
is set to true
, the pointing hand used for buttons
appears when the pointer rolls over a button sprite. If useHandCursor
is
false
, the arrow pointer is used instead.
You can change the useHandCursor
property at any time; the modified sprite
immediately takes on the new cursor appearance.
Note: In Flex or Flash Builder, if your sprite has child sprites, you might want to
set the mouseChildren
property to false
. For example, if you want a hand
cursor to appear over a Flex <mx:Label> control, set the useHandCursor
and
buttonMode
properties to true
, and the mouseChildren
property
to false
.
Implementation
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Related API Elements
Example ( How to use this example )
buttonMode
property to true
for both, yet it sets the useHandCursor
property to true
for one and false
for the other. When you compile
and run the application, both sprites respond as buttons (and are included in the tab order), but
only the one in which useHandCursor
is set to true
uses the hand cursor:
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.useHandCursor = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = true; circle2.useHandCursor = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
Sprite | () | Constructor |
public function Sprite()
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Creates a new Sprite instance. After you create the Sprite instance, call the
DisplayObjectContainer.addChild()
or DisplayObjectContainer.addChildAt()
method to add the Sprite to a parent DisplayObjectContainer.
startDrag | () | method |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Lets the user drag the specified sprite. The sprite remains draggable until explicitly
stopped through a call to the Sprite.stopDrag()
method, or until
another sprite is made draggable. Only one sprite is draggable at a time.
Three-dimensional display objects follow the pointer and
Sprite.startDrag()
moves the object within
the three-dimensional plane defined by the display object. Or, if the display object is a two-dimensional object
and the child of a three-dimensional object, the two-dimensional object
moves within the three dimensional plane defined by the three-dimensional parent object.
Parameters
lockCenter:Boolean (default = false ) — Specifies whether the draggable sprite is locked to the center of
the pointer position (true ), or locked to the point where the user first clicked the
sprite (false ).
| |
bounds:Rectangle (default = null ) — Value relative to the coordinates of the Sprite's parent that specify a constraint
rectangle for the Sprite.
|
Related API Elements
Example ( How to use this example )
circle
sprite and two target
sprites. The startDrag()
method is called on the circle
sprite when the user
positions the cursor over the sprite and presses the mouse button, and the stopDrag()
method
is called when the user releases the mouse button. This lets the user drag the sprite. On release of the mouse
button, the mouseRelease()
method is called, which in turn traces the name
of the dropTarget
object — the one to which the user dragged the
circle
sprite:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
startTouchDrag | () | method |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Lets the user drag the specified sprite on a touch-enabled device. The sprite remains draggable until explicitly
stopped through a call to the Sprite.stopTouchDrag()
method, or until
another sprite is made draggable. Only one sprite is draggable at a time.
Three-dimensional display objects follow the pointer and
Sprite.startTouchDrag()
moves the object within
the three-dimensional plane defined by the display object. Or, if the display object is a two-dimensional object
and the child of a three-dimensional object, the two-dimensional object
moves within the three dimensional plane defined by the three-dimensional parent object.
Parameters
touchPointID:int — An integer to assign to the touch point.
| |
lockCenter:Boolean (default = false ) — Specifies whether the draggable sprite is locked to the center of
the pointer position (true ), or locked to the point where the user first clicked the
sprite (false ).
| |
bounds:Rectangle (default = null ) — Value relative to the coordinates of the Sprite's parent that specify a constraint
rectangle for the Sprite.
|
Related API Elements
Example ( How to use this example )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
stopDrag | () | method |
public function stopDrag():void
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Ends the startDrag()
method. A sprite that was made draggable with the
startDrag()
method remains draggable until a
stopDrag()
method is added, or until another
sprite becomes draggable. Only one sprite is draggable at a time.
Related API Elements
Example ( How to use this example )
circle
sprite and two target
sprites. The startDrag()
method is called on the circle
sprite when the user
positions the cursor over the sprite and presses the mouse button, and the stopDrag()
method
is called when the user releases the mouse button. This lets the user drag the sprite. On release of the mouse
button, the mouseRelease()
method is called, which in turn traces the name
of the dropTarget
object — the one to which the user dragged the
circle
sprite:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
stopTouchDrag | () | method |
public function stopTouchDrag(touchPointID:int):void
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Ends the startTouchDrag()
method, for use with touch-enabled devices. A sprite that was made draggable with the
startTouchDrag()
method remains draggable until a
stopTouchDrag()
method is added, or until another
sprite becomes draggable. Only one sprite is draggable at a time.
Parameters
touchPointID:int — The integer assigned to the touch point in the startTouchDrag method.
|
Related API Elements
Example ( How to use this example )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
- Declare the
size
property (100 x 100 pixels) and the background color (orange) for later use in drawing the square. - The constructor then creates a new
child
Sprite object and uses it to add two event listeners and their associated methods:mouseDownHandler()
andmouseUpHandler()
. - The
child
Sprite object is then passed to thedraw()
method, which draws the orange square. - The child is then placed on the display list by a call to the
addChild()
method. - The event listeners work as follows:
mouseDownHandler()
: when the user clicks the Sprite object, this method adds a mouseMove event listener, themouseMoveHandler()
method, which processes the mouse moves. Then thestartDrag()
method is called, which allows the Sprite object to be dragged.mouseUpHandler()
: when the mouse button is released, the mouseMove event listener is removed and thestopDrag()
method is called, which freezes the orange square in place.mouseMoveHandler
: as long as the left mouse button is being held down, this method instructs the player to continuously redraw the orange square.
Note: Each of the event listener methods declares a local sprite
variable, which is assigned the target
property of the event.
package { import flash.display.Sprite; import flash.events.*; public class SpriteExample extends Sprite { private var size:uint = 100; private var bgColor:uint = 0xFFCC00; public function SpriteExample() { var child:Sprite = new Sprite(); child.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); child.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); draw(child); addChild(child); } private function mouseDownHandler(event:MouseEvent):void { trace("mouseDownHandler"); var sprite:Sprite = Sprite(event.target); sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.startDrag(); } private function mouseUpHandler(event:MouseEvent):void { trace("mouseUpHandler"); var sprite:Sprite = Sprite(event.target); sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.stopDrag(); } private function mouseMoveHandler(event:MouseEvent):void { trace("mouseMoveHandler"); event.updateAfterEvent(); } private function draw(sprite:Sprite):void { sprite.graphics.beginFill(bgColor); sprite.graphics.drawRect(0, 0, size, size); sprite.graphics.endFill(); } } }
Thu Dec 4 2014, 05:50 PM -08:00