Paqueteflash.display
Clasepublic class DisplayObject
HerenciaDisplayObject Inheritance EventDispatcher Inheritance Object
Implementa IBitmapDrawable
Subclases AVM1Movie, Bitmap, InteractiveObject, MorphShape, Shape, StaticText, Video

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

La clase DisplayObject es la clase base de todos los objetos que pueden situarse en la lista de visualización. La lista de visualización administra todos los objetos mostrados en Flash Player. Utilice la clase DisplayObjectContainer para organizar los objetos de visualización en la lista de visualización. Los objetos DisplayObjectContainer pueden tener objetos de visualización secundarios, mientras que otros objetos de visualización, como los objetos Shape y TextField, son nodos "hoja" que sólo tienen elementos principales y del mismo nivel, pero no elementos secundarios.

La clase DisplayObject admite funcionalidad básica, como la posición x e y de un objeto, así como propiedades más avanzadas del objeto, como su matriz de transformación.

DisplayObject es una clase base abstracta; por consiguiente, no puede llamar a DisplayObject directamente. Al llamar a new DisplayObject() se emite una excepción ArgumentError.

Todos los objetos de visualización heredan de la clase DisplayObject.

La propia clase DisplayObject no incluye ninguna API para representar el contenido en pantalla. Por este motivo, si va a crear una subclase personalizada de la clase DisplayObject, deseará ampliar una de sus subclases que sí tengan API para representar contenido en pantalla, como las clases Shape, Sprite, Bitmap, SimpleButton, TextField o MovieClip.

Algunas propiedades que antes se utilizaban en las clases MovieClip, TextField y Button de ActionScript 1.0 y 2.0 (como _alpha, _height, _name, _width, _x, _y y otras) tienen equivalentes en la clase DisplayObject de ActionScript 3.0 que han cambiado de nombre de forma que ya no comienzan por el carácter de subrayado (_).

Para más información, consulte el capítulo "Programación de visualización" del manual Programación con ActionScript 3.0.

Ver los ejemplos

Véase también

flash.display.DisplayObjectContainer
Clases principales de visualización
Propiedades y métodos de la clase DisplayObject
Ejemplo: aplicación de una transformación de matriz a un objeto de visualización


Propiedades públicas
 PropiedadDefinido por
  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
  cacheAsBitmap : Boolean
Si se define como true, Flash Player deja en caché una representación interna de mapa de bits del objeto de visualización.
DisplayObject
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
  filters : Array
Matriz indexada que contiene todos los objetos de filtro actualmente asociados con el objeto de visualización.
DisplayObject
  height : Number
Indica la altura del objeto de visualización, expresada en píxeles.
DisplayObject
  loaderInfo : LoaderInfo
[read-only] 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
  mouseX : Number
[read-only] Indica la coordenada x de la posición del ratón en píxeles.
DisplayObject
  mouseY : Number
[read-only] Indica la coordenada y de la posición del ratón en píxeles.
DisplayObject
  name : String
Indica el nombre de instancia de DisplayObject.
DisplayObject
  opaqueBackground : Object
Especifica si el objeto de visualización es opaco con un determinado color de fondo.
DisplayObject
  parent : DisplayObjectContainer
[read-only] Indica el objeto DisplayObjectContainer que contiene este objeto de visualización.
DisplayObject
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
  root : DisplayObject
[read-only] 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
  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
  scrollRect : Rectangle
Los límites del rectángulo de desplazamiento del objeto de visualización.
DisplayObject
  stage : Stage
[read-only] El escenario del objeto de visualización.
DisplayObject
  transform : 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
  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
Métodos públicos
 MétodoDefinido por
 Inherited
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
 Inherited
Distribuye un evento en el flujo del evento.
EventDispatcher
  
getBounds(targetCoordinateSpace:DisplayObject):Rectangle
Devuelve un rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace.
DisplayObject
  
getRect(targetCoordinateSpace:DisplayObject):Rectangle
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
 Inherited
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento.
EventDispatcher
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
  
Evalúa el objeto de visualización para comprobar si se solapa o presenta un punto de intersección con el objeto de visualización obj.
DisplayObject
  
hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean
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
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
  
Convierte el objeto point de coordenadas del objeto de visualización (locales) en coordenadas del escenario (globales).
DisplayObject
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Elimina un detector del objeto EventDispatcher.
EventDispatcher
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
 Inherited
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
Eventos
 Evento Resumen Definido por
 Inherited Se distribuye cuando Flash Player queda seleccionado por el sistema operativo y pasa a estar activo.EventDispatcher
   Se distribuye cuando un objeto de visualización se añade a la lista de visualización.DisplayObject
   Se distribuye cuando un objeto de visualización se añade a la lista de visualización del escenario, bien directamente o a través de un subárbol que contiene el objeto de visualización.DisplayObject
 Inherited Se distribuye cuando Flash Player deja de estar seleccionado por el sistema operativo y pasa a estar inactivo.EventDispatcher
   Se distribuye cuando la cabeza lectora entra en un nuevo fotograma.DisplayObject
   Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización.DisplayObject
   Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización, bien directamente o a través de la eliminación de un subárbol que contiene el objeto de visualización.DisplayObject
   Se distribuye cuando la lista de visualización se va a actualizar y mostrar.DisplayObject
Información sobre propiedades
accessibilityPropertiespropiedad
accessibilityProperties:AccessibilityProperties  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Las opciones de accesibilidad actuales para este objeto de visualización. Si modifica la propiedad accessibilityProperties o alguno de los campos contenidos en accessibilityProperties, deberá llamar al método Accessibility.updateProperties() para que los cambios surtan efecto.

Nota: en el caso de un objeto creado en el entorno de edición de Flash, el valor de accessibilityProperties se rellena previamente con la información que haya introducido en el panel Accesibilidad para dicho objeto.


Implementación
    public function get accessibilityProperties():AccessibilityProperties
    public function set accessibilityProperties(value:AccessibilityProperties):void

Véase también


Ejemplo

En el ejemplo siguiente, se muestra cómo asociar un objeto AccessibilityProperties simple a una instancia de TextField:

import flash.text.TextField;
import flash.accessibility.AccessibilityProperties;
import flash.accessibility.Accessibility;
import flash.system.Capabilities;

var tf:TextField = new TextField();
tf.text = "hello";

var accessProps:AccessibilityProperties = new AccessibilityProperties();
accessProps.name = "Greeting";

tf.accessibilityProperties = accessProps;

if (Capabilities.hasAccessibility) {
    Accessibility.updateProperties();
}

trace(tf.accessibilityProperties.name); // Greeting
alphapropiedad 
alpha:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica el valor de transparencia alfa del objeto especificado. Los valores válidos son los comprendidos entre 0 (totalmente transparente) y 1 (totalmente opaco). El valor predeterminado es 1. Los objetos de visualización que tienen alpha configurado con el valor 0 están activos, aunque no sean visibles.


Implementación
    public function get alpha():Number
    public function set alpha(value:Number):void

Ejemplo

En el código siguiente, se establece la propiedad alpha de un elemento sprite en 50% cuando el ratón se desplaza sobre el elemento sprite:
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFF0000);
circle.graphics.drawCircle(40, 40, 40);
addChild(circle);

circle.addEventListener(MouseEvent.MOUSE_OVER, dimObject);
circle.addEventListener(MouseEvent.MOUSE_OUT, restoreObject);

function dimObject(event:MouseEvent):void {
    event.target.alpha = 0.5;
}

function restoreObject(event:MouseEvent):void {
    event.target.alpha = 1.0;
}
blendModepropiedad 
blendMode:String  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Un valor de la clase BlendMode que especifica el modo de mezcla que debe utilizarse. Un mapa de bits puede dibujarse internamente de dos formas. Si tiene un modo de mezcla o una máscara de recorte externa, el mapa de bits se dibuja añadiendo una figura cuadrada rellena con un mapa de bits al procesador de vectores. Si intenta establecer esta propiedad con un valor no válido, Flash Player establecerá el valor como BlendMode.NORMAL.

Flash Player aplica la propiedad blendMode a cada píxel del objeto de visualización. Cada píxel consta de los tres colores primarios (rojo, verde y azul). Cada color primario tiene un valor comprendido entre 0x00 y 0xFF. Flash Player compara cada color primario de un píxel del clip de película con el color correspondiente del píxel en el fondo. Por ejemplo, si blendMode se define como BlendMode.LIGHTEN, Flash Player compara el valor de rojo del objeto de visualización con el valor de rojo del fondo y utiliza el color más claro de los dos como valor del componente rojo para el color de visualización.

La tabla siguiente describe los valores de blendMode: La clase BlendMode define los valores de cadena que puede utilizar. Las ilustraciones de la tabla muestran los valores blendMode aplicados a un objeto de visualización circular (2) superpuesto a otro objeto de visualización (1).

Constante BlendModeIlustraciónDescripción
BlendMode.NORMALEl objeto de visualización aparece delante del fondo. Los valores de píxel del objeto de visualización anulan a los del fondo. Cuando el objeto de visualización sea transparente, el fondo será visible.
BlendMode.LAYERFuerza la creación de un grupo de transparencia para el objeto de visualización. Esto significa que el objeto de visualización se compone previamente en un búfer temporal antes de proseguir su procesamiento. Esto se hace automáticamente si el objeto de visualización cuenta con un caché previo a través de caché de mapa de bits o si el objeto de visualización es un contenedor de objeto de visualización con al menos un objeto secundario que tenga una configuración de blendMode distinta de BlendMode.NORMAL.
BlendMode.MULTIPLYMultiplica los valores de los colores primarios del objeto de visualización por los del color del fondo y luego normaliza el resultado dividiéndolo por 0xFF, lo que da como resultado colores más oscuros. Este valor se suele utilizar para efectos de sombras y profundidad.

Por ejemplo, si un color primario (como el rojo) de un píxel del objeto de visualización y el color correspondiente del píxel del fondo tienen ambos el valor 0x88, el resultado de la multiplicación será 0x4840. Al dividir por 0xFF el resultado es 0x48 para dicho color primario, consiguiéndose un tono más oscuro que el del objeto de visualización o el del fondo.

BlendMode.SCREENMultiplica el complemento (inverso) del color del objeto de visualización por el complemento del color de fondo, con lo que se obtiene un efecto de decoloración. Este valor se suele utilizar para los resaltados o para eliminar áreas de color negro del objeto de visualización.
BlendMode.LIGHTENSelecciona el color primario más claro del objeto de visualización y el color del fondo (los colores que tengan mayores valores). Este valor suele emplearse para el tipo de superposición.

Por ejemplo, si el objeto de visualización tiene un píxel con un valor RGB de 0xFFCC33, y el píxel del fondo tiene un valor RGB de 0xDDF800, el valor RGB resultante para el píxel mostrado es de 0xFFF833 (debido a que 0xFF > 0xDD, 0xCC > 0xF8 y 0x33 > 0x00 = 33).

BlendMode.DARKENSelecciona el color primario más oscuro del objeto de visualización y el color del fondo (los colores que tengan valores más bajos). Este valor suele emplearse para el tipo de superposición.

Por ejemplo, si el objeto de visualización tiene un píxel con un valor RGB de 0xFFCC33, y el píxel del fondo tiene un valor RGB de 0xDDF800, el valor RGB resultante para el píxel mostrado es de 0xDDCC00 (debido a que 0xFF > 0xDD, 0xCC < 0xF8 y 0x33 > 0x00 = 33).

BlendMode.DIFFERENCECompara los colores primarios del objeto de visualización con los del fondo y resta el valor más oscuro del valor más claro de los colores primarios. Este valor suele emplearse en los colores más vivos.

Por ejemplo, si el objeto de visualización tiene un píxel con un valor RGB de 0xFFCC33, y el píxel del fondo tiene un valor RGB de 0xDDF800, el valor RGB resultante para el píxel mostrado es de 0x222C33 (debido a que 0xFF - 0xDD = 0x22, 0xF8 - 0xCC = 0x2C y 0x33 - 0x00 = 0x33).

BlendMode.ADDAñade los valores de los colores primarios del objeto de visualización a los del fondo con un límite de 0xFF. Este valor suele emplearse para animar una disolución de aclarado entre dos objetos.

Por ejemplo, si el objeto de visualización tiene un píxel con un valor RGB de 0xAAA633, y el píxel del fondo tiene un valor RGB de 0xDD2200, el valor RGB resultante para el píxel mostrado es de 0xFFC833 (debido a que 0xAA + 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8 y 0x33 + 0x00 = 0x33).

BlendMode.SUBTRACTResta los valores de los colores primarios del objeto de visualización de los valores del color de fondo, aplicando un límite inferior de 0. Suele utilizarse para animar una disolución de oscurecimiento entre dos imágenes.

Por ejemplo, si el objeto de visualización tiene un píxel con un valor RGB de 0xAA2233, y el píxel del fondo tiene un valor RGB de 0xDDA600, el valor RGB resultante para el píxel mostrado es de 0x338400 (debido a que 0xDD - 0xAA = 0x33, 0xA6 - 0x22 = 0x84 y 0x00 - 0x33 < 0x00).

BlendMode.INVERTInvierte el fondo.
BlendMode.ALPHAAplica el valor alfa de cada píxel del objeto de visualización al fondo. Esto requiere que la configuración de blendMode del objeto de visualización principal se establezca como BlendMode.LAYER. Por ejemplo, en la ilustración, el objeto de visualización principal, un fondo blanco, tiene blendMode = BlendMode.LAYER.
BlendMode.ERASEBorra el fondo en función del valor alfa del objeto de visualización. Esto requiere que la configuración de blendMode del objeto de visualización principal se establezca como BlendMode.LAYER. Por ejemplo, en la ilustración, el objeto de visualización principal, un fondo blanco, tiene blendMode = BlendMode.LAYER.
BlendMode.OVERLAYAjusta el color de cada píxel en función de la oscuridad del fondo. Si el fondo es más claro que un 50% de gris, los colores del objeto de visualización y del fondo se tamizan, consiguiéndose un color más claro. Si el fondo es más oscuro que un 50% de gris, los colores del clip de película y del fondo se multiplican, consiguiéndose un color más oscuro. Este valor suele emplearse para conseguir efectos de sombreado.
BlendMode.HARDLIGHTAjusta el color de cada píxel en función de la oscuridad del objeto de visualización. Si el objeto de visualización es más claro que un 50% de gris, los colores del objeto de visualización y del fondo se tamizan, consiguiéndose un color más claro. Si el objeto de visualización es más oscuro que un 50% de gris, los colores del clip de película y del fondo se multiplican, consiguiéndose un color más oscuro. Este valor suele emplearse para conseguir efectos de sombreado.


Implementación
    public function get blendMode():String
    public function set blendMode(value:String):void

Véase también


Ejemplo

En el código siguiente, se crean dos objetos Sprite, un cuadrado y un círculo, y se establece el modo de mezcla del círculo (en el primer plano) como BlendMode.SUBTRACT cuando el puntero se desplaza sobre el circulo:
import flash.display.Sprite;
import flash.display.BlendMode;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF88CC);
square.graphics.drawRect(0, 0, 80, 80);
addChild(square);

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xAA0022);
circle.graphics.drawCircle(40, 40, 40);
addChild(circle);

circle.addEventListener(MouseEvent.MOUSE_OVER, dimObject);
circle.addEventListener(MouseEvent.MOUSE_OUT, restoreObject);

function dimObject(event:MouseEvent):void {
    event.target.blendMode = BlendMode.SUBTRACT;
}

function restoreObject(event:MouseEvent):void {
    event.target.blendMode = BlendMode.NORMAL;
}
cacheAsBitmappropiedad 
cacheAsBitmap:Boolean  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Si se define como true, Flash Player guarda en caché una representación interna de mapa de bits del objeto de visualización. Este caché puede aumentar el rendimiento de los objetos de visualización que tienen contenido vectorial complejo.

Todos los datos vectoriales de un objeto de visualización con un mapa de bits en caché se dibujan en el mapa de bits, no en la visualización principal. A continuación, el mapa de bits se copia en la visualización principal como píxeles no expandidos ni rotados, pero ajustados a los límites del píxel más cercano. Los píxeles se asignan de 1 a 1 con el objeto principal. Si los límites del mapa de bits cambian, el mapa de bits se vuelve a crear en lugar de expandirse.

No se crea ningún mapa de bits interno a menos que la propiedad cacheAsBitmap esté definida como true.

Después de definir la propiedad cacheAsBitmap como true, la representación no varía, pero el objeto de visualización realiza automáticamente el ajuste en píxeles. La velocidad de animación puede ser notablemente mayor según la complejidad del contenido vectorial.

La propiedad cacheAsBitmap se establece automáticamente en true siempre que se aplica un filtro a un objeto de visualización (cuando su matriz filter no está vacía) y, si un objeto de visualización tiene aplicado un filtro, cacheAsBitmap será true para ese objeto de visualización, aunque la propiedad se haya configurado como false. Si borra todos los filtros de un objeto de visualización, la configuración de cacheAsBitmap cambia a su valor anterior.

Un objeto de visualización no utiliza un mapa de bits aunque la propiedad cacheAsBitmap se haya definido como true, sino que se representa a partir de datos vectoriales en los siguientes casos:

La propiedad cacheAsBitmap es idónea con clips de película que tienen sobre todo contenido estático y no cambian de escala ni giran con frecuencia. Con estos clips, cacheAsBitmap puede aumentar el rendimiento cuando se convierte el clip de película (cuando se modifica la posición de x e y).


Implementación
    public function get cacheAsBitmap():Boolean
    public function set cacheAsBitmap(value:Boolean):void

Véase también


Ejemplo

En el ejemplo siguiente, se añade una sombra a una instancia de Shape. Después, averigua el valor de la propiedad cacheAsBitmap, que se define como true cuando se aplica el filtro:
import flash.display.Sprite;
import flash.filters.DropShadowFilter

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xAA0022);
circle.graphics.drawCircle(40, 40, 40);

addChild(circle);

trace(circle.cacheAsBitmap); // false

var filter:DropShadowFilter = new DropShadowFilter();
circle.filters = [filter];

trace(circle.cacheAsBitmap); // true
filterspropiedad 
filters:Array  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Matriz indexada que contiene todos los objetos de filtro actualmente asociados con el objeto de visualización. El paquete flash.filters contiene varias clases que definen filtros específicos que puede utilizar.

Los filtros pueden aplicarse en tiempo de diseño en la herramienta del entorno de edición de Flash o en tiempo de ejecución mediante código ActionScript. Para aplicar un filtro con ActionScript, debe realizar una copia temporal de toda la matriz filters, modificar la matriz temporal y volver a asignar el valor de la matriz temporal a la matriz filters. A la matriz filters no se le pueden añadir directamente objetos filter nuevos.

Para añadir un filtro con ActionScript, debe seguir estos pasos (suponiendo que el objeto de visualización de destino se denomina myDisplayObject):

  1. Cree un nuevo objeto de filtro con el método constructor de la clase de filtro que haya elegido.
  2. Asigne el valor de la matriz myDisplayObject.filters a una matriz temporal, denominada por ejemplo myFilters.
  3. Añada el nuevo objeto filter a la matriz temporal, myFilters.
  4. Asigne el valor de la matriz temporal a la matriz myDisplayObject.filters.

Si la matriz filters no está definida, no tendrá que utilizar una matriz temporal. En lugar de ello, podrá asignar directamente un literal de matriz que contenga uno o varios objetos filter que ha creado. El primer ejemplo de la sección Ejemplos añade un filtro de sombra mediante código que gestiona matrices filters tanto definidas como no definidas.

Para modificar un objeto de filtro existente, debe utilizar la técnica de modificación de una copia de la matriz filters:

  1. Asigne el valor de la matriz filters a una matriz temporal denominada, por ejemplo, myFilters.
  2. Modifique la propiedad utilizando la matriz temporal, myFilters. Por ejemplo, para establecer la propiedad quality del primer filtro de la matriz, podría utilizar el código siguiente: myFilters[0].quality = 1;
  3. Asigne el valor de la matriz temporal a la matriz filters.

Durante la carga, si un objeto de visualización tiene un filtro asociado, se marca para guardarlo en caché como mapa de bits transparente. Desde ese momento, siempre y cuando el objeto de visualización tenga una lista de filtros válida, el reproductor guardará el objeto de visualización en caché como mapa de bits. Este mapa de bits de origen se utiliza como imagen de origen para los efectos de filtro. Normalmente, un objeto de visualización tiene dos mapas de bits: uno con el objeto de visualización de origen sin filtrar (original) y otro con la imagen final una vez filtrada. La imagen final es la que se utiliza en representaciones. Mientras el objeto de visualización no cambie, la imagen final no necesita actualización.

El paquete flash.filters incluye clases para filtros. Por ejemplo, para crear un filtro DropShadow, deberá escribir:

     import flash.filters.DropShadowFilter
     var myFilter:DropShadowFilter = new DropShadowFilter (distance, angle, color, alpha, blurX, blurY, quality, inner, knockout)
     

Puede utilizar el operador is para determinar el tipo de filtro asignado a cada posición de índice en la matriz filter. Por ejemplo, el siguiente código muestra cómo determinar la posición del primer filtro de la matriz filters que es un filtro DropShadowFilter:

     import flash.text.TextField;
     import flash.filters.*;
     var tf:TextField = new TextField();
     var filter1:DropShadowFilter = new DropShadowFilter();
     var filter2:GradientGlowFilter = new GradientGlowFilter();
     tf.filters = [filter1, filter2];

     tf.text = "DropShadow index: " + filterPosition(tf, DropShadowFilter).toString(); // 0
     addChild(tf)

     function filterPosition(displayObject:DisplayObject, filterClass:Class):int {
         for (var i:uint = 0; i < displayObject.filters.length; i++) {
             if (displayObject.filters[i] is filterClass) {
                 return i;
             }
         }
         return -1;
     }
     

Nota: como no puede añadir directamente un nuevo objeto de filtro a la matriz DisplayObject.filters, el siguiente código no afecta de ninguna manera al objeto de visualización de destino, denominado myDisplayObject:

     myDisplayObject.filters.push(myDropShadow);
     


Implementación
    public function get filters():Array
    public function set filters(value:Array):void

Véase también

heightpropiedad 
height:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la altura del objeto de visualización, expresada en píxeles. La anchura se calcula según los límites del contenido del objeto de visualización. Cuando define la propiedad height, la propiedad scaleY se ajusta en consecuencia, tal y como se muestra en el siguiente código:

 var rect:Shape = new Shape();
 rect.graphics.beginFill(0xFF0000);
 rect.graphics.drawRect(0, 0, 100, 100);
 trace(rect.scaleY) // 1;
 rect.height = 200;
 trace(rect.scaleY) // 2;

Excepto en lo que respecta a los objetos TextField y Video, un objeto de visualización sin contenido (como un sprite vacío) tiene una altura de 0, incluso si intenta definir height en un valor diferente.


Implementación
    public function get height():Number
    public function set height(value:Number):void

Ejemplo

En el código siguiente, se crean dos objetos TextField y se ajusta la propiedad height de cada uno de ellos según la propiedad textHeight que tengan; asimismo, se coloca el segundo campo de texto estableciendo la propiedad y:
import flash.text.TextField;

var tf1:TextField = new TextField();
tf1.text = "Text Field 1";
tf1.border = true;
tf1.wordWrap = true;
tf1.width = 40;
tf1.height = tf1.textHeight + 5;
addChild(tf1);

var tf2:TextField = new TextField();
tf2.text = "Text Field 2";
tf2.border = true;
tf2.wordWrap = true;
tf2.width = 40;
tf2.height = tf2.textHeight + 5;
tf2.y = tf1.y + tf1.height + 5;
addChild(tf2);
loaderInfopropiedad 
loaderInfo:LoaderInfo  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Devuelve un objeto LoaderInfo que contiene información sobre la carga del archivo al que pertenece este objeto de visualización. La propiedad loaderInfo sólo se define para el objeto de visualización raíz de un archivo SWF o para un mapa de bits cargado (no para un mapa de bits dibujado con ActionScript). Para encontrar el objeto loaderInfo asociado al archivo SWF que contiene un objeto de visualización llamado myDisplayObject, utilice myDisplayObject.root.loaderInfo.

Un archivo SWF grande puede controlar su descarga llamando a this.root.loaderInfo.addEventListener(Event.COMPLETE, func).


Implementación
    public function get loaderInfo():LoaderInfo

Véase también


Ejemplo

En el siguiente código, se asume que this hace referencia a un objeto de visualización. El código devuelve la URL del archivo SWF raíz para el objeto de visualización:
trace(this.loaderInfo.url);
 
maskpropiedad 
mask:DisplayObject  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

El objeto de visualización que origina la llamada se enmascara mediante el objeto mask especificado. Para asegurarse de que el enmascaramiento funciona al aplicar escala al escenario, el objeto de visualización mask debe encontrarse en una parte activa de la lista de visualización. El objeto mask propiamente dicho no se dibuja. Establezca mask con el valor null para quitar la máscara.

Para permitir la aplicación de escala a un objeto de máscara, éste debe estar en la lista de visualización. Para poder arrastrar un objeto Sprite de máscara (llamando a su método startDrag()), éste debe encontrarse en la lista de visualización. Para llamar al método startDrag() para una sprite de máscara en un evento mouseDown distribuido por la sprite, establezca la propiedad buttonMode de la sprite con el valor true.


Implementación
    public function get mask():DisplayObject
    public function set mask(value:DisplayObject):void

Ejemplo

En el código siguiente, se crea un objeto TextField, así como un objeto Sprite que se establece como máscara para el objeto TextField. Cuando el usuario hace clic en el campo de texto, la función de detector de eventos drag() llama al método startDrag() del objeto Sprite de máscara:
import flash.text.TextField;
import flash.display.Sprite;
import flash.events.MouseEvent;

var tf:TextField = new TextField();
tf.text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, "
            + "sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. "
tf.selectable = false;
tf.wordWrap = true;
tf.width = 150;
addChild(tf);

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 40, 40);
addChild(square);

tf.mask = square;

tf.addEventListener(MouseEvent.MOUSE_DOWN, drag);
tf.addEventListener(MouseEvent.MOUSE_UP, noDrag);

function drag(event:MouseEvent):void {
    square.startDrag();
}
function noDrag(event:MouseEvent):void {
    square.stopDrag();
}
mouseXpropiedad 
mouseX:Number  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la coordenada x de la posición del ratón en píxeles.


Implementación
    public function get mouseX():Number

Ejemplo

En el código siguiente, se crea un objeto Sprite y se rastrean las posiciones mouseX y mouseY cuando el usuario hace clic en el elemento sprite:
import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 200, 200);
addChild(square);

square.addEventListener(MouseEvent.CLICK, traceCoordinates);

function traceCoordinates(event:MouseEvent):void {
    trace(square.mouseX, square.mouseY);
}
mouseYpropiedad 
mouseY:Number  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la coordenada y de la posición del ratón en píxeles.


Implementación
    public function get mouseY():Number

Ejemplo

En el código siguiente, se crea un objeto Sprite y se rastrean las posiciones mouseX y mouseY cuando el usuario hace clic en el elemento sprite:
import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 200, 200);
addChild(square);

square.addEventListener(MouseEvent.CLICK, traceCoordinates);

function traceCoordinates(event:MouseEvent):void {
    trace(square.mouseX, square.mouseY);
}
namepropiedad 
name:String  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica el nombre de instancia de DisplayObject. El objeto puede identificarse en la lista de elementos secundarios de su contenedor de objeto de visualización principal llamando al método getChildByName() del contenedor de objeto de visualización.


Implementación
    public function get name():String
    public function set name(value:String):void

Emite
IllegalOperationError — Si está intentando establecer esta propiedad en un objeto que se ha situado en la línea de tiempo de la herramienta de edición de Flash.

Ejemplo

En el código siguiente, se crean dos objetos Sprite y se rastrea la propiedad name asociada cuando el usuario hace clic en cualquiera de los dos objetos:
import flash.display.Sprite;
import flash.events.MouseEvent;

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFF0000);
circle1.graphics.drawCircle(40, 40, 40);
circle1.name = "circle1";
addChild(circle1);
circle1.addEventListener(MouseEvent.CLICK, traceName);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x0000FF);
circle2.graphics.drawCircle(140, 40, 40);
circle2.name = "circle2";
addChild(circle2);
circle2.addEventListener(MouseEvent.CLICK, traceName);

function traceName(event:MouseEvent):void {
    trace(event.target.name);
}
opaqueBackgroundpropiedad 
opaqueBackground:Object  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Especifica si el objeto de visualización es opaco con un determinado color de fondo. Un mapa de bits transparente contiene datos en el canal alfa y se dibuja de forma transparente. Un mapa de bits opaco no tiene canal alfa (por lo que se muestra más rápido que un mapa de bits transparente). Si el mapa de bits es opaco, deberá especificar el color de fondo.

Si se establece con un número como valor, la superficie será opaca (no transparente) y tendrá el color de fondo RGB que especifique el número. Si se establece con el valor null (el predeterminado), el objeto de visualización tendrá un fondo transparente.

La propiedad opaqueBackground está pensada principalmente para su uso con la propiedad cacheAsBitmap con el fin de optimizar la representación. En objetos de visualización en los que la propiedad cacheAsBitmap se ha establecido como true, la definición de opaqueBackground puede mejorar el rendimiento de la representación.

La región de fondo opaca no halla correspondencias al llamar al método hitTestPoint() con el parámetro shapeFlag definido en true.

La región de fondo opaca no responde a los eventos del ratón.


Implementación
    public function get opaqueBackground():Object
    public function set opaqueBackground(value:Object):void

Véase también


Ejemplo

En el ejemplo siguiente, se crea un objeto Shape con un círculo azul y se establece la propiedad opaqueBackground en rojo (0xFF0000):
import flash.display.Shape;

var circle:Shape = new Shape();
circle.graphics.beginFill(0x0000FF);
circle.graphics.drawCircle(40, 40, 40);
circle.opaqueBackground = 0xFF0000;
addChild(circle);
parentpropiedad 
parent:DisplayObjectContainer  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica el objeto DisplayObjectContainer que contiene este objeto de visualización. Utilice la propiedad parent para especificar una ruta de acceso relativa a los objetos de visualización que se encuentran por encima del objeto de visualización en la jerarquía de la lista de visualización.

Puede utilizar parent para subir múltiples niveles en la lista de visualización, como se muestra a continuación:

     this.parent.parent.alpha = 20;
     


Implementación
    public function get parent():DisplayObjectContainer

Emite
SecurityError — El objeto de visualización principal pertenece a un entorno limitado de seguridad al que no tiene acceso. Puede evitar esta situación haciendo que la película de nivel superior llame al método Security.allowDomain().

Ejemplo

En el código siguiente, se crean tres objetos Sprite y se muestra el modo en que la propiedad parent refleja la jerarquía de la lista de visualización:

import flash.display.Sprite;

var sprite1:Sprite = new Sprite();
sprite1.name = "sprite1";
var sprite2:Sprite = new Sprite();
sprite2.name = "sprite2";
var sprite3:Sprite = new Sprite();
sprite3.name = "sprite3";

sprite1.addChild(sprite2);
sprite2.addChild(sprite3);

trace(sprite2.parent.name); // sprite1
trace(sprite3.parent.name); // sprite2
trace(sprite3.parent.parent.name); // sprite1
rootpropiedad 
root:DisplayObject  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Para un objeto de visualización en un archivo SWF cargado, la propiedadroot 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. Para un objeto Bitmap que representa a un archivo de imagen cargado, la propiedad root es el objeto Bitmap en sí mismo. Para la instancia de la clase principal del primer archivo SWF cargado, la propiedad root es el objeto de visualización en sí mismo. La propiedad root del objeto Stage es el objeto Stage en sí mismo. La propiedad root se establece con el valor null para los objetos de visualización que no se hayan añadido a la lista de visualización, a no ser que se hayan añadido a un contenedor de objeto de visualización que esté fuera de la lista de visualización pero que sea un elemento secundario del objeto de visualización de nivel más alto en un archivo SWF cargado.

Por ejemplo, si crea un nuevo objeto Sprite llamando al método constructor Sprite(), su propiedad root se establece con el valor null hasta que lo añada a la lista de visualización (o a un contenedor de objeto de visualización que esté fuera de la lista de visualización pero que sea un elemento secundario del objeto de visualización de nivel más alto en un archivo SWF).

Para un archivo SWF cargado, aunque el objeto Loader utilizado para cargar el archivo puede no estar en la lista de visualización, el objeto de visualización de nivel más alto en el archivo SWF tiene configurada la propiedad root como sí mismo. El objeto Loader no tiene la propiedad root configurada hasta que se añade como elemento secundario de un objeto de visualización para el que se ha establecido la propiedad root.


Implementación
    public function get root():DisplayObject

Ejemplo

En el código siguiente, se muestra la diferencia entre la propiedad root del objeto Stage, de un objeto de visualización (un objeto Loader) que no está cargado (antes y después de que se haya añadido a la lista de visualización), y de un objeto cargado (un objeto Bitmap cargado):
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;

trace(stage.root); // [object Stage]

var ldr:Loader = new Loader();
trace(ldr.root); // null

addChild(ldr);
trace(ldr.root); // [object ...]

var urlReq:URLRequest = new URLRequest("example.jpg");
ldr.load(urlReq);

ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);

function loaded(event:Event):void {
    trace(ldr.content.root); // [object Bitmap]
}
rotationpropiedad 
rotation:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica el giro de la instancia de DisplayObject, expresado en grados, con respecto a su orientación original. Los valores comprendidos entre 0 y 180 representan un giro en el sentido de las agujas del reloj, mientras que los comprendidos entre 0 y -180 representan un giro en sentido contrario al de las agujas del reloj. Los valores situados fuera de este rango se suman o restan de 360 para obtener un valor que sí esté comprendido en el rango. Por ejemplo, la sentencia my_video.rotation = 450 es igual que my_video.rotation = 90.


Implementación
    public function get rotation():Number
    public function set rotation(value:Number):void

Ejemplo

En el código siguiente, se crea un objeto Sprite y se gira el objeto cuando el usuario hace clic en él:

import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(-50, -50, 100, 100);
square.x = 150;
square.y = 150;
addChild(square);

square.addEventListener(MouseEvent.CLICK, rotate);

function rotate(event:MouseEvent):void {
        square.rotation += 15;
}
scale9Gridpropiedad 
scale9Grid:Rectangle  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

La cuadrícula de escala aplicada actualmente. Si se establece como null, la escala de todo el objeto de visualización se aplicará normalmente cuando se aplique cualquier transformación de escala.

Cuando se define la propiedad scale9Grid, el objeto de visualización se divide en una cuadrícula con nueve regiones, basadas en el rectángulo scale9Grid, que define la región central de la cuadrícula. Las otras ocho regiones de la cuadrícula son las siguientes áreas:

Puede considerar las ocho regiones externas al centro (que define el rectángulo) como si fueran el marco de un cuadro con reglas especiales cuando se le aplica escala.

Cuando se establece la propiedad scale9Grid y se aplica escala a un objeto de visualización, se aplica escala a todo el texto y los degradados normalmente. Sin embargo, se aplican las reglas siguientes a otros tipos de objetos:

Si se gira un objeto de visualización, todo el escalado posterior será normal (y se omitirá la propiedad scale9Grid).

Por ejemplo, imagine el siguiente objeto de visualización y un rectángulo que se aplica como propiedad scale9Grid del objeto de visualización:

El objeto de visualización.

El rectángulo rojo muestra la cuadrícula scale9Grid.

Cuando el objeto de visualización cambia la escala o se expande, los objetos del interior del rectángulo cambian de escala con normalidad, pero los objetos del exterior cambian de escala según las normas de scale9Grid:

Cambio de escala al 75%:
Cambio de escala al 50%:
Cambio de escala al 25%:
Expandido horizontalmente un 150%:

Normalmente, scale9Grid se define cuando se configura un objeto de visualización que se va a utilizar como componente en el que las zonas del borde conservan la misma anchura si el componente cambia de escala.


Implementación
    public function get scale9Grid():Rectangle
    public function set scale9Grid(value:Rectangle):void

Emite
ArgumentError — Si pasa un argumento no válido al método.

Véase también


Ejemplo

En el código siguiente, se crea un objeto Shape con un rectángulo dibujado en su propiedad graphics. El rectángulo tiene una línea gruesa de 20 píxeles como borde y un degradado como relleno. El evento del temporizador llama a la función scale(), que define la escala del objeto Shape con el ajuste de las propiedades scaleX y scaleY. La aplicación de scale9Grid al objeto Shape evita que se aplique escala a la línea del borde del rectángulo, sólo se escala el relleno con degradado:

import flash.display.Shape;
import flash.display.GradientType;
import flash.display.SpreadMethod;
import flash.display.InterpolationMethod;
import flash.geom.Matrix;
import flash.geom.Rectangle;
import flash.utils.Timer;
import flash.events.TimerEvent;

var square:Shape = new Shape();
square.graphics.lineStyle(20, 0xFFCC00);
var gradientMatrix:Matrix = new Matrix();
gradientMatrix.createGradientBox(15, 15, Math.PI, 10, 10);
square.graphics.beginGradientFill(GradientType.RADIAL,
            [0xffff00, 0x0000ff],
            [100, 100],
            [0, 0xFF],
            gradientMatrix,
            SpreadMethod.REFLECT,
            InterpolationMethod.RGB,
            0.9);
square.graphics.drawRect(0, 0, 100, 100);

var grid:Rectangle = new Rectangle(20, 20, 60, 60);
square.scale9Grid = grid ;

addChild(square);

var tim:Timer = new Timer(100);
tim.start();
tim.addEventListener(TimerEvent.TIMER, scale);

var scaleFactor:Number = 1.01;

function scale(event:TimerEvent):void {
    square.scaleX *= scaleFactor;
    square.scaleY *= scaleFactor;

    if (square.scaleX > 2.0) {
        scaleFactor = 0.99;
    }
    if (square.scaleX < 1.0) {
        scaleFactor = 1.01;
    }
}
scaleXpropiedad 
scaleX:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la escala horizontal (percentage) del objeto aplicada desde el punto de registro. El punto de registro predeterminado es (0,0). 1.0 equivale al 100% de la escala.

La escala del sistema de coordenadas local afecta a la configuración de las propiedades x e y, que se definen en píxeles completos.


Implementación
    public function get scaleX():Number
    public function set scaleX(value:Number):void

Ejemplo

En el código siguiente, se crea un objeto Sprite con un rectángulo dibujado en su propiedad graphics. Cuando el usuario hace clic en el elemento sprite, la escala se ajusta en 10%:

import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);

square.addEventListener(MouseEvent.CLICK, scale);

function scale(event:MouseEvent):void {
    square.scaleX *= 1.10;
    square.scaleY *= 1.10;
}
scaleYpropiedad 
scaleY:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la escala vertical (percentage) de un objeto aplicada desde el punto de registro del objeto. El punto de registro predeterminado es (0,0). 1.0 equivale al 100% de la escala.

La escala del sistema de coordenadas local afecta a la configuración de las propiedades x e y, que se definen en píxeles completos.


Implementación
    public function get scaleY():Number
    public function set scaleY(value:Number):void

Ejemplo

En el código siguiente, se crea un objeto Sprite con un rectángulo dibujado en su propiedad graphics. Cuando el usuario hace clic en el elemento sprite, la escala se ajusta en 10%:

import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);

square.addEventListener(MouseEvent.CLICK, scale);

function scale(event:MouseEvent):void {
    square.scaleX *= 1.10;
    square.scaleY *= 1.10;
}
scrollRectpropiedad 
scrollRect:Rectangle  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Los límites del rectángulo de desplazamiento del objeto de visualización. El objeto de visualización se recorta al tamaño definido por el rectángulo y se desplaza dentro del rectángulo al cambiar las propiedades x e y del objeto scrollRect.

Las propiedades del objeto Rectangle scrollRect utilizan el espacio de coordenadas del objeto de visualización y cambian de escala al igual que el resto del objeto de visualización. Los límites de esquina de la ventana recortada del objeto de visualización en desplazamiento son el origen del objeto de visualización (0,0) y el punto definido por la anchura y la altura del rectángulo. Estos no están centrados en torno al origen, sino que utilizan el origen para definir la esquina superior izquierda del área. Un objeto de visualización desplazado siempre se desplaza en incrementos de píxeles completos.

Puede desplazar un objeto a izquierda y a derecha estableciendo la propiedad x del objeto Rectangle scrollRect. Puede desplazar un objeto hacia arriba y hacia abajo estableciendo la propiedad y del objeto Rectangle scrollRect. Si el objeto de visualización se gira 90° y lo desplaza a izquierda y derecha, el objeto de visualización se desplazará realmente hacia arriba y hacia abajo.


Implementación
    public function get scrollRect():Rectangle
    public function set scrollRect(value:Rectangle):void

Véase también


Ejemplo

En el ejemplo siguiente, se muestra cómo la propiedad scrollRect define el área de desplazamiento de un objeto de visualización, circle. Al hacer clic en el objeto circle, el método de controlador de eventos clicked() ajusta la propiedad y de la propiedad scrollRect del objeto circle, lo que produce el desplazamiento hacia abajo del objeto:

import flash.display.Sprite;
import flash.geom.Rectangle;
import flash.events.MouseEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(200, 200, 200);
circle.scrollRect = new Rectangle(0, 0, 200, 200);
addChild(circle);

circle.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void {
    var rect:Rectangle = event.target.scrollRect;
    rect.y -= 5;
    event.target.scrollRect = rect;
}
stagepropiedad 
stage:Stage  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

El escenario del objeto de visualización. Una aplicación Flash sólo tiene un objeto Stage. Por ejemplo, puede crear y cargar varios objetos de visualización en la lista de visualización y que la propiedad stage de cada objeto de visualización haga referencia al mismo objeto Stage (aunque el objeto de visualización pertenezca a un archivo SWF cargado).

Si un objeto de visualización no se añade a la lista de visualización, su propiedad stage se establece como null.


Implementación
    public function get stage():Stage

Ejemplo

En el código siguiente, se crean dos objetos TextField y se utiliza la propiedad width del objeto Stage para colocar los campos de texto:

import flash.text.TextField;

var tf1:TextField = new TextField();
tf1.text = "Text Field 1";
tf1.border = true;
tf1.x = 10;
addChild(tf1);
tf1.width = tf1.stage.stageWidth / 2 - 10;

var tf2:TextField = new TextField();
tf2.text = "Text Field 2";
tf2.border = true;
tf2.x = tf1.x + tf1.width + 5;
addChild(tf2);
tf2.width = tf2.stage.stageWidth / 2 - 10;

trace(stage.stageWidth);
transformpropiedad 
transform:Transform  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Objeto con propiedades pertenecientes a una matriz, transformación de color y límites de píxel de un objeto de visualización. Las propiedades específicas matrix, colorTransform y tres propiedades de sólo lectura (concatenatedMatrix, concatenatedColorTransform y pixelBounds) se describen en la entrada de la clase Transform.

Cada una de las propiedades del objeto transform es un objeto en sí. Este concepto es importante porque el único modo de definir nuevos valores para objetos matrix o colorTransform es crear un nuevo objeto y copiarlo en la propiedad transform.matrix o transform.colorTransform.

Por ejemplo, para aumentar el valor tx de la matriz de un objeto de visualización, debe realizar una copia del objeto de matriz completo y después copiar el objeto nuevo en la propiedad matrix del objeto transform:

 var myMatrix:Object = myDisplayObject.transform.matrix; myMatrix.tx += 10; myDisplayObject.transform.matrix = myMatrix; 

La propiedad tx no puede configurarse directamente. El código siguiente no tiene efecto en myDisplayObject:

 myDisplayObject.transform.matrix.tx += 10; 

También puede copiar un objeto transform completo y asignarlo a la propiedad transform de otro objeto de visualización. Por ejemplo, el código siguiente copia el objeto transform completo de myOldDisplayObj a myNewDisplayObj:

myNewDisplayObj.transform = myOldDisplayObj.transform;

El objeto de visualización resultante, myNewDisplayObj, tiene ahora los mismos valores de matriz, transformación de color y límites de píxel que el antiguo objeto de visualización, myOldDisplayObj.


Implementación
    public function get transform():Transform
    public function set transform(value:Transform):void

Véase también


Ejemplo

En el código siguiente, se configura un objeto Sprite square. Cuando el usuario hace clic en el elemento sprite, el método transformer() ajusta las propiedades colorTransform y matrix de la propiedad transform del elemento:

import flash.display.Sprite;
import flash.geom.ColorTransform;
import flash.geom.Matrix;
import flash.geom.Transform;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.lineStyle(20, 0xFF2200);
square.graphics.beginFill(0x0000DD);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);

var resultColorTransform:ColorTransform = new ColorTransform();
resultColorTransform.alphaMultiplier = 0.5;
resultColorTransform.redOffset = 155;
resultColorTransform.greenMultiplier = 0.5;

var skewMatrix:Matrix = new Matrix(1, 1, 0, 1);

square.addEventListener(MouseEvent.CLICK, transformer);

function transformer(event:MouseEvent):void {
    var transformation:Transform = square.transform;
    var tempMatrix:Matrix = square.transform.matrix;
    tempMatrix.concat(skewMatrix);
    square.transform.colorTransform = resultColorTransform;

    square.transform.matrix = tempMatrix;
}
visiblepropiedad 
visible:Boolean  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica si el objeto de visualización es visible. Los objetos de visualización que no son visibles se desactivan. Por ejemplo, si visible=false para una instancia de InteractiveObject, no es posible hacer clic en él.


Implementación
    public function get visible():Boolean
    public function set visible(value:Boolean):void

Ejemplo

En el código siguiente, se utiliza un objeto Timer para llamar a una función que cambia periódicamente la propiedad visible de un objeto de visualización, lo que da como resultado un efecto de parpadeo:

import flash.text.TextField;
import flash.utils.Timer;
import flash.events.TimerEvent;

var tf:TextField = new TextField();
tf.text = "Hello.";
addChild(tf);

var tim:Timer = new Timer(250);
tim.start();
tim.addEventListener(TimerEvent.TIMER, blinker);

function blinker(event:TimerEvent):void {
    tf.visible = !tf.visible;
}
widthpropiedad 
width:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la anchura del objeto de visualización, expresada en píxeles. La anchura se calcula según los límites del contenido del objeto de visualización. Cuando define la propiedad width, la propiedad scaleX se ajusta en consecuencia, tal y como se muestra en el siguiente código:

 var rect:Shape = new Shape();
 rect.graphics.beginFill(0xFF0000);
 rect.graphics.drawRect(0, 0, 100, 100);
 trace(rect.scaleX) // 1;
 rect.width = 200;
 trace(rect.scaleX) // 2;

Excepto en lo que respecta a los objetos TextField y Video, un objeto de visualización sin contenido (como un sprite vacío) tiene una anchura de 0, incluso si intenta definir width en un valor diferente.


Implementación
    public function get width():Number
    public function set width(value:Number):void

Ejemplo

En el código siguiente, se configura un objeto Sprite square. Cuando el usuario hace clic en el elemento sprite, el método widen() aumenta la propiedad width del elemento:

import flash.display.Sprite;
import flash.events.MouseEvent;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFF0000);
square.graphics.drawRect(0, 0, 100, 100);
addChild(square);

square.addEventListener(MouseEvent.CLICK, widen);

function widen(event:MouseEvent):void {
    square.width += 10;
}
xpropiedad 
x:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la coordenada x de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal. Si el objeto está dentro de un DisplayObjectContainer que incluye transformaciones, estará en el sistema de coordenadas local del DisplayObjectContainer en el que está contenido. Por consiguiente, en el caso de un DisplayObjectContainer con un giro de 90° en sentido contrario al de las agujas del reloj, los elementos secundarios de DisplayObjectContainer heredarán un sistema de coordenadas con un giro de 90° en sentido contrario al de las agujas del reloj. Las coordenadas del objeto hacen referencia a la posición del punto de registro.


Implementación
    public function get x():Number
    public function set x(value:Number):void

Ejemplo

En el código siguiente, se configura un objeto Sprite circle. Se utiliza un objeto Timer para cambiar la propiedad x del elemento sprite cada 50 milisegundos:

import flash.display.Sprite;
import flash.utils.Timer;
import flash.events.TimerEvent;

var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFF0000);
circle.graphics.drawCircle(100, 100, 100);
addChild(circle);

var tim:Timer = new Timer(50);
tim.start();
tim.addEventListener(TimerEvent.TIMER, bounce);

var xInc:Number = 2;

function bounce(event:TimerEvent):void {
    circle.x += xInc;
    if (circle.x > circle.width) {
        xInc = -2;
    }
    if (circle.x < 0) {
        xInc = 2;
    }
}
ypropiedad 
y:Number  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica la coordenada y de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal. Si el objeto está dentro de un DisplayObjectContainer que incluye transformaciones, estará en el sistema de coordenadas local del DisplayObjectContainer en el que está contenido. Por consiguiente, en el caso de un DisplayObjectContainer con un giro de 90° en sentido contrario al de las agujas del reloj, los elementos secundarios de DisplayObjectContainer heredarán un sistema de coordenadas con un giro de 90° en sentido contrario al de las agujas del reloj. Las coordenadas del objeto hacen referencia a la posición del punto de registro.


Implementación
    public function get y():Number
    public function set y(value:Number):void

Ejemplo

En el código siguiente, se crean dos objetos TextField y se ajusta la propiedad height de cada uno de ellos según la propiedad textHeight que tengan; asimismo, se coloca el segundo campo de texto estableciendo la propiedad y:
import flash.text.TextField;

var tf1:TextField = new TextField();
tf1.text = "Text Field 1";
tf1.border = true;
tf1.wordWrap = true;
tf1.width = 40;
tf1.height = tf1.textHeight + 5;
addChild(tf1);

var tf2:TextField = new TextField();
tf2.text = "Text Field 2";
tf2.border = true;
tf2.wordWrap = true;
tf2.width = 40;
tf2.height = tf2.textHeight + 5;
tf2.y = tf1.y + tf1.height + 5;
addChild(tf2);
Información sobre métodos
getBounds()método
public function getBounds(targetCoordinateSpace:DisplayObject):Rectangle

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Devuelve un rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace. Observe el siguiente código, en el que se muestra cómo el rectángulo devuelto puede variar en función del parámetro targetCoordinateSpace que pase al método:

     var container:Sprite = new Sprite();
     container.x = 100;
     container.y = 100;
     this.addChild(container);
     var contents:Shape = new Shape();
     contents.graphics.drawCircle(0,0,100);
     container.addChild(contents);
     trace(contents.getBounds(container));
      // (x=-100, y=-100, w=200, h=200)
     trace(contents.getBounds(this));
      // (x=0, y=0, w=200, h=200)
     

Nota: utilice localToGlobal() y globalToLocal() para convertir las coordenadas locales del objeto de visualización en coordenadas de visualización, o las coordenadas de visualización en coordenadas locales, respectivamente.

El método getBounds() es similar al método getRect(); sin embargo, el rectángulo devuelto por el método getBounds() incluye los trazos en las formas, mientras que el rectángulo devuelto por getRect() no los incluye. Para ver un ejemplo, consulte la descripción del método getRect().

Parámetros

targetCoordinateSpace:DisplayObject — El objeto de visualización que define el sistema de coordenadas que se va a utilizar.

Valor devuelto
Rectangle — El rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace.

Véase también

getRect()método 
public function getRect(targetCoordinateSpace:DisplayObject):Rectangle

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

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. Los valores devueltos por el método getRect() son iguales o menores que los devueltos por el método getBounds().

Nota:utilice los métodos localToGlobal() y globalToLocal() para convertir las coordenadas locales del objeto de visualización en coordenadas de escenario o las coordenadas de escenario en coordenadas locales, respectivamente.

Parámetros

targetCoordinateSpace:DisplayObject — El objeto de visualización que define el sistema de coordenadas que se va a utilizar.

Valor devuelto
Rectangle — El rectángulo que define el área del objeto de visualización relativo al sistema de coordenadas del objeto targetCoordinateSpace.

Véase también


Ejemplo

En el ejemplo siguiente, se muestra cómo el método getBounds() puede devolver un rectángulo de mayor tamaño que el del método getRect(), debido al área adicional que ocupan los trazos. En este caso, el objeto sprite triangle incluye trazos adicionales debido a los valores pasados como width y jointStyle del método lineStyle(). El resultado de trace() (en las últimas dos líneas) muestran las diferencias entre los rectángulos getRect() y getBounds():

import flash.display.CapsStyle;
import flash.display.JointStyle;
import flash.display.LineScaleMode;
import flash.display.Sprite;
import flash.geom.Rectangle;

var triangle:Sprite = new Sprite();
var color:uint = 0xFF0044;
var lineWidth:Number = 20;
var lineAlpha:Number = 1.0;
var pixelHinting:Boolean = true;
var scaleMode:String = LineScaleMode.NORMAL;
var caps:String = CapsStyle.SQUARE;
var joints:String = JointStyle.MITER;
triangle.graphics.lineStyle(lineWidth, color, lineAlpha, pixelHinting, scaleMode, caps, joints);

var triangleSide:Number = 100;
triangle.graphics.moveTo(0, 0);
triangle.graphics.lineTo(0, triangleSide);
triangle.graphics.lineTo(triangleSide, triangleSide);
triangle.graphics.lineTo(0, 0);

addChild(triangle);

trace(triangle.getBounds(this)); // (x=-10, y=-24.1, w=134.1, h=134.1)
trace(triangle.getRect(this));     // (x=0, y=0, w=100, h=100)
globalToLocal()método 
public function globalToLocal(point:Point):Point

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Convierte el objeto point de las coordenadas del escenario (globales) en las coordenadas del objeto de visualización (locales).

Para utilizar este método, cree primero una instancia de la clase Point. Los valores x e y que asigne representarán coordenadas globales, ya que se refieren al origen (0,0) del área de visualización principal. Seguidamente, pase la instancia de Point como parámetro al método globalToLocal(). El método devuelve un nuevo objeto Point con valores x e y relativos al origen del objeto de visualización, no al origen del escenario.

Parámetros

point:Point — Un objeto creado con la clase Point. El objeto Point especifica las coordenadas x e y como propiedades.

Valor devuelto
Point — Un objeto Point con coordenadas relativas al objeto de visualización.

Véase también


Ejemplo

En el código siguiente, se crea un objeto Shape y se muestra el resultado de la llamada al método hitTestPoint() utilizando distintos puntos como parámetros. El método globalToLocal() convierte el punto de las coordenadas del escenario en el espacio de coordenadas de la forma:

import flash.display.Shape;
import flash.geom.Point;

var circle:Shape = new Shape();
circle.graphics.beginFill(0x0000FF);
circle.graphics.drawCircle(40, 40, 40);
circle.x = 10;
addChild(circle);

var point1:Point = new Point(0, 0);
trace(circle.hitTestPoint(point1.x, point1.y, true)); // false
trace(circle.hitTestPoint(point1.x, point1.y, false)); // false
trace(circle.globalToLocal(point1)); // [x=-10, y=0]

var point2:Point = new Point(10, 1);
trace(circle.hitTestPoint(point2.x, point2.y, true)); // false
trace(circle.hitTestPoint(point2.x, point2.y, false)); // true
trace(circle.globalToLocal(point2)); // [x=0, y=1]

var point3:Point = new Point(30, 20);
trace(circle.hitTestPoint(point3.x, point3.y, true)); // true
trace(circle.hitTestPoint(point3.x, point3.y, false)); // true
trace(circle.globalToLocal(point3)); // [x=20, y=20]
hitTestObject()método 
public function hitTestObject(obj:DisplayObject):Boolean

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Evalúa el objeto de visualización para comprobar si se solapa o presenta un punto de intersección con el objeto de visualización obj.

Parámetros

obj:DisplayObject — El objeto de visualización con respecto al cual se va a realizar la comprobación.

Valor devuelto
Booleantrue si el objeto de visualización presenta un punto de intersección; false si no lo hay.

Ejemplo

En el código siguiente, se crean tres objetos Shape y se muestra el resultado de la llamada al método hitTestObject().

import flash.display.Shape;

var circle1:Shape = new Shape();
circle1.graphics.beginFill(0x0000FF);
circle1.graphics.drawCircle(40, 40, 40);
addChild(circle1);

var circle2:Shape = new Shape();
circle2.graphics.beginFill(0x00FF00);
circle2.graphics.drawCircle(40, 40, 40);
circle2.x = 50;
addChild(circle2);

var circle3:Shape = new Shape();
circle3.graphics.beginFill(0xFF0000);
circle3.graphics.drawCircle(40, 40, 40);
circle3.x = 100;
circle3.y = 67;
addChild(circle3);

trace(circle1.hitTestObject(circle2)); // true
trace(circle1.hitTestObject(circle3)); // false
trace(circle2.hitTestObject(circle3)); // true
hitTestPoint()método 
public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

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. Los parámetros x e y especifican un punto en el espacio de coordenadas del escenario, no el contenedor del objeto de visualización que contiene el objeto de visualización (a no ser que el contenedor del objeto de visualización sea el escenario).

Parámetros

x:Number — La coordenada x que se va a comprobar con respecto a este objeto.
 
y:Number — La coordenada y que se va a comprobar con respecto a este objeto.
 
shapeFlag:Boolean (default = false) — Indica si debe comprobarse con respecto a los píxeles del propio objeto (true) o con respecto al recuadro de delimitación (false).

Valor devuelto
Booleantrue si el objeto de visualización se solapa o presenta un punto de intersección con el punto especificado; false en caso contrario.

Véase también


Ejemplo

En el código siguiente, se crea un objeto Shape y se muestra el resultado de la llamada al método hitTestPoint() utilizando distintos puntos como parámetros. El método globalToLocal() convierte el punto de las coordenadas del escenario en el espacio de coordenadas de la forma:

import flash.display.Shape;
import flash.geom.Point;

var circle:Shape = new Shape();
circle.graphics.beginFill(0x0000FF);
circle.graphics.drawCircle(40, 40, 40);
circle.x = 10;
addChild(circle);

var point1:Point = new Point(0, 0);
trace(circle.hitTestPoint(point1.x, point1.y, true)); // false
trace(circle.hitTestPoint(point1.x, point1.y, false)); // false
trace(circle.globalToLocal(point1)); // [x=-10, y=0]

var point2:Point = new Point(10, 1);
trace(circle.hitTestPoint(point2.x, point2.y, true)); // false
trace(circle.hitTestPoint(point2.x, point2.y, false)); // true
trace(circle.globalToLocal(point2)); // [x=0, y=1]

var point3:Point = new Point(30, 20);
trace(circle.hitTestPoint(point3.x, point3.y, true)); // true
trace(circle.hitTestPoint(point3.x, point3.y, false)); // true
trace(circle.globalToLocal(point3)); // [x=20, y=20]
localToGlobal()método 
public function localToGlobal(point:Point):Point

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Convierte el objeto point de coordenadas del objeto de visualización (locales) en coordenadas del escenario (globales).

Este método permite convertir unos valores cualesquiera de las coordenadas x e y de valores relativos al origen (0,0) de un objeto de visualización determinado (coordenadas locales) a valores relativos al origen del escenario (coordenadas globales).

Para utilizar este método, cree primero una instancia de la clase Point. Los valores x e y que asigne representarán coordenadas locales, ya que se refieren al origen del objeto de visualización.

Seguidamente, pase la instancia de Point que ha creado como parámetro al método localToGlobal(). El método devuelve un nuevo objeto Point con valores x e y relativos al origen del escenario en lugar de al origen del objeto de visualización.

Parámetros

point:Point — Nombre o identificador de un punto creado con la clase Point que especifica las coordenadas x e y como propiedades.

Valor devuelto
Point — Un objeto Point con coordenadas relativas al escenario.

Véase también


Ejemplo

El código siguiente crea un objeto Sprite. Las propiedades mouseX y mouseY del elemento sprite se encuentran en el espacio de coordenadas del objeto de visualización. Este código utiliza el método localToGlobal() para traducir estas propiedades a coordenadas globales del escenario:

import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.geom.Point;

var square:Sprite = new Sprite();
square.graphics.beginFill(0xFFCC00);
square.graphics.drawRect(0, 0, 100, 100);
square.x = 100;
square.y = 200;

addChild(square);

square.addEventListener(MouseEvent.CLICK, traceCoordinates)

function traceCoordinates(event:MouseEvent):void {
    var clickPoint:Point = new Point(square.mouseX, square.mouseY);
    trace("display object coordinates:", clickPoint);
    trace("stage coordinates:", square.localToGlobal(clickPoint));
}
Información sobre eventos
added Evento
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.ADDED

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Se distribuye cuando un objeto de visualización se añade a la lista de visualización. Los siguientes métodos desencadenan este evento: DisplayObjectContainer.addChild(), DisplayObjectContainer.addChildAt().

Define el valor de la propiedad type de un objeto de evento added.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblestrue
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetLa instancia de DisplayObject que se va a añadir a la lista de visualización. El objeto target no siempre es el objeto de la lista de visualización que registró el detector de eventos. Utilice la propiedad currentTarget para acceder al objeto de la lista de visualización que está procesando el evento actualmente.

Véase también

addedToStage Evento  
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.ADDED_TO_STAGE

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9.0.28.0

Se distribuye cuando un objeto de visualización se añade a la lista de visualización del escenario, bien directamente o a través de un subárbol que contiene el objeto de visualización. Los siguientes métodos desencadenan este evento: DisplayObjectContainer.addChild(), DisplayObjectContainer.addChildAt().

Define el valor de la propiedad type de un objeto de evento addedToStage.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetLa instancia de DisplayObject que se añade a la lista de visualización del escenario, bien directamente o a través de un subárbol que contiene la instancia de DisplayObject. Si la instancia de DisplayObject se añade directamente, el evento added se genera antes de este evento.

Véase también

enterFrame Evento  
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.ENTER_FRAME

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Se distribuye cuando la cabeza lectora entra en un nuevo fotograma. Si la cabeza lectora está en movimiento, o si hay un solo fotograma, este evento se distribuye continuamente junto a la velocidad de fotogramas. Este evento se distribuye simultáneamente a todos los objetos de visualización que detectan este evento.

Define el valor de la propiedad type de un objeto de evento enterFrame.

Nota: este evento no recorre una "fase de captura" y se distribuye directamente en el destino, ya se encuentre este destino en la lista de visualización o no.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetCualquier instancia de DisplayObject con un detector registrado para el evento ENTER_FRAME.
removed Evento  
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.REMOVED

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización. Los métodos de la clase DisplayObjectContainer generan este evento: removeChild() y removeChildAt().

Los siguientes métodos de un objeto DisplayObjectContainer también generan este evento si un objeto debe eliminarse para hacer sitio para el nuevo objeto: addChild(), addChildAt() y setChildIndex().

Define el valor de la propiedad type de un objeto de evento removed.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblestrue
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetLa instancia de DisplayObject que se va a quitar de la lista de visualización. El objeto target no siempre es el objeto de la lista de visualización que registró el detector de eventos. Utilice la propiedad currentTarget para acceder al objeto de la lista de visualización que está procesando el evento actualmente.
removedFromStage Evento  
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.REMOVED_FROM_STAGE

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9.0.28.0

Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización, bien directamente o a través de la eliminación de un subárbol que contiene el objeto de visualización. Los métodos de la clase DisplayObjectContainer generan este evento: removeChild() y removeChildAt().

Los siguientes métodos de un objeto DisplayObjectContainer también generan este evento si un objeto debe eliminarse para hacer sitio para el nuevo objeto: addChild(), addChildAt() y setChildIndex().

Define el valor de la propiedad type de un objeto de evento removedFromStage.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no hay ningún comportamiento predeterminado que cancelar.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetLa instancia de DisplayObject que se elimina de la lista de visualización del escenario, bien directamente o a través de un subárbol que contiene la instancia de DisplayObject. Si la instancia de DisplayObject se elimina directamente, el evento removed se produce antes de este evento.
render Evento  
Tipo de objeto de evento: flash.events.Event
Event.type property = flash.events.Event.RENDER

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Se distribuye cuando la lista de visualización se va a actualizar y mostrar. Este evento proporciona la última oportunidad a los objetos detectores de este evento para que realicen cambios antes de que se muestre la lista de visualización. Flash Player muestra la lista de visualización como el comportamiento predeterminado. Debe llamar al método invalidate() del objeto Stage cada vez que desee que Flash Player envíe un evento render. Los eventos Render se distribuyen a un objeto sólo si hay confianza mutua entre éste y el objeto que originó la llamada a Stage.invalidate().

Nota: este evento no se distribuye si la ventana de Flash Player no se está mostrando. Este es el caso cuando la ventana de Flash Player está minimizada o tapada.

Define el valor de la propiedad type de un objeto de evento render.

Nota: este evento no recorre una "fase de captura" y se distribuye directamente en el destino, ya se encuentre este destino en la lista de visualización o no.

Este evento tiene las propiedades siguientes:

PropiedadValor
bubblesfalse
cancelablefalse; no es posible cancelar el comportamiento predeterminado.
currentTargetEl objeto que procesa de forma activa el objeto de evento con un detector de eventos.
targetCualquier instancia de DisplayObject con un detector registrado para el evento RENDER.
Ejemplos Cómo utilizar los ejemplos
DisplayObjectExample.as

En el ejemplo siguiente, se utiliza la clase DisplayObjectExample para dibujar un cuadrado naranja en la esquina del escenario y responder después a los eventos al mostrar información de texto de cada uno de ellos. Esta tarea se consigue realizando los pasos siguientes:
  1. Se declaran propiedades de clase para el color y el tamaño del cuadrado.
  2. El constructor llama al método draw(), que dibuja un cuadrado naranja en el escenario en las coordenadas predeterminadas de x = 0, y = 0.
  3. Se asocian al cuadrado los siguientes métodos de detector de eventos:
    • addedHandler() detecta eventos added, distribuidos cuando se añade el cuadrado a la lista de visualización.
    • enterFrameHandler() detecta eventos enterFrame, que no tienen ningún significado real en este ejemplo.
    • removedHandler() detecta eventos removed, distribuidos cuando el cuadrado se elimina de la lista de visualización, lo que ocurre cuando se hace clic en el cuadrado.
    • clickHandler() detecta eventos click, distribuidos cuando se hace clic en el cuadrado naranja.
    • renderHandler() detecta eventos render después de que se actualiza la lista de visualización.

package {
    import flash.display.Sprite;

    public class DisplayObjectExample extends Sprite {
        public function DisplayObjectExample() {
            var child:CustomDisplayObject = new CustomDisplayObject();
            addChild(child);
        }
    }
}

import flash.display.DisplayObject;
import flash.display.Sprite;
import flash.display.Stage;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.*;

class CustomDisplayObject extends Sprite {
    private var bgColor:uint = 0xFFCC00;
    private var size:uint    = 80;

    public function CustomDisplayObject() {
        draw();
        addEventListener(Event.ADDED, addedHandler);
        addEventListener(Event.ENTER_FRAME, enterFrameHandler);
        addEventListener(Event.REMOVED, removedHandler);
        addEventListener(MouseEvent.CLICK, clickHandler);
        addEventListener(Event.RENDER, renderHandler);
    }

    private function draw():void {
        graphics.beginFill(bgColor);
        graphics.drawRect(0, 0, size, size);
        graphics.endFill();
    }

    private function clickHandler(event:MouseEvent):void {
        trace("clickHandler: " + event);
        parent.removeChild(this);
    }

    private function addedHandler(event:Event):void {
        trace("addedHandler: " + event);
        stage.scaleMode = StageScaleMode.NO_SCALE;
        stage.align = StageAlign.TOP_LEFT;
        stage.addEventListener("resize", resizeHandler);
    }

    private function enterFrameHandler(event:Event):void {
        trace("enterFrameHandler: " + event);
        removeEventListener("enterFrame", enterFrameHandler);
    }

    private function removedHandler(event:Event):void {
        trace("removedHandler: " + event);
        stage.removeEventListener("resize", resizeHandler);
    }

    private function renderHandler(event:Event):void {
        trace("renderHandler: " + event);
    }

    private function resizeHandler(event:Event):void {
        trace("resizeHandler: " + event);
    }
}




 

Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios

Página actual: http://livedocs.adobe.com/flash/9.0_es/ActionScriptLangRefV3/flash/display/DisplayObject.html