Paqueteflash.display
Clasepublic class DisplayObjectContainer
HerenciaDisplayObjectContainer Inheritance InteractiveObject Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
Subclases Loader, Sprite, Stage

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

La clase DisplayObjectContainer es la clase base de todos los objetos que pueden actuar como contenedores de objetos de visualización 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. Cada objeto DisplayObjectContainer tiene su propia lista de elementos secundarios para organizar el orden z de los objetos. El orden z es el orden de delante hacia atrás que determina qué objeto se dibuja delante, cuál se dibuja detrás, etc.

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.

La clase DisplayObjectContainer es la clase base abstracta para todos los objetos que contienen objetos secundarios. No es posible crear instancias directamente; al llamar al constructor new DisplayObjectContainer(), el constructor emite una excepción ArgumentError.

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.DisplayObject
Clases principales de visualización
Utilización de contenedores de objetos de visualización


Propiedades públicas
 PropiedadDefinido por
 InheritedaccessibilityProperties : AccessibilityProperties
Las opciones de accesibilidad actuales para este objeto de visualización.
DisplayObject
 Inheritedalpha : Number
Indica el valor de transparencia alfa del objeto especificado.
DisplayObject
 InheritedblendMode : String
Un valor de la clase BlendMode que especifica el modo de mezcla que debe utilizarse.
DisplayObject
 InheritedcacheAsBitmap : 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
 InheritedcontextMenu : ContextMenu
Especifica el menú contextual asociado a este objeto.
InteractiveObject
 InheriteddoubleClickEnabled : Boolean
Especifica si este objeto recibe eventos doubleClick.
InteractiveObject
 Inheritedfilters : Array
Matriz indexada que contiene todos los objetos de filtro actualmente asociados con el objeto de visualización.
DisplayObject
 InheritedfocusRect : Object
Especifica si este objeto muestra un rectángulo de selección.
InteractiveObject
 Inheritedheight : Number
Indica la altura del objeto de visualización, expresada en píxeles.
DisplayObject
 InheritedloaderInfo : 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
 Inheritedmask : DisplayObject
El objeto de visualización que origina la llamada se enmascara mediante el objeto mask especificado.
DisplayObject
  mouseChildren : Boolean
Determina si los elementos secundarios del objeto están habilitados para ratón.
DisplayObjectContainer
 InheritedmouseEnabled : Boolean
Especifica si este objeto recibe mensajes de ratón.
InteractiveObject
 InheritedmouseX : Number
[read-only] Indica la coordenada x de la posición del ratón en píxeles.
DisplayObject
 InheritedmouseY : Number
[read-only] Indica la coordenada y de la posición del ratón en píxeles.
DisplayObject
 Inheritedname : String
Indica el nombre de instancia de DisplayObject.
DisplayObject
  numChildren : int
[read-only] Devuelve el número de elementos secundarios de este objeto.
DisplayObjectContainer
 InheritedopaqueBackground : Object
Especifica si el objeto de visualización es opaco con un determinado color de fondo.
DisplayObject
 Inheritedparent : 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
 Inheritedroot : 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
 Inheritedrotation : Number
Indica el giro de la instancia de DisplayObject, expresado en grados, con respecto a su orientación original.
DisplayObject
 Inheritedscale9Grid : Rectangle
La cuadrícula de escala aplicada actualmente.
DisplayObject
 InheritedscaleX : Number
Indica la escala horizontal (percentage) del objeto aplicada desde el punto de registro.
DisplayObject
 InheritedscaleY : Number
Indica la escala vertical (percentage) de un objeto aplicada desde el punto de registro del objeto.
DisplayObject
 InheritedscrollRect : Rectangle
Los límites del rectángulo de desplazamiento del objeto de visualización.
DisplayObject
 Inheritedstage : Stage
[read-only] El escenario del objeto de visualización.
DisplayObject
  tabChildren : Boolean
Determina si los elementos secundarios del objeto están habilitados para tabulación.
DisplayObjectContainer
 InheritedtabEnabled : Boolean
Especifica si este objeto está en el orden de tabulación.
InteractiveObject
 InheritedtabIndex : int
Especifica el orden de tabulación de los objetos de un archivo SWF.
InteractiveObject
  textSnapshot : TextSnapshot
[read-only] Devuelve un objeto TextSnapshot para esta instancia de DisplayObjectContainer.
DisplayObjectContainer
 Inheritedtransform : 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
 Inheritedvisible : Boolean
Indica si el objeto de visualización es visible.
DisplayObject
 Inheritedwidth : Number
Indica la anchura del objeto de visualización, expresada en píxeles.
DisplayObject
 Inheritedx : Number
Indica la coordenada x de la instancia de DisplayObject en relación a las coordenadas locales del DisplayObjectContainer principal.
DisplayObject
 Inheritedy : 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
  
La llamada al nuevo constructor DisplayObjectContainer() emite una excepción ArgumentError.
DisplayObjectContainer
  
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
 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
  
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
 Inherited
Distribuye un evento en el flujo del evento.
EventDispatcher
 Inherited
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
  
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 una matriz de objetos que quedan bajo el punto especificado y son elementos secundarios (o terciarios, etc.) de esta instancia de DisplayObjectContainer.
DisplayObjectContainer
 Inherited
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
 Inherited
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
 Inherited
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
 Inherited
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
 Inherited
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
  
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
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Elimina un detector del objeto EventDispatcher.
EventDispatcher
  
Cambia la posición de un elemento secundario existente en el contendor de objeto de visualización.
DisplayObjectContainer
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
  
Intercambia el orden z (de delante a atrás) de los dos objetos secundarios especificados.
DisplayObjectContainer
  
swapChildrenAt(index1:int, index2:int):void
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
 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
 Inherited Se distribuye cuando un objeto de visualización se añade a la lista de visualización.DisplayObject
 Inherited 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 un usuario pulsa y suelta el botón principal del dispositivo de señalización sobre el mismo objeto InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando Flash Player deja de estar seleccionado por el sistema operativo y pasa a estar inactivo.EventDispatcher
 Inherited Se distribuye cuando un usuario pulsa y suelta el botón principal de un dispositivo de señalización dos veces en una sucesión rápida sobre el mismo objeto InteractiveObject cuando el indicador doubleClickEnabled de dicho objeto se ha definido como true.InteractiveObject
 Inherited Se distribuye cuando la cabeza lectora entra en un nuevo fotograma.DisplayObject
 Inherited Se distribuye después de que un objeto de visualización quede seleccionado.InteractiveObject
 Inherited Se distribuye después de que un objeto de visualización deje de estar seleccionado.InteractiveObject
 Inherited Se distribuye cuando el usuario pulsa una tecla.InteractiveObject
 Inherited Se distribuye cuando el usuario intenta cambiar la selección empleando la navegación mediante teclado.InteractiveObject
 Inherited Se distribuye cuando el usuario suelta una tecla.InteractiveObject
 Inherited Se distribuye cuando el usuario pulsa el botón del dispositivo de señalización sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando el usuario intenta cambiar la selección empleando un dispositivo de señalización.InteractiveObject
 Inherited Se distribuye cuando el usuario mueve el dispositivo de señalización mientras éste se encuentra sobre un InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización hacia el exterior de una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario pasa el dispositivo de señalización por encima de una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando el usuario suelta el botón del dispositivo de señalización sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando se hace girar una rueda de ratón sobre una instancia de InteractiveObject en la ventana de Flash Player.InteractiveObject
 Inherited Se distribuye cuando un objeto de visualización se va a eliminar de la lista de visualización.DisplayObject
 Inherited 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
 Inherited Se distribuye cuando la lista de visualización se va a actualizar y mostrar.DisplayObject
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización hacia el exterior de una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando el usuario mueve un dispositivo de señalización sobre una instancia de InteractiveObject.InteractiveObject
 Inherited Se distribuye cuando cambia el valor del indicador tabChildren del objeto.InteractiveObject
 Inherited Se distribuye cuando cambia el indicador tabEnabled del objeto.InteractiveObject
 Inherited Se distribuye cuando cambia el valor de la propiedad tabIndex del objeto.InteractiveObject
Información sobre propiedades
mouseChildrenpropiedad
mouseChildren:Boolean  [read-write]

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

Determina si los elementos secundarios del objeto están habilitados para ratón. Si un objeto está habilitado para ratón, el usuario puede interactuar con él empleando un ratón. El valor predeterminado es true.

Esta propiedad es útil cuando se crea un botón con una instancia de la clase Sprite (en lugar de utilizar la clase SimpleButton). Cuando utilice una instancia de Sprite para crear un botón, podrá optar por decorar el botón empleando el método addChild() para añadir instancias adicionales de Sprite. Este proceso puede provocar un comportamiento inesperado con los eventos de ratón, ya que las instancias de Sprite que añada como elementos secundarios pueden convertirse en el objeto de destino de un evento de ratón cuando se espera que la instancia principal sea el objeto de destino. Para asegurarse de que la instancia principal actúa como objeto de destino de los eventos de ratón, puede establecer la propiedad mouseChildren de la instancia principal con el valor false.

No se distribuye ningún evento al establecer esta propiedad. Debe utilizar el método addEventListener() para crear funcionalidad interactiva.


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

Véase también


Ejemplo

En el ejemplo siguiente, se configura un objeto Sprite (un tipo de contenedor de objeto de visualización) denominado container y se muestra que cuando se establece la propiedad mouseChildren como false, el destino de un evento mouseClick es el objeto container, no cualquiera de sus objetos secundarios:
import flash.display.Sprite;
import flash.events.MouseEvent;

var container:Sprite = new Sprite();
container.name = "container";
addChild(container);

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

container.addChild(circle);

container.mouseChildren = false;

container.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void {
    trace(event.target.name); // container
}
numChildrenpropiedad 
numChildren:int  [read-only]

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

Devuelve el número de elementos secundarios de este objeto.


Implementación
    public function get numChildren():int

Véase también


Ejemplo

En el ejemplo siguiente, se configuran dos objetos Sprite denominados container1 y container2. Sprite es un tipo de contenedor de objeto de visualización. El ejemplo llama al método addChild() para configurar la jerarquía de visualización: container1 es un elemento secundario de container2 y los otros dos objetos de visualización, circle1 y circle2, son elementos secundarios de container1. Las llamadas al método trace() muestran el número de objetos secundarios de cada objeto. Observe que los elementos terciarios no se incluyen en el recuento de numChildren:
import flash.display.Sprite;

var container1:Sprite = new Sprite();
var container2:Sprite = new Sprite();

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x00CCFF);
circle2.graphics.drawCircle(80, 40, 40);

container2.addChild(container1);
container1.addChild(circle1);
container1.addChild(circle2);

trace(container1.numChildren); // 2
trace(container2.numChildren); // 1
trace(circle1.numChildren); // 0
trace(circle2.numChildren); // 0
tabChildrenpropiedad 
tabChildren:Boolean  [read-write]

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

Determina si los elementos secundarios del objeto están habilitados para tabulación. Activa o desactiva la tabulación para los elementos secundarios del objeto. El valor predeterminado es true.


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

Emite
IllegalOperationError — Al llamar a esta propiedad del objeto Stage, se emite una excepción. El objeto Stage no implementa esta propiedad.

Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización container1 y se añaden dos objetos de visualización, circle1 y circle2 a la lista de elementos secundarios. El ejemplo define tabChildren como false para los elementos secundarios de modo que pueda gestionar su propio orden de tabulación con tabIndex:
import flash.display.Sprite;

var container:Sprite = new Sprite();
container.tabChildren = false;

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);
circle1.tabIndex = 1;

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x00CCFF);
circle2.graphics.drawCircle(120, 40, 40);
circle2.tabIndex = 0;

container.addChild(circle1);
container.addChild(circle2);
Para ver los resultados de este ejemplo, compile y ejecute el archivo. Al hacer clic en uno de los círculos, puede presionar el tabulador para intercambiar el objeto de visualización seleccionado (indicado con un rectángulo resaltado en amarillo).
textSnapshotpropiedad 
textSnapshot:TextSnapshot  [read-only]

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

Devuelve un objeto TextSnapshot para esta instancia de DisplayObjectContainer.


Implementación
    public function get textSnapshot():TextSnapshot

Véase también


Ejemplo

El siguiente ejemplo sólo funciona en el entorno de edición de Flash. Flex no incluye ningún método para añadir texto estático a un archivo. Para preparar el archivo Flash de este ejemplo, añada uno o más campos de texto estático al primer fotograma de una película. A continuación, inserte el script siguiente en el primer fotograma y ejecute el archivo. El resultado será el texto estático añadido:
trace(this.textSnapshot.getText(0, this.textSnapshot.charCount));
Información sobre constructores
DisplayObjectContainer()constructor
public function DisplayObjectContainer()

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

La llamada al constructor new DisplayObjectContainer() emite una excepción ArgumentError. No obstante, puede llamar a los constructores para las siguientes subclases de DisplayObjectContainer:

Información sobre métodos
addChild()método
public function addChild(child:DisplayObject):DisplayObject

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

Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer. El elemento secundario se añade delante (encima) de todos los demás elementos secundarios de esta instancia de DisplayObjectContainer. (Para añadir un elemento secundario en una posición de índice concreta, utilice el método addChildAt().)

Si añade un objeto secundario que ya tiene un contenedor de objeto de visualización diferente como elemento principal, el objeto se elimina de la lista de elementos secundarios del otro contenedor de objeto de visualización.

Parámetros

child:DisplayObject — La instancia de DisplayObject que se va a añadir como elemento secundario de esta instancia de DisplayObjectContainer.

Valor devuelto
DisplayObject — La instancia de DisplayObject que se pasa en el parámetro child.

Eventos
added:Event — Se distribuye cuando un objeto de visualización se añade a la lista de visualización.

Emite
ArgumentError — Se emite si el elemento secundario es igual que el elemento principal. También se emite si el que origina la llamada es un elemento secundario (o terciario, etc.) del objeto secundario que se añade.

Véase también


Ejemplo

En el ejemplo siguiente, se configuran dos objetos Sprite denominados container1 y container2. Sprite es un tipo de contenedor de objeto de visualización. El ejemplo llama al método addChild() para configurar la jerarquía de visualización: container1 es un elemento secundario de container2 y los otros dos objetos de visualización, circle1 y circle2, son elementos secundarios de container1. Las llamadas al método trace() muestran el número de objetos secundarios de cada objeto. Observe que los elementos terciarios no se incluyen en el recuento de numChildren:
import flash.display.Sprite;

var container1:Sprite = new Sprite();
var container2:Sprite = new Sprite();

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x00CCFF);
circle2.graphics.drawCircle(80, 40, 40);

container2.addChild(container1);
container1.addChild(circle1);
container1.addChild(circle2);

trace(container1.numChildren); // 2
trace(container2.numChildren); // 1
trace(circle1.numChildren); // 0
trace(circle2.numChildren); // 0
addChildAt()método 
public function addChildAt(child:DisplayObject, index:int):DisplayObject

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

Añade una instancia secundaria de DisplayObject a esta instancia de DisplayObjectContainer. El elemento secundario situado en la posición de índice especificada. El índice 0 representa el final (la parte inferior) de la lista de visualización de este objeto DisplayObjectContainer.

Por ejemplo, el siguiente ejemplo muestra tres objetos de visualización, etiquetados como a, b y c, en las posiciones de índice 0, 2 y 1 respectivamente:

Si añade un objeto secundario que ya tiene un contenedor de objeto de visualización diferente como elemento principal, el objeto se elimina de la lista de elementos secundarios del otro contenedor de objeto de visualización.

Parámetros

child:DisplayObject — La instancia de DisplayObject que se va a añadir como elemento secundario de esta instancia de DisplayObjectContainer.
 
index:int — Posición de índice en la que se añade el elemento secundario. Si especifica una posición de índice actualmente ocupada, el objeto secundario que hay en dicha posición y todas las posiciones superiores suben una posición en la lista de elementos secundarios.

Valor devuelto
DisplayObject — La instancia de DisplayObject que se pasa en el parámetro child.

Eventos
added:Event — Se distribuye cuando un objeto de visualización se añade a la lista de visualización.

Emite
RangeError — Se emite si la posición de índice no existe en la lista secundaria.
 
ArgumentError — Se emite si el elemento secundario es igual que el elemento principal. También se emite si el que origina la llamada es un elemento secundario (o terciario, etc.) del objeto secundario que se añade.

Véase también


Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización container y se añade un objeto de visualización circle1 a la lista de visualización. A continuación, con la llamada a container.addChildAt(circle2, 0), se añade el objeto circle2 a la posición de índice cero (posterior), y se mueve el objeto circle1 a la posición de índice 1:
import flash.display.Sprite;

var container:Sprite = new Sprite();

var circle1:Sprite = new Sprite();
var circle2:Sprite = new Sprite();

container.addChild(circle1);
container.addChildAt(circle2, 0);

trace(container.getChildAt(0) == circle2); // true
trace(container.getChildAt(1) == circle1); // true
areInaccessibleObjectsUnderPoint()método 
public function areInaccessibleObjectsUnderPoint(point:Point):Boolean

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

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. De manera predeterminada, el contenido de un dominio no puede obtener acceso a objetos de otro dominio a no ser que se les permita hacerlo mediante una llamada al método Security.allowDomain().

Para más información, consulte las siguientes secciones:

El parámetro point está en el espacio de coordenadas del escenario, que puede ser distinto del espacio de coordenadas del contenedor del objeto de visualización (a no ser que el contenedor del objeto de visualización esté en el escenario). Puede utilizar los métodos globalToLocal() y localToGlobal() para convertir puntos entre estos espacios de coordenadas.

Parámetros

point:Point — El punto bajo el que se va a comprobar.

Valor devuelto
Booleantrue si el punto contiene objetos de visualización secundarios con restricciones de seguridad.

Véase también


Ejemplo

El código siguiente crea un contenedor de objeto de visualización denominado container. El bloque de código siguiente utiliza un objeto Loader para cargar un archivo JPEG denominado "test.jpg" de un servidor de archivos remoto. Observe que la propiedad checkPolicyFile del objeto LoaderContext utilizado como parámetro en el método load() está establecido como false. Una vez cargado el archivo, el código llama al método loaded() que, a su vez, llama a container.areInaccessibleObjectsUnderPoint(), que devuelve un valor de true, ya que se asume que el contenido cargado procede de un dominio inaccesible:
import flash.display.Sprite;
import flash.display.Loader;
import flash.system.LoaderContext;
import flash.net.URLRequest;
import flash.events.Event;
import flash.geom.Point;

var container:Sprite = new Sprite();

var urlReq:URLRequest = new URLRequest("http://localhost/RemoteFile.swf");
var ldr:Loader = new Loader();
var context:LoaderContext = new LoaderContext();
context.checkPolicyFile = false;
ldr.load(urlReq, context);

ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound);

function loaded(event:Event):void {
    var pt:Point = new Point(1, 1);
    trace(container.areInaccessibleObjectsUnderPoint(pt)); // true
}

function urlNotFound(event:Event):void {
    trace("The URL was not found.");
}
En este ejemplo, se supone que el archivo SWF que produce este código se carga desde un dominio distinto al del archivo JPEG y que el archivo JPEG cargado ocupa el punto (1, 1).
contains()método 
public function contains(child:DisplayObject):Boolean

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

Determina si el objeto de visualización especificado es un elemento secundario de la instancia de DisplayObjectContainer o la propia instancia. La búsqueda incluye la lista de visualización completa, incluida esta instancia de DisplayObjectContainer. Los elementos terciarios, cuaternarios, etc., devuelven true.

Parámetros

child:DisplayObject — El objeto secundario que se va a comprobar.

Valor devuelto
Booleantrue si el objeto child es un elemento secundario de DisplayObjectContainer o el propio contenedor; en caso contrario, devuelve false.

Ejemplo

En el ejemplo siguiente, se configura un número de objetos Sprite y se añaden algunos a la lista de elementos secundarios de otros. (Un objeto Sprite es un tipo de contenedor de objeto de visualización.) La relación entre los distintos objetos se muestra al llamar al método contains():
import flash.display.Sprite;

var sprite1:Sprite = new Sprite();
var sprite2:Sprite = new Sprite();
var sprite3:Sprite = new Sprite();
var sprite4:Sprite = new Sprite();

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

trace(sprite1.contains(sprite1)); // true
trace(sprite1.contains(sprite2)); // true
trace(sprite1.contains(sprite3)); // true
trace(sprite1.contains(sprite4)); // false
getChildAt()método 
public function getChildAt(index:int):DisplayObject

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

Devuelve la instancia del objeto de visualización secundario que sale del índice especificado.

Parámetros

index:int — Posición de índice del objeto secundario.

Valor devuelto
DisplayObject — El objeto de visualización secundario situado en la posición de índice especificada.

Emite
RangeError — Se emite si el índice no existe en la lista secundaria.
 
SecurityError — Este objeto de visualización secundario pertenece a un entorno limitado de seguridad al que no tiene acceso. Puede evitar esta situación haciendo que la película secundaria llame a Security.allowDomain().

Véase también


Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización denominado container y se añaden tres objetos de visualización a la lista de objetos secundarios del objeto container. Las llamadas al método getChildAt() muestran las posiciones de los objetos secundarios:
import flash.display.Sprite;

var container:Sprite = new Sprite();

var sprite1:Sprite = new Sprite();
var sprite2:Sprite = new Sprite();
var sprite3:Sprite = new Sprite();

container.addChild(sprite1);
container.addChild(sprite2);
container.addChildAt(sprite3, 0);

trace(container.getChildAt(0) == sprite3); // true
trace(container.getChildAt(1) == sprite1); // true
trace(container.getChildAt(2) == sprite2); // true
getChildByName()método 
public function getChildByName(name:String):DisplayObject

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

Devuelve el objeto de visualización secundario que sale con el nombre especificado. Si varios objetos de visualización secundarios tienen el nombre especificado, el método devolverá el primer objeto de la lista secundaria.

El método getChildAt() es más rápido que getChildByName(). El método getChildAt() obtiene acceso a un elemento secundario de una matriz en caché, mientras que el método getChildByName() tiene que atravesar una lista vinculada para obtener acceso a un elemento secundario.

Parámetros

name:String — El nombre del elemento secundario que debe devolverse.

Valor devuelto
DisplayObject — El objeto de visualización secundario con el nombre especificado.

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

Véase también


Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización denominado container y se le añaden dos objetos de visualización secundarios. A continuación, el código llama a los métodos getChildByName() y getChildIndex() para devolver la posición de índice del elemento secundario del objeto container que tenga el nombre name "sprite1".
import flash.display.Sprite;
import flash.display.DisplayObject;

var container:Sprite = new Sprite();

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

container.addChild(sprite1);
container.addChild(sprite2);

var target:DisplayObject = container.getChildByName("sprite1");
trace(container.getChildIndex(target)); // 0
getChildIndex()método 
public function getChildIndex(child:DisplayObject):int

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

Devuelve la posición de índice de una instancia child de DisplayObject.

Parámetros

child:DisplayObject — La instancia de DisplayObject que se va a identificar.

Valor devuelto
int — Posición de índice del objeto de visualización secundario que debe identificarse.

Emite
ArgumentError — Se emite si el parámetro secundario no es un elemento secundario de este objeto.

Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización denominado container y se le añaden dos objetos de visualización secundarios. A continuación, el código llama a los métodos getChildByName() y getChildIndex() para devolver la posición de índice del elemento secundario del objeto container que tenga el nombre name "sprite1".
import flash.display.Sprite;
import flash.display.DisplayObject;

var container:Sprite = new Sprite();

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

container.addChild(sprite1);
container.addChild(sprite2);

var target:DisplayObject = container.getChildByName("sprite1");
trace(container.getChildIndex(target)); // 0
getObjectsUnderPoint()método 
public function getObjectsUnderPoint(point:Point):Array

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

Devuelve una matriz de objetos que quedan bajo el punto especificado y son elementos secundarios (o terciarios, etc.) de esta instancia de DisplayObjectContainer. Los objetos secundarios que son inaccesibles por motivos de seguridad se omiten en la matriz devuelta. Para determinar si esta restricción de seguridad afecta a la matriz devuelta, llame al método areInaccessibleObjectsUnderPoint().

El parámetro point está en el espacio de coordenadas del escenario, que puede ser distinto del espacio de coordenadas del contenedor del objeto de visualización (a no ser que el contenedor del objeto de visualización esté en el escenario). Puede utilizar los métodos globalToLocal() y localToGlobal() para convertir puntos entre estos espacios de coordenadas.

Parámetros

point:Point — El punto bajo el que se va a comprobar.

Valor devuelto
Array — Una matriz de objetos que quedan bajo el punto especificado y son elementos secundarios (o terciarios, etc.) de esta instancia de DisplayObjectContainer.

Véase también


Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización denominado container y se le añaden dos objetos de visualización secundarios solapados. El código llama a continuación a getObjectsUnderPoint() dos veces (primero con un punto que toca sólo un objeto y después con un punto donde los objetos se solapan) y la propiedad length (longitud) de la matriz de devolución muestra el número de objetos en cada punto del contenedor:
import flash.display.Sprite;
import flash.geom.Point;

var container:Sprite = new Sprite();

var square1:Sprite = new Sprite();
square1.graphics.beginFill(0xFFCC00);
square1.graphics.drawRect(0, 0, 40, 40);

var square2:Sprite = new Sprite();
square2.graphics.beginFill(0x00CCFF);
square2.graphics.drawRect(20, 0, 30, 40);

container.addChild(square1);
container.addChild(square2);

var pt:Point = new Point(10, 20);
var objects:Array = container.getObjectsUnderPoint(pt);
trace(objects.length); // 1

pt = new Point(35, 20);
objects = container.getObjectsUnderPoint(pt);
trace(objects.length);  // 2
removeChild()método 
public function removeChild(child:DisplayObject):DisplayObject

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

Elimina la instancia child de DisplayObject especificada de la lista de elementos secundarios de la instancia de DisplayObjectContainer. La propiedad parent del elemento secundario eliminado se establece como null y el objeto se recoge como dato innecesario si no hay ninguna otra referencia al elemento secundario. La posición de índice de los objetos de visualización situados por encima del elemento secundario en DisplayObjectContainer se reduce en 1.

La recogida de datos innecesarios (garbage collector) es el proceso mediante el cual Flash Player reasigna el espacio de memoria no utilizado. Cuando deja de haber una referencia activa o un almacenamiento de una variable o un objeto en algún lugar, la recogida de datos innecesarios limpia el espacio de memoria que ocupaba si no hay ninguna otra referencia a estos.

Parámetros

child:DisplayObject — La instancia de DisplayObject que se va a eliminar.

Valor devuelto
DisplayObject — La instancia de DisplayObject que se pasa en el parámetro child.

Emite
ArgumentError — Se emite si el parámetro secundario no es un elemento secundario de este objeto.

Ejemplo

En el ejemplo siguiente, se crea un contenedor de objeto de visualización denominado container y se le añaden dos objetos de visualización secundarios. Se añade un detector de eventos al objeto container para que cuando el usuario haga clic en un objeto secundario del contenedor, el método removeChild() lo elimine de la lista de elementos secundarios del contendor:

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

var container:Sprite = new Sprite();
addChild(container);

var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);

var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0x00CCFF);
circle2.graphics.drawCircle(120, 40, 40);

container.addChild(circle1);
container.addChild(circle2);

container.addEventListener(MouseEvent.CLICK, clicked);

function clicked(event:MouseEvent):void {
    container.removeChild(DisplayObject(event.target));
}
removeChildAt()método 
public function removeChildAt(index:int):DisplayObject

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

Elimina una instancia de DisplayObject secundaria de la posición de index especificada en la lista de elementos secundarios de DisplayObjectContainer. La propiedad parent del elemento secundario eliminado se establece como null y el objeto se recoge como dato innecesario si no hay ninguna otra referencia al elemento secundario. La posición de índice de los objetos de visualización situados por encima del elemento secundario en DisplayObjectContainer se reduce en 1.

La recogida de datos innecesarios (garbage collector) es el proceso mediante el cual Flash Player reasigna el espacio de memoria no utilizado. Cuando deja de haber una referencia activa o un almacenamiento de una variable o un objeto en algún lugar, la recogida de datos innecesarios limpia el espacio de memoria que ocupaba si no hay ninguna otra referencia a estos.

Parámetros

index:int — El índice secundario de la instancia de DisplayObject que se va