Paquete | flash.display |
Clase | public class Sprite |
Herencia | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Subclases | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Un objeto Sprite es similar a un clip de película, pero carece de línea de tiempo. Sprite es una clase base adecuada para objetos que no requieren líneas de tiempo. Por ejemplo, Sprite sería una clase base lógica para componentes de interfaz de usuario (IU) que típicamente no utilizan línea de tiempo.
La clase Sprite es una novedad de ActionScript 3.0. Proporciona una alternativa a la funcionalidad de la clase MovieClip, que conserva toda la funcionalidad de versiones anteriores de ActionScript para ofrecer compatibilidad retroactiva.
Más ejemplos
Propiedad | Definido por | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
La implementación actual de accesibilidad (AccessibilityImplementation) para esta instancia de InteractiveObject. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
Las opciones de accesibilidad actuales para este objeto de visualización. | DisplayObject | ||
alpha : Number
Indica el valor de transparencia alfa del objeto especificado. | DisplayObject | ||
blendMode : String
Un valor de la clase BlendMode que especifica el modo de mezcla que debe utilizarse. | DisplayObject | ||
blendShader : Shader [solo escritura]
Define un sombreado para utilizarlo en la mezcla del primer plano y del fondo. | DisplayObject | ||
buttonMode : Boolean
Especifica el modo de botón de este elemento sprite. | Sprite | ||
cacheAsBitmap : Boolean
Si se define como true, los motores de ejecución de Flash dejan en caché una representación interna de mapa de bits del objeto de visualización. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Si su valor no es null, este objeto Matrix define cómo un objeto de visualización se procesa cuando cacheAsBitmap se define como true. | DisplayObject | ||
constructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada. | Object | ||
contextMenu : NativeMenu
Especifica el menú contextual asociado a este objeto. | InteractiveObject | ||
doubleClickEnabled : Boolean
Especifica si este objeto recibe eventos doubleClick. | InteractiveObject | ||
dropTarget : DisplayObject [solo lectura]
Especifica el objeto de visualización sobre el que se está arrastrando el elemento sprite o sobre el que se ha colocado el elemento sprite. | Sprite | ||
filters : Array
Conjunto indexado que contiene todos los objetos de filtro actualmente asociados con el objeto de visualización. | DisplayObject | ||
focusRect : Object
Especifica si este objeto muestra un rectángulo de selección. | InteractiveObject | ||
graphics : Graphics [solo lectura]
Especifica el objeto Graphics que pertenece a este elemento sprite, donde pueden ejecutarse comandos de dibujo vectorial. | Sprite | ||
height : Number
Indica la altura del objeto de visualización, expresada en píxeles. | DisplayObject | ||
hitArea : Sprite
Designa otro elemento sprite para que actúe como área activa de un elemento sprite. | Sprite | ||
loaderInfo : LoaderInfo [solo lectura]
Devuelve un objeto LoaderInfo que contiene información sobre la carga del archivo al que pertenece este objeto de visualización. | DisplayObject | ||
mask : DisplayObject
El objeto de visualización que origina la llamada se enmascara mediante el objeto mask especificado. | DisplayObject | ||
metaData : Object
Obtiene el objeto de metadatos de la instancia de DisplayObject si los metadatos se almacenaron con la instancia de este objeto DisplayObject en el archivo SWF a través de una etiqueta PlaceObject4. | DisplayObject | ||
mouseChildren : Boolean
Determina si los elementos secundarios del objeto están activados para acciones de ratón o de dispositivo de entrada de usuario. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Especifica si este objeto recibe la entrada del ratón, la entrada del usuario o mensajes. | InteractiveObject | ||
mouseX : Number [solo lectura]
Indica la coordenada x de la posición del ratón o del dispositivo de entrada del usuario, en píxeles. | DisplayObject | ||
mouseY : Number [solo lectura]
Indica la coordenada y de la posición del ratón o del dispositivo de entrada del usuario, en píxeles. | DisplayObject | ||
name : String
Indica el nombre de instancia de DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Especifica si un teclado virtual (teclado en pantalla) se debe mostrar cuando esta instancia de InteractiveObject recibe la selección. | InteractiveObject | ||
numChildren : int [solo lectura]
Devuelve el número de elementos secundarios de este objeto. | DisplayObjectContainer | ||
opaqueBackground : Object
Especifica si el objeto de visualización es opaco con un determinado color de fondo. | DisplayObject | ||
parent : DisplayObjectContainer [solo lectura]
Indica el objeto DisplayObjectContainer que contiene este objeto de visualización. | DisplayObject | ||
root : DisplayObject [solo lectura]
Para un objeto de visualización en un archivo SWF cargado, la propiedad root es el objeto de visualización de nivel más alto en la parte de la estructura de árbol de la lista de visualización representada por dicho archivo SWF. | DisplayObject | ||
rotation : Number
Indica el giro de la instancia de DisplayObject, expresado en grados, con respecto a su orientación original. | DisplayObject | ||
rotationX : Number
Indica la rotación del eje x de la instancia de DisplayObject, en grados, desde su orientación original relativa al contenedor principal 3D. | DisplayObject | ||
rotationY : Number
Indica la rotación del eje y de la instancia de DisplayObject, en grados, desde su orientación original relativa al contenedor principal 3D. | DisplayObject | ||
rotationZ : Number
Indica la rotación del eje z de la instancia de DisplayObject, en grados, desde su orientación original relativa al contenedor principal 3D. | DisplayObject | ||
scale9Grid : Rectangle
La cuadrícula de escala aplicada actualmente. | DisplayObject | ||
scaleX : Number
Indica la escala horizontal (percentage) del objeto aplicada desde el punto de registro. | DisplayObject | ||
scaleY : Number
Indica la escala vertical (percentage) de un objeto aplicada desde el punto de registro del objeto. | DisplayObject | ||
scaleZ : Number
Indica la escala de profundidad (porcentaje) de un objeto aplicada desde el punto de registro del objeto. | DisplayObject | ||
scrollRect : Rectangle
Los límites del rectángulo de desplazamiento del objeto de visualización. | DisplayObject | ||
softKeyboard : String
Controla la apariencia del teclado virtual. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Define el área que debe permanecer en pantalla cuando se muestra un teclado virtual (no disponible en iOS). | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
Controla el sonido dentro de este elemento sprite. | Sprite | ||
stage : Stage [solo lectura]
El escenario del objeto de visualización. | DisplayObject | ||
tabChildren : Boolean
Determina si los elementos secundarios del objeto están habilitados para tabulación. | DisplayObjectContainer | ||
tabEnabled : Boolean
Especifica si este objeto está en el orden de tabulación. | InteractiveObject | ||
tabIndex : int
Especifica el orden de tabulación de los objetos de un archivo SWF. | InteractiveObject | ||
textSnapshot : flash.text:TextSnapshot [solo lectura]
Devuelve un objeto TextSnapshot para esta instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
transform : flash.geom:Transform
Objeto con propiedades pertenecientes a una matriz, transformación de color y límites de píxel de un objeto de visualización. | DisplayObject | ||
useHandCursor : Boolean
Valor booleano que indica si debe aparecer la mano que señala (cursor de mano) cuando el puntero pasa por encima de un elemento sprite en el que la propiedad buttonMode se ha definido con el valor true. | Sprite | ||
visible : Boolean
Indica si el objeto de visualización es visible. | DisplayObject | ||
width : Number
Indica la anchura del objeto de visualización, expresada en píxeles. | DisplayObject | ||
x : Number
Indica la coordenada x de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal. | DisplayObject | ||
y : Number
Indica la coordenada y de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal. | DisplayObject | ||
z : Number
Indica la posición de la coordenada z en el eje z de la instancia de DisplayObject relativa al contenedor principal 3D. | DisplayObject |
Método | Definido por | ||
---|---|---|---|
Sprite()
Crea una nueva instancia de Sprite. | Sprite | ||
Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento. | EventDispatcher | ||
Indica si las restricciones de seguridad provocarían la omisión de objetos de visualización de la lista devuelta al llamar al método DisplayObjectContainer.getObjectsUnderPoint() con el punto point especificado. | DisplayObjectContainer | ||
Determina si el objeto de visualización especificado es un elemento secundario de la instancia de DisplayObjectContainer o la propia instancia. | DisplayObjectContainer | ||
Distribuye un evento en el flujo del evento. | EventDispatcher | ||
Devuelve un rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace. | DisplayObject | ||
Devuelve la instancia del objeto de visualización secundario que sale del índice especificado. | DisplayObjectContainer | ||
Devuelve el objeto de visualización secundario que sale con el nombre especificado. | DisplayObjectContainer | ||
Devuelve la posición de índice de una instancia secundaria de DisplayObject. | DisplayObjectContainer | ||
Devuelve un conjunto de objetos que quedan bajo el punto especificado y son elementos secundarios (o terciarios, etc.) de esta instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
Devuelve un rectángulo que define el límite del objeto de visualización, basado en el sistema de coordenadas definido por el parámetro targetCoordinateSpace, excluyendo los trazos en las formas. | DisplayObject | ||
Convierte el objeto point de las coordenadas del escenario (globales) en las coordenadas del objeto de visualización (locales). | DisplayObject | ||
Convierte un punto bidimensional de las coordenadas (globales) del escenario en coordenadas (locales) de un objeto tridimensional. | DisplayObject | ||
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento. | EventDispatcher | ||
Indica si un objeto tiene definida una propiedad especificada. | Object | ||
Calcula el cuadro delimitador del objeto de visualización para ver si se solapa o corta con el cuadro delimitador del objeto de visualización obj. | DisplayObject | ||
Evalúa el objeto de visualización para comprobar si se solapa o presenta un punto de intersección con el punto especificado por los parámetros x e y. | DisplayObject | ||
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro. | Object | ||
Convierte un punto tridimensional de las coordenadas (locales) del objeto de visualización tridimensional en un punto bidimensional en las coordenadas (globales) del escenario. | DisplayObject | ||
Convierte el objeto point de coordenadas del objeto de visualización (locales) en coordenadas del escenario (globales). | DisplayObject | ||
Indica si existe la propiedad especificada y si es enumerable. | Object | ||
Elimina la instancia child de DisplayObject especificada de la lista de elementos secundarios de la instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
Elimina una instancia de DisplayObject secundaria de la posición de índice especificada en la lista de elementos secundarios de DisplayObjectContainer. | DisplayObjectContainer | ||
Elimina todas las instancias child de DisplayObject especificadas de la lista de elementos secundarios de la instancia de DisplayObjectContainer. | DisplayObjectContainer | ||
Elimina un detector del objeto EventDispatcher. | EventDispatcher | ||
Muestra un teclado virtual. | InteractiveObject | ||
Cambia la posición de un elemento secundario existente en el contendor de objeto de visualización. | DisplayObjectContainer | ||
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle. | Object | ||
Permite al usuario arrastrar el elemento sprite especificado. | Sprite | ||
Permite al usuario arrastrar el elemento sprite especificado en un dispositivo táctil. | Sprite | ||
Se detiene gradualmente la ejecución de línea de tiempo de todos los objetos MovieClip con raíz en este objeto. | DisplayObjectContainer | ||
Finaliza el método startDrag(). | Sprite | ||
Finaliza el método startTouchDrag() para su uso con dispositivos táctiles. | Sprite | ||
Intercambia el orden z (de delante a atrás) de los dos objetos secundarios especificados. | DisplayObjectContainer | ||
Intercambia el orden z (de delante a atrás) de los objetos secundarios situados en las posiciones de índice especificadas en la lista de elementos secundarios. | DisplayObjectContainer | ||
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional. | Object | ||
Devuelve la representación de cadena del objeto especificado. | Object | ||
Devuelve el valor simple del objeto especificado. | Object | ||
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto. | EventDispatcher |
buttonMode | propiedad |
buttonMode:Boolean
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica el modo de botón de este elemento sprite. Si el valor es true
, este elemento sprite se comporta como un botón, lo que significa que activa la visualización del puntero de mano cuando el cursor pasa por encima del elemento sprite y puede recibir un evento click
si se presionan las teclas Intro o espacio cuando está seleccionado el elemento sprite. Puede suprimir la visualización del cursor de mano al definir la propiedad useHandCursor
con el valor false
, en cuyo caso se muestra el puntero.
Aunque es preferible utilizar la clase SimpleButton para crear botones, puede utilizar la propiedad buttonMode
con el fin de dar a un elemento sprite alguna funcionalidad de botón. Para incluir un elemento sprite en el orden de tabulación, defina la propiedad tabEnabled
(heredada de la clase InteractiveObject y con el valor predeterminado false
) con el valor true
. Además, decida si desea que los elementos secundarios del elemento sprite estén habilitados para la entrada del usuario. La mayoría de los botones no activan la interactividad de entrada del usuario para sus objetos secundarios, ya que ello genera confusión en el flujo de eventos. Para desactivar la interactividad de la entrada del usuario para todos los objetos secundarios, debe definir la propiedad mouseChildren
(heredada de la clase DisplayObjectContainer) con el valor false
.
Si utiliza la propiedad buttonMode
con la clase MovieClip (que es una subclase de la clase Sprite), el botón puede tener alguna funcionalidad añadida. Si incluye fotogramas etiquetados con _up, _over y _down, Flash Player proporcionará cambios de estado automáticos (funcionalidad similar a la que se ofrecía en versiones anteriores de ActionScript para clips de película utilizados como botones). Estos cambios de estado automáticos no están disponibles para elementos sprite, que carecen de línea de tiempo y, por consiguiente, no tienen fotogramas que etiquetar.
Implementación
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
buttonMode
como true
para uno y como false
para el otro. Al compilar y ejecutar la aplicación, ambos elementos sprites responden a los eventos del ratón, pero sólo el que tiene buttonMode
definido como true
utiliza el cursor de mano y se incluye en el orden de tabulación:
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 | propiedad |
dropTarget:DisplayObject
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica el objeto de visualización sobre el que se está arrastrando el elemento sprite o sobre el que se ha colocado el elemento sprite.
Implementación
public function get dropTarget():DisplayObject
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
circle
y dos objetos sprite target
. Se llama al método startDrag()
en el elemento sprite circle
cuando el usuario coloca el cursor sobre el elemento sprite y presiona el botón del ratón; y se llama al método stopDrag()
cuando el usuario suelta el botón del ratón. De este modo, el usuario puede arrastrar el elemento sprite. Al soltar el botón del ratón, se llama al método mouseRelease()
que, a su vez, rastrea la propiedad name
del objeto dropTarget
, aquél donde el usuario arrastró el elemento sprite circle
:
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 | propiedad |
graphics:Graphics
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica el objeto Graphics que pertenece a este elemento sprite, donde pueden ejecutarse comandos de dibujo vectorial.
Implementación
public function get graphics():Graphics
Ejemplo ( Cómo utilizar este ejemplo )
circle
y se emplea su propiedad graphics
para dibujar un círculo con un relleno (0xFFCC00) amarillo:
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
hitArea | propiedad |
hitArea:Sprite
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Designa otro elemento sprite para que actúe como área activa de un elemento sprite. Si la propiedad hitArea
no existe o tiene el valor null
o undefined
, se utilizará el propio elemento sprite como área activa. El valor de la propiedad hitArea
puede ser una referencia a un objeto Sprite.
Puede cambiar la propiedad hitArea
en cualquier momento; el elemento sprite modificado adoptará de inmediato el nuevo comportamiento de área activa. No es preciso que el elemento sprite designado como área activa sea visible; se detectará la condición de "activa" de su forma gráfica aunque no sea visible.
Nota: debe establecer con el valor false
la propiedad mouseEnabled
del elemento sprite designado como área activa. En caso contrario, el botón sprite podría no funcionar, ya que el elemento sprite designado como área activa recibe eventos de entrada del usuario en lugar del botón sprite.
Implementación
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Ejemplo ( Cómo utilizar este ejemplo )
circle
y otro square
. El objeto sprite square
es la propiedad hitArea
para el objeto sprite circle
. De este modo, cuando el usuario hace clic en el objeto sprite square
, circle
distribuye un evento click
:
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 | propiedad |
soundTransform:flash.media:SoundTransform
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Controla el sonido dentro de este elemento sprite.
Nota: esta propiedad no afecta a contenido HTML de un objeto HTMLControl (en Adobe AIR).
Implementación
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
container
Loader a la lista de elementos secundarios. El objeto Loader carga un archivo SWF. Cuando el usuario hace clic en el vínculo del campo de texto tf
true
, el método mute()
establece la propiedad volume
de la propiedad soundTransform
del objeto sprite container
:
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 | propiedad |
useHandCursor:Boolean
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0 |
Valor booleano que indica si debe aparecer la mano que señala (cursor de mano) cuando el ratón pasa por encima de un elemento sprite en el que la propiedad buttonMode
se ha definido con el valor true
. El valor predeterminado de la propiedad useHandCursor
es true
. Si useHandCursor
se establece con el valor true
, la mano que señala empleada para los botones se mostrará cuando el puntero pase por encima de un elemento sprite de botón. Si useHandCursor
se establece con el valor false
, se utilizará el puntero de flecha.
Puede cambiar la propiedad useHandCursor
en cualquier momento; el elemento sprite modificado adoptará de inmediato el nuevo aspecto de cursor.
Nota: En Flex o Flash Builder, si la clase sprite tiene elementos secundarios, establezca la propiedad mouseChildren
como false
. Por ejemplo, si quiere que aparezca el cursor de mano sobre un control <mx:Label> de Flex, establezca las propiedades useHandCursor
y buttonMode
como to true
, y la propiedad mouseChildren
como false
.
Implementación
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
buttonMode
como true
para ambos, sin embargo, la propiedad useHandCursor
se define como true
para uno y como false
para el otro. Al compilar y ejecutar la aplicación, ambos elementos sprites responden como botones (y se incluyen en el orden de tabulación), pero sólo el que tiene useHandCursor
definido como true
utiliza el cursor de mano:
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 | () | Información sobre |
public function Sprite()
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Crea una nueva instancia de Sprite. Tras crear la instancia de Sprite, llame al método DisplayObjectContainer.addChild()
o DisplayObjectContainer.addChildAt()
para añadir la instancia Sprite a una instancia DisplayObjectContainer principal.
startDrag | () | método |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Permite al usuario arrastrar el elemento sprite especificado. El elemento sprite se puede seguir arrastrando hasta que se detenga explícitamente mediante una llamada a Sprite.stopDrag()
o hasta que otro elemento sprite pueda arrastrarse. Sólo es posible arrastrar elementos sprite de uno en uno.
Los objetos de visualización tridimensionales siguen al puntero y Sprite.startDrag()
mueve el objeto dentro del plano tridimensional definido por el objeto de visualización. Si el objeto de visualización es bidimensional y un elemento secundario de un objeto tridimensional, el objeto en dos dimensiones se mueve dentro del plano tridimensional definido por el objeto principal en tres dimensiones.
Parámetros
lockCenter:Boolean (default = false ) — Especifica si el elemento sprite arrastrable está bloqueado en el centro de la posición del puntero (true ) o en el punto donde el usuario hizo clic por primera vez en el elemento sprite (false ).
| |
bounds:Rectangle (default = null ) — Valor relativo a las coordenadas del elemento principal del elemento Sprite, que especifican un rectángulo limitado para el elemento Sprite.
|
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
circle
y dos objetos sprite target
. Se llama al método startDrag()
en el elemento sprite circle
cuando el usuario coloca el cursor sobre el elemento sprite y presiona el botón del ratón; y se llama al método stopDrag()
cuando el usuario suelta el botón del ratón. De este modo, el usuario puede arrastrar el elemento sprite. Al soltar el botón del ratón, se llama al método mouseRelease()
que, a su vez, rastrea la propiedad name
del objeto dropTarget
, aquél donde el usuario arrastró el elemento sprite circle
:
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 | () | método |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Permite al usuario arrastrar el elemento sprite especificado en un dispositivo táctil. El elemento sprite se puede seguir arrastrando hasta que se detenga explícitamente mediante una llamada a Sprite.stopTouchDrag()
o hasta que otro elemento sprite pueda arrastrarse. Sólo es posible arrastrar elementos sprite de uno en uno.
Los objetos de visualización tridimensionales siguen al puntero y Sprite.stopTouchDrag()
mueve el objeto dentro del plano tridimensional definido por el objeto de visualización. Si el objeto de visualización es bidimensional y un elemento secundario de un objeto tridimensional, el objeto en dos dimensiones se mueve dentro del plano tridimensional definido por el objeto principal en tres dimensiones.
Parámetros
touchPointID:int — Un entero que se asigna al punto de toque.
| |
lockCenter:Boolean (default = false ) — Especifica si el elemento sprite arrastrable está bloqueado en el centro de la posición del puntero (true ) o en el punto donde el usuario hizo clic por primera vez en el elemento sprite (false ).
| |
bounds:Rectangle (default = null ) — Valor relativo a las coordenadas del elemento principal del elemento Sprite, que especifican un rectángulo limitado para el elemento Sprite.
|
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
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 | () | método |
public function stopDrag():void
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Finaliza el método startDrag()
. Un elemento sprite que se ha convertido en arrastrable con el método startDrag()
podrá arrastrarse hasta que se añada un método stopDrag()
o hasta que se pueda arrastrar otro elemento sprite. Sólo es posible arrastrar elementos sprite de uno en uno.
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
circle
y dos objetos sprite target
. Se llama al método startDrag()
en el elemento sprite circle
cuando el usuario coloca el cursor sobre el elemento sprite y presiona el botón del ratón; y se llama al método stopDrag()
cuando el usuario suelta el botón del ratón. De este modo, el usuario puede arrastrar el elemento sprite. Al soltar el botón del ratón, se llama al método mouseRelease()
que, a su vez, rastrea la propiedad name
del objeto dropTarget
, aquél donde el usuario arrastró el elemento sprite circle
:
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 | () | método |
public function stopTouchDrag(touchPointID:int):void
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Finaliza el método startTouchDrag()
para su uso con dispositivos táctiles. Un elemento sprite que se ha convertido en arrastrable con el método Sprite.stopTouchDrag()
podrá arrastrarse hasta que se añada un método stopTouchDrag()
o hasta que se pueda arrastrar otro elemento sprite. Sólo es posible arrastrar elementos sprite de uno en uno.
Parámetros
touchPointID:int — El entero asignado a punto de toque del método startTouchDrag .
|
Elementos de API relacionados
Ejemplo ( Cómo utilizar este ejemplo )
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 la propiedad
size
(100 x 100 píxeles) y el color de fondo (naranja) para utilizarlos después al dibujar el cuadrado. - A continuación, el constructor crea un nuevo objeto Sprite
child
y lo emplea para añadir dos detectores de eventos y los métodos asociados:mouseDownHandler()
ymouseUpHandler()
. - El objeto Sprite
child
se transfiere después al métododraw()
, que dibuja el cuadrado naranja. - El elemento secundario se coloca en la lista de visualización mediante una llamada al método
addChild()
. - Los detectores de eventos funcionan del modo siguiente:
mouseDownHandler()
: cuando el usuario hace clic en el objeto Sprite, este método añade un detector de eventos mouseMove, el métodomouseMoveHandler()
, que procesa los movimientos del ratón. Posteriormente se llama al métodostartDrag()
, que permite que se arrastre el objeto Sprite.mouseUpHandler()
: cuando se suelta el botón del ratón, se elimina el detector de eventos mouseMove y se llama al métodostopDrag()
que fija el cuadrado naranja en su lugar correspondiente.mouseMoveHandler
: siempre que el botón izquierdo del ratón esté pulsado, este método da instrucciones al reproductor para que vuelva a dibujar continuamente el cuadrado naranja.
Nota: cada uno de los métodos de detectores de eventos declara una variable local sprite
local, que se asigna como propiedad target
del evento.
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(); } } }
Tue Jun 12 2018, 02:12 PM Z