Pacote | flash.display |
Classe | public class DisplayObjectContainer |
Herança | DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Subclasses | Loader, Sprite, Stage, TextLine |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
DisplayObject é uma classe base abstrata e, portanto, não é possível chamá-la diretamente. Invocar new DisplayObject()
lança uma exceção ArgumentError
.
new DisplayObjectContainer()
lança uma exceção ArgumentError
.
Para obter mais informações, consulte o capítulo "Programação da exibição" do Guia do Desenvolvedor do ActionScript 3.0.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
A implementação de acessibilidade atual (AccessibilityImplementation) para esta instância do InteractiveObject. | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
As opções de acessibilidade atuais para este objeto de exibição. | DisplayObject | ||
alpha : Number
Indica o valor de transparência alfa do objeto especificado. | DisplayObject | ||
blendMode : String
Um valor a partir da classe BlendMode que especifica o modo de mesclagem a ser usado. | DisplayObject | ||
blendShader : Shader [somente gravação]
Define um shader usado para mesclar o primeiro plano e o segundo plano. | DisplayObject | ||
cacheAsBitmap : Boolean
Se definido como true, tempo de execução do Flash armazenará em cachê uma representação interna em bitmap do objeto de exibição. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Se não nulo, este objeto Matrix definirá como um objeto exibição será renderizado quando cacheAsBitmap for definido como verdadeiro. | DisplayObject | ||
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
contextMenu : NativeMenu
Especifica o menu de contexto associado a este objeto. | InteractiveObject | ||
doubleClickEnabled : Boolean
Especifica se o objeto recebe eventos doubleClick. | InteractiveObject | ||
filters : Array
Uma matriz indexada que contém cada objeto de filtro atualmente associado ao objeto de exibição. | DisplayObject | ||
focusRect : Object
Especifica se este objeto exibe um retângulo de foco. | InteractiveObject | ||
height : Number
Indica a altura do objeto de exibição, em pixels. | DisplayObject | ||
loaderInfo : LoaderInfo [somente leitura]
Retorna um objeto LoaderInfo contendo informações sobre o carregamento do arquivo ao qual esse objeto de exibição pertence. | DisplayObject | ||
mask : DisplayObject
O objeto de exibição de chamada é mascarado pelo objeto "mask" especificado. | DisplayObject | ||
metaData : Object
Obtém o objeto de metadados da instância DisplayObject se os metadados forem armazenados juntamente com a instância desse DisplayObject no arquivo SWF por uma marca PlaceObject4. | DisplayObject | ||
mouseChildren : Boolean
Determina se os filhos do objeto são ou não ativados pelo mouse, ou dispositivo de entrada do usuário. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Especifica se este objeto recebe mensagens de mouse, ou de outras entradas de usuários. | InteractiveObject | ||
mouseX : Number [somente leitura]
Indica a coordenada x da posição do dispositivo do mouse ou de entrada do usuário, em pixels. | DisplayObject | ||
mouseY : Number [somente leitura]
Indica a coordenada y da posição do dispositivo do mouse ou de entrada do usuário, em pixels. | DisplayObject | ||
name : String
Indica o nome da ocorrência de DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Especifica se um teclado virtual (teclado de software, na tela) deve ser exibido quando esta instância InteractiveObject recebe foco. | InteractiveObject | ||
numChildren : int [somente leitura]
Retorna o número de filhos deste objeto. | DisplayObjectContainer | ||
opaqueBackground : Object
Especifica se o objeto de exibição é opaco com uma certa cor de plano de fundo. | DisplayObject | ||
parent : DisplayObjectContainer [somente leitura]
Indica o objeto DisplayObjectContainer que contém esse objeto de exibição. | DisplayObject | ||
root : DisplayObject [somente leitura]
Para um objeto de exibição em um arquivo SWF carregado, a propriedade "root" é o objeto de exibição na extremidade superior, na parte da estrutura em árvore da lista de exibição representada por esse arquivo SWF. | DisplayObject | ||
rotation : Number
Indica o giro da ocorrência de DisplayObject, em graus, a partir da sua orientação original. | DisplayObject | ||
rotationX : Number
Indica a rotação do eixo x da ocorrência DisplayObject, em graus, a partir da sua orientação original referente ao contêiner 3D parent. | DisplayObject | ||
rotationY : Number
Indica a rotação do eixo y da ocorrência DisplayObject, em graus, a partir da sua orientação original referente ao contêiner 3D parent. | DisplayObject | ||
rotationZ : Number
Indica a rotação do eixo z da ocorrência DisplayObject, em graus, a partir da sua orientação original referente ao contêiner 3D parent. | DisplayObject | ||
scale9Grid : Rectangle
A grade de dimensionamento atual que está em vigor. | DisplayObject | ||
scaleX : Number
Indica a escala horizontal (porcentagem) do objeto aplicada a partir do ponto de registro. | DisplayObject | ||
scaleY : Number
Indica a escala vertical (porcentagem) de um objeto aplicada a partir do ponto de registro desse objeto. | DisplayObject | ||
scaleZ : Number
Indica a escala de profundidade (porcentagem) de um objeto aplicada a partir do ponto de registro desse objeto. | DisplayObject | ||
scrollRect : Rectangle
Os limites do retângulo de rolagem do objeto de exibição. | DisplayObject | ||
softKeyboard : String
Controla a aparência do teclado suave. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Define a área que deve permanecer na tela quando um teclado virtual for exibido (não disponível no iOS) | InteractiveObject | ||
stage : Stage [somente leitura]
O Palco do objeto de exibição. | DisplayObject | ||
tabChildren : Boolean
Determina se os filhos do objeto estão ativados para tabulação. | DisplayObjectContainer | ||
tabEnabled : Boolean
Especifica se este objeto está na ordem de tabulação. | InteractiveObject | ||
tabIndex : int
Especifica a ordem de tabulação de objetos em um arquivo SWF. | InteractiveObject | ||
textSnapshot : flash.text:TextSnapshot [somente leitura]
Retorna um objeto TextSnapshot para essa ocorrência de DisplayObjectContainer. | DisplayObjectContainer | ||
transform : flash.geom:Transform
Um objeto com propriedades relacionadas aos limites de pixels, matriz e transformação de cores de um objeto de exibição. | DisplayObject | ||
visible : Boolean
Se o objeto de exibição está ou não visível. | DisplayObject | ||
width : Number
Indica a largura do objeto de exibição, em pixels. | DisplayObject | ||
x : Number
Indica a coordenada x da ocorrência de DisplayObject com relação às coordenadas locais do DisplayObjectContainer-pai. | DisplayObject | ||
y : Number
Indica a coordenada y da ocorrência de DisplayObject com relação às coordenadas locais do DisplayObjectContainer-pai. | DisplayObject | ||
z : Number
Indica a posição da coordenada z ao longo do eixo z da ocorrência DisplayObject em relação ao contêiner 3D pai. | DisplayObject |
Método | Definido por | ||
---|---|---|---|
Chamar o construtor new DisplayObjectContainer() lança uma exceção ArgumentError. | DisplayObjectContainer | ||
Adiciona uma ocorrência-filho de DisplayObject a essa ocorrência de DisplayObjectContainer. | DisplayObjectContainer | ||
Adiciona uma ocorrência-filho de DisplayObject a essa ocorrência de DisplayObjectContainer. | DisplayObjectContainer | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. | EventDispatcher | ||
Indica se restrições de segurança fariam com que qualquer objeto de exibição fosse omitido da lista retornada com a chamada do método DisplayObjectContainer.getObjectsUnderPoint() junto com o ponto especificado. | DisplayObjectContainer | ||
Determina se o objeto de exibição especificado é um filho da ocorrência de DisplayObjectContainer ou se é a própria ocorrência. | DisplayObjectContainer | ||
Envia um evento para o fluxo de eventos. | EventDispatcher | ||
Retorna um retângulo que define a área do objeto de exibição com relação ao sistema de coordenadas do objeto targetCoordinateSpace. | DisplayObject | ||
Retorna a ocorrência do objeto de exibição-filho que existe no índice especificado. | DisplayObjectContainer | ||
Retorna o objeto de exibição-filho que existe com o nome especificado. | DisplayObjectContainer | ||
Retorna a posição de índice de uma ocorrência-filho de DisplayObject. | DisplayObjectContainer | ||
Retorna uma matriz de objetos que estão dispostos no ponto especificado e são filhos (ou netos e assim por diante) desta ocorrência de DisplayObjectContainer. | DisplayObjectContainer | ||
Retorna um retângulo que define o limite do objeto de exibição, com base no sistema de coordenadas definido pelo parâmetro espaçoCoordenadasDestino, excluindo quaisquer traçados em formas. | DisplayObject | ||
Converte o objeto de ponto a partir de coordenadas de Palco (globais) em coordenadas do objeto de exibição (locais). | DisplayObject | ||
Converte um ponto bidimensional das coordenadas do Palco (globais) em coordenadas do objeto de exibição tridimensional (locais). | DisplayObject | ||
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento. | EventDispatcher | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Avalia a caixa delimitadora do objeto de exibição para ver se ela sobrepõe ou faz interseção com a caixa delimitadora do objeto de exibição obj. | DisplayObject | ||
Avalia o objeto de exibição para ver se ele sobrepõe ou faz interseção com o ponto especificado pelos parâmetros x e y. | DisplayObject | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Converte um ponto tridimensional das coordenadas (locais) do objeto de exibição tridimensional em ponto bidimensional das coordenadas (globais) do Palco. | DisplayObject | ||
Converte o objeto de ponto a partir das coordenadas do objeto de exibição (locais) em coordenadas do Palco (globais). | DisplayObject | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Remove uma ocorrência-filho de DisplayObject especificada da lista de filhos da ocorrência de DisplayObjectContainer. | DisplayObjectContainer | ||
Remove um DisplayObject filho da posição de índice especificada na lista de filhos de DisplayObjectContainer. | DisplayObjectContainer | ||
Remove todas as instâncias filho DisplayObject especificadas da lista de filhos da instância DisplayObjectContainer. | DisplayObjectContainer | ||
Remove um ouvinte do objeto EventDispatcher. | EventDispatcher | ||
Ativa um teclado virtual. | InteractiveObject | ||
Altera a posição de um filho existente no contêiner de objetos de exibição. | DisplayObjectContainer | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Interrompe repetitivamente a execução da linha de tempo de todos os MovieClips enraizados neste objeto. | DisplayObjectContainer | ||
Alterna a ordem z (ordem da frente para trás) dos dois objetos filhos especificados. | DisplayObjectContainer | ||
Alterna a ordem z (ordem da frente para trás) dos objetos-filho nas duas posições de índice especificadas na lista de filhos. | DisplayObjectContainer | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object | ||
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado. | EventDispatcher |
mouseChildren | propriedade |
mouseChildren:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Determina se os filhos do objeto são ou não ativados pelo mouse, ou dispositivo de entrada do usuário. Se um objeto estiver ativado,um usuário pode interagir com ele usando um mouse ou dispositivo de entrada do usuário. O padrão é true
.
Essa propriedade é útil quando você cria um botão com uma ocorrência da classe Sprite (em vez de usar a classe SimpleButton). Ao usar uma ocorrência de Sprite para criar um botão, você pode optar por decorar esse botão usando o método addChild()
para incluir ocorrências adicionais de Sprite. Esse processo pode causar um comportamento inesperado com eventos de mouse, já que as ocorrências de Sprite adicionadas como filhos podem se tornar o objeto de destino de um evento de mouse, quando você espera que a ocorrência-pai seja o objeto de destino. Para garantir que a ocorrência-pai atue como o objeto de destino para eventos de mouse, defina a propriedade mouseChildren
dessa ocorrência como false
.
Nenhum evento é despachado com o uso dessa propriedade. É necessário usar o método addEventListener()
para criar uma funcionalidade interativa.
Implementação
public function get mouseChildren():Boolean
public function set mouseChildren(value:Boolean):void
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e mostra que, quando sua propriedade mouseChildren
é definida como false
, o destino de um evento mouseClick
é o objeto container
em vez de ser um dos seus objetos-filho:
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 }
numChildren | propriedade |
numChildren:int
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Retorna o número de filhos deste objeto.
Implementação
public function get numChildren():int
Exemplo ( Como usar este exemplo )
container1
e container2
. Um Sprite é um tipo de contêiner de objetos de exibição. O exemplo chama o método addChild()
para configurar a hierarquia de exibição: container1
é um filho de container2
e dois outros objetos de exibição, circle1
e circle2
, são filhos de container1
. As chamadas ao método trace()
mostram o número de filhos de cada objeto. Observe que os netos não são inclusos na contagem 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
tabChildren | propriedade |
tabChildren:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Determina se os filhos do objeto estão ativados para tabulação. Ativa ou desativa a tabulação para os filhos do objeto. O padrão é true
.
Nota: não use a propriedade tabChildren
com Flex. Em vez disso, use a propriedade mx.core.UIComponent.hasFocusableChildren
.
Implementação
public function get tabChildren():Boolean
public function set tabChildren(value:Boolean):void
Lança
IllegalOperationError — Chamar essa propriedade do objeto Stage lança uma exceção. O objeto Stage não implementa essa propriedade.
|
Exemplo ( Como usar este exemplo )
container1
e adiciona dois objetos de exibição circle1
e circle2
à sua lista de filhos. O exemplo define tabChildren como false
para os filhos para poder gerenciar a sua própria ordem de tabulação usando 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);
textSnapshot | propriedade |
textSnapshot:flash.text:TextSnapshot
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Retorna um objeto TextSnapshot para essa ocorrência de DisplayObjectContainer.
Implementação
public function get textSnapshot():flash.text:TextSnapshot
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
trace(this.textSnapshot.getText(0, this.textSnapshot.charCount));
DisplayObjectContainer | () | Construtor |
public function DisplayObjectContainer()
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Chamar o construtor new DisplayObjectContainer()
lança uma exceção ArgumentError
. Entretanto, você pode chamar construtores para as seguintes subclasses de DisplayObjectContainer:
new Loader()
new Sprite()
new MovieClip()
addChild | () | método |
public function addChild(child:DisplayObject):DisplayObject
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Adiciona uma ocorrência-filho de DisplayObject a essa ocorrência de DisplayObjectContainer. O filho é adicionado à frente (acima) de todos os outros filhos nessa ocorrência de DisplayObjectContainer. (Para adicionar um filho em uma posição de índice específica, use o método addChildAt()
.)
Se você adicionar um objeto-filho que já tenha um contêiner de objetos de exibição diferente como pai, o objeto será removido da lista de filhos do outro contêiner de objetos de exibição.
Observação: O comando stage.addChild()
pode causar problemas com um arquivo SWF publicado, inclusive problemas de segurança e conflitos com outros arquivos SWF carregados. Há só um Palco dentro de uma instância de tempo de execução de Flash, não importa quantos arquivos SWF você carrega no tempo de execução. Portanto, geralmente, os objetos não devem ser adicionados ao Palco, diretamente. O único objeto que o Palco deve conter é o objeto-raiz. Crie um DisplayObjectContainer para conter todos os itens na lista de exibição. Então, se necessário, adicione essa instância DisplayObjectContainer ao Palco.
Parâmetros
child:DisplayObject — A ocorrência de DisplayObject a ser adicionada como filho dessa ocorrência de DisplayObjectContainer.
|
DisplayObject — A ocorrência de DisplayObject que você transmite no parâmetro filho .
|
Eventos
added: — Despachado quando um objeto de exibição é adicionado à lista de exibição.
|
Lança
ArgumentError — Lançará se o filho for igual ao pai. Também lançará se o chamador for um filho (ou um neto, etc.) do filho que está sendo adicionado.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container1
e container2
. Um Sprite é um tipo de contêiner de objetos de exibição. O exemplo chama o método addChild()
para configurar a hierarquia de exibição: container1
é um filho de container2
e dois outros objetos de exibição, circle1
e circle2
, são filhos de container1
. As chamadas ao método trace()
mostram o número de filhos de cada objeto. Observe que os netos não são inclusos na contagem 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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Adiciona uma ocorrência-filho de DisplayObject a essa ocorrência de DisplayObjectContainer. O filho é adicionado na posição de índice especificada. Um índice de 0 representa o final (parte inferior) da lista de exibição para esse objeto DisplayObjectContainer.
Por exemplo, o exemplo a seguir mostra três objetos de exibição, com os rótulos a, b e c, nas posições de índice 0, 2 e 1, respectivamente:
Se você adicionar um objeto-filho que já tenha um contêiner de objetos de exibição diferente como pai, o objeto será removido da lista de filhos do outro contêiner de objetos de exibição.
Parâmetros
child:DisplayObject — A ocorrência de DisplayObject a ser adicionada como filho dessa ocorrência de DisplayObjectContainer.
| |
index:int — A posição de índice à qual o filho é adicionado. Se você especificar uma posição de índice atualmente ocupada, o objeto-filho existente nessa posição e em todas as posições mais altas será movido uma posição para cima na lista de filhos.
|
DisplayObject — A ocorrência de DisplayObject que você transmite no parâmetro filho .
|
Eventos
added: — Despachado quando um objeto de exibição é adicionado à lista de exibição.
|
Lança
RangeError — Lançará se a posição de índice não existir na lista de filhos.
| |
ArgumentError — Lançará se o filho for igual ao pai. Também lançará se o chamador for um filho (ou um neto, etc.) do filho que está sendo adicionado.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e adiciona um objeto de exibição circle1
à sua lista de exibição. Em seguida, chamando container.addChildAt(circle2, 0)
, ele adiciona o objeto circle2
à posição de índice zero (atrás) e move o objeto circle1
para a posição 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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica se restrições de segurança fariam com que qualquer objeto de exibição fosse omitido da lista retornada com a chamada do método DisplayObjectContainer.getObjectsUnderPoint()
junto com o ponto
especificado. Por padrão, o conteúdo de um domínio não pode acessar objetos de outro domínio, a não ser isso seja permitido com uma chamada ao método Security.allowDomain()
. Para obter mais informações relacionadas à segurança, consulte o tópico do Centro do desenvolvedor do Flash Player: Security.
O parâmetro ponto
está no espaço de coordenadas do Palco, que pode ser diferente do espaço de coordenadas do contêiner de objetos de exibição (a menos que o contêiner de objetos de exibição seja o Palco). Você pode usar os métodos globalToLocal()
e localToGlobal()
para converter pontos entre esses espaços de coordenadas.
Parâmetros
point:Point — O ponto abaixo do qual observar.
|
Boolean — true se o ponto tiver objetos de exibição-filho com restrições de segurança.
|
Elementos da API relacionados
getObjectsUnderPoint()
DisplayObject.globalToLocal()
DisplayObject.localToGlobal()
Exemplo ( Como usar este exemplo )
container
. O próximo bloco de código usa um objeto Loader para carregar um arquivo JPEG denominado "test.jpg" a partir de um servidor de arquivos remoto. Observe que a propriedade verificarArquivoDiretivas
do objeto LoaderContext usada como parâmetro no método load()
está definida como false
. Quando o arquivo estiver carregado, o código chamará o método loaded()
, que, por sua vez, chama container.areInaccessibleObjectsUnderPoint()
, retornando um valor de true
já que se presume que o conteúdo carregado seja proveniente de um domínio inacessível.
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."); }
contains | () | método |
public function contains(child:DisplayObject):Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Determina se o objeto de exibição especificado é um filho da ocorrência de DisplayObjectContainer ou se é a própria ocorrência. A pesquisa inclui a lista de exibição inteira, incluindo essa ocorrência de DisplayObjectContainer. Netos, bisnetos e assim por diante retornam true
cada.
Parâmetros
child:DisplayObject — O objeto-filho a ser testado.
|
Boolean — true se o objeto-filho for filho de DisplayObjectContainer ou do próprio contêiner; caso contrário, false .
|
Exemplo ( Como usar este exemplo )
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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Retorna a ocorrência do objeto de exibição-filho que existe no índice especificado.
Parâmetros
index:int — A posição de índice do objeto-filho.
|
DisplayObject — O objeto de exibição-filho na posição de índice especificada.
|
Lança
RangeError — Lançará se o índice não existir na lista de filhos.
| |
SecurityError — O objeto de exibição-filho pertence a uma caixa de proteção à qual você não tem acesso. Essa situação pode ser evitada fazendo com que o filme-filho chame Security.allowDomain() .
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e adiciona três objetos de exibição à lista de filhos desse objeto container
. As chamadas ao método getChildAt()
revelam as posições dos objetos-filho.
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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Retorna o objeto de exibição-filho que existe com o nome especificado. Se mais de um objeto de exibição-filho tiver o nome especificado, o método retornará o primeiro objeto na lista de filhos.
O método getChildAt()
é mais rápido do que o método getChildByName()
. O método getChildAt()
acessa um filho a partir de uma matriz em cache, enquanto o método getChildByName()
precisa atravessar a lista vinculada para acessar um filho.
Parâmetros
name:String — O nome do filho a ser retornado.
|
DisplayObject — O objeto de exibição-filho com o nome especificado.
|
Lança
SecurityError — O objeto de exibição-filho pertence a uma caixa de proteção à qual você não tem acesso. Essa situação pode ser evitada fazendo com que o filme-filho chame o método Security.allowDomain() .
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho ao contêiner. Em seguida, o código chama os métodos getChildByName()
e getChildIndex()
para retornar a posição de índice do filho do objeto container
que possui o 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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Retorna a posição de índice de uma ocorrência-filho
de DisplayObject.
Parâmetros
child:DisplayObject — A ocorrência de DisplayObject a ser identificada.
|
int — A posição de índice do objeto de exibição-filho para identificação.
|
Lança
ArgumentError — Lançará se o parâmetro "filho" não for um filho deste objeto.
|
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho ao contêiner. Em seguida, o código chama os métodos getChildByName()
e getChildIndex()
para retornar a posição de índice do filho do objeto container
que possui o 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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Retorna uma matriz de objetos que estão dispostos no ponto especificado e são filhos (ou netos e assim por diante) desta ocorrência de DisplayObjectContainer. Os objetos-filho que não puderem ser acessados por questões de segurança serão omitidos da matriz retornada. Para determinar se essa restrição de segurança afeta a matriz retornada, chame o método areInaccessibleObjectsUnderPoint()
.
O parâmetro ponto
está no espaço de coordenadas do Palco, que pode ser diferente do espaço de coordenadas do contêiner de objetos de exibição (a menos que o contêiner de objetos de exibição seja o Palco). Você pode usar os métodos globalToLocal()
e localToGlobal()
para converter pontos entre esses espaços de coordenadas.
Parâmetros
point:Point — O ponto abaixo do qual observar.
|
Array — Uma matriz de objetos que estão dispostos no ponto especificado e são filhos (ou netos e assim por diante) desta ocorrência de DisplayObjectContainer.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho sobrepostos ao contêiner. Então o código chama getObjectsUnderPoint()
duas vezes – a primeira, usando um ponto que toca apenas um objeto e depois usando um ponto nos qual os objetos se sobrepõem, e o comprimento (length
) da Matriz de retorno mostra o número de objetos em cada ponto no contêiner:
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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Remove uma ocorrência-filho
de DisplayObject especificada da lista de filhos da ocorrência de DisplayObjectContainer. A propriedade parent
do filho removido é definida como null
e o objeto será coletado como lixo se não houver outras referências ao filho. As posições de índice de qualquer objeto de exibição acima do filho em DisplayObjectContainer são diminuídas em 1.
O coletor de lixo realoca o espaço de memória não utilizado. Quando uma variável ou objeto deixa de ser ativamente referenciado ou é armazenado em outro local, o coletor de lixo faz uma varredura e limpa o espaço de memória que essa variável ou objeto costumava ocupar, se nenhuma outra referência existir.
Parâmetros
child:DisplayObject — A ocorrência de DisplayObject a ser removida.
|
DisplayObject — A ocorrência de DisplayObject que você transmite no parâmetro filho .
|
Lança
ArgumentError — Lançará se o parâmetro "filho" não for um filho deste objeto.
|
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho ao contêiner. Um ouvinte de evento é adicionado ao objeto container
, de forma que, quando o usuário clicar em um objeto-filho do contêiner, o método removeChild()
removerá o filho que foi clicado da lista de filhos do contêiner:
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
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Remove um DisplayObject filho da posição de index
especificada na lista de filhos de DisplayObjectContainer. A propriedade parent
do filho removido é definida como null
e o objeto será coletado como lixo se não houver outras referências ao filho. As posições de índice de qualquer objeto de exibição acima do filho em DisplayObjectContainer são diminuídas em 1.
O coletor de lixo realoca o espaço de memória não utilizado. Quando uma variável ou objeto deixa de ser ativamente referenciado ou é armazenado em outro local, o coletor de lixo faz uma varredura e limpa o espaço de memória que essa variável ou objeto costumava ocupar, se nenhuma outra referência existir.
Parâmetros
index:int — O índice de filho de DisplayObject a ser removido.
|
DisplayObject — A ocorrência de DisplayObject que foi removida.
|
Lança
SecurityError — O objeto de exibição-filho pertence a uma caixa de proteção à qual o objeto de chamada não tem acesso. Essa situação pode ser evitada fazendo com que o filme-filho chame o método Security.allowDomain() .
| |
RangeError — Lançará se o índice não existir na lista de filhos.
|
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho ao contêiner. O código mostra que, quando você chama o método removeChildAt()
para remover o filho na posição de índice mais baixa (0), qualquer outro objeto-filho na lista é movido uma posição para baixo:
import flash.display.Sprite; 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); trace(container.numChildren) // 2 container.removeChildAt(0); trace(container.numChildren) // 1 trace(container.getChildAt(0).name); // sprite2
removeChildren | () | método |
public function removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.0, Flash Player 11 |
Remove todas as instâncias child
de DisplayObject especificadas na lista de filhos da instância DisplayObjectContainer. A propriedade parent
do filho removido é definida como null
e o objeto será coletado como lixo se não houver outras referências ao filho.
O coletor de lixo realoca o espaço de memória não utilizado. Quando uma variável ou objeto deixa de ser ativamente referenciado ou é armazenado em outro local, o coletor de lixo faz uma varredura e limpa o espaço de memória que essa variável ou objeto costumava ocupar, se nenhuma outra referência existir.
Parâmetros
beginIndex:int (default = 0 ) — A posição inicial. Um valor menor que 0 emite um RangeError .
| |
endIndex:int (default = 0x7fffffff ) — A posição final. Um valor menor que 0 emite um RangeError .
|
Lança
RangeError — Emite se as posições beginIndex ou endIndex não existirem na lista de filhos.
|
setChildIndex | () | método |
public function setChildIndex(child:DisplayObject, index:int):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Altera a posição de um filho existente no contêiner de objetos de exibição. Isso afeta a disposição de objetos-filho em camadas. Por exemplo, o exemplo a seguir mostra três objetos de exibição, com os rótulos a, b e c, nas posições de índice 0, 1 e 2, respectivamente:
Quando você usa o método setChildIndex()
e especifica uma posição de índice que já está ocupada, as únicas posições alteradas são aquelas entre a posição nova e a anterior do objeto de exibição. Todos as demais permanecem da mesma maneira. Se um filho for movido para um índice INFERIOR ao índice atual respectivo, todos os filhos entre eles AUMENTARÃO em 1 na respectiva referência de índice. Se um filho for movido para um índice SUPERIOR ao índice atual respectivo, todos os filhos entre eles DIMINUIRÃO em 1 na respectiva referência de índice. Por exemplo, se o contêiner de objetos de exibição no exemplo anterior se chamar container
, você poderá alternar a posição dos objetos de exibição com os rótulos a e b, chamando o seguinte código:
container.setChildIndex(container.getChildAt(1), 0);
Esse código resulta na seguinte disposição de objetos:
Parâmetros
child:DisplayObject — A ocorrência-filho de DisplayObject para a qual você deseja alterar o número do índice.
| |
index:int — O número de índice resultante para o objeto de exibição-filho .
|
Lança
RangeError — Lançará se o índice não existir na lista de filhos.
| |
ArgumentError — Lançará se o parâmetro "filho" não for um filho deste objeto.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
container
e adiciona ao contêiner três objetos de exibição-filho um pouco sobrepostos. Quando o usuário clicar em um desses objetos, o método clicked()
chamará o método setChildIndex()
de forma a mover o objeto clicado para a primeira posição na lista de filhos do objeto container
:
import flash.display.Sprite; import flash.events.MouseEvent; var container:Sprite = new Sprite(); addChild(container); var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFF0000); circle1.graphics.drawCircle(40, 40, 40); circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0x00FF00); circle2.graphics.drawCircle(100, 40, 40); circle2.addEventListener(MouseEvent.CLICK, clicked); var circle3:Sprite = new Sprite(); circle3.graphics.beginFill(0x0000FF); circle3.graphics.drawCircle(70, 80, 40); circle3.addEventListener(MouseEvent.CLICK, clicked); container.addChild(circle1); container.addChild(circle2); container.addChild(circle3); addChild(container); function clicked(event:MouseEvent):void { var circle:Sprite = Sprite(event.target); var topPosition:uint = container.numChildren - 1; container.setChildIndex(circle, topPosition); }
stopAllMovieClips | () | método |
public function stopAllMovieClips():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 3.8, Flash Player 11.8 |
Interrompe repetitivamente a execução da linha de tempo de todos os MovieClips enraizados neste objeto.
Os objetos de exibição filhos que pertence a uma caixa de proteção à qual o código em execução não tem acesso são ignorados.
Observação: o fluxo de reprodução de mídia gerenciado por um objeto NetStream não será interrompido.
swapChildren | () | método |
public function swapChildren(child1:DisplayObject, child2:DisplayObject):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Alterna a ordem z (ordem da frente para trás) dos dois objetos filhos especificados. Todos os outros objetos-filho no contêiner de objetos de exibição permanecem nas mesmas posições de índice.
Parâmetros
child1:DisplayObject — O primeiro objeto-filho.
| |
child2:DisplayObject — O segundo objeto-filho.
|
Lança
ArgumentError — Lançará se o parâmetro "filho" não for um filho deste objeto.
|
Exemplo ( Como usar este exemplo )
container
e adiciona dois objetos de exibição-filho ao contêiner, mostrando em seguida o efeito de uma chamada ao método swapChildren()
:
import flash.display.Sprite; 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); trace(container.getChildAt(0).name); // sprite1 trace(container.getChildAt(1).name); // sprite2 container.swapChildren(sprite1, sprite2); trace(container.getChildAt(0).name); // sprite2 trace(container.getChildAt(1).name); // sprite1
swapChildrenAt | () | método |
public function swapChildrenAt(index1:int, index2:int):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Alterna a ordem z (ordem da frente para trás) dos objetos-filho nas duas posições de índice especificadas na lista de filhos. Todos os outros objetos-filho no contêiner de objetos de exibição permanecem nas mesmas posições de índice.
Parâmetros
index1:int — A posição de índice do primeiro objeto-filho.
| |
index2:int — A posição de índice do segundo objeto-filho.
|
Lança
RangeError — Se um dos índices não existir na lista de filhos.
|
Exemplo ( Como usar este exemplo )
container
e adiciona três objetos de exibição-filho ao contêiner, mostrando em seguida como uma chamada ao método swapChildrenAt()
reorganiza a lista de filhos desse contêiner de objetos de exibição:
import flash.display.Sprite; var container:Sprite = new 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"; container.addChild(sprite1); container.addChild(sprite2); container.addChild(sprite3); trace(container.getChildAt(0).name); // sprite1 trace(container.getChildAt(1).name); // sprite2 trace(container.getChildAt(2).name); // sprite3 container.swapChildrenAt(0, 2); trace(container.getChildAt(0).name); // sprite3 trace(container.getChildAt(1).name); // sprite2 trace(container.getChildAt(2).name); // sprite1
DisplayObjectContainerExample
para criar cinco quadrados laranja em sucessão. Essa tarefa é concluída com as seguintes etapas:
- O construtor chama o método
configureAssets()
. - O método
configureAssets()
cria objetos Spritechild
elastChild
. - Uma repetição
for
cria os cinco quadrados laranja e os posiciona um depois do outro. - Sempre que um objeto CustomSprite for criado, seu construtor chamará o método
draw()
do objetoCustomSprite
, que cria um quadrado de 50 por 50 pixels chamando os métodosbeginFill()
,drawRect()
eendFill()
da classe Graphics. O métodoaddChild()
adiciona cada quadrado à lista de exibição.
package { import flash.display.DisplayObject; import flash.display.Sprite; public class DisplayObjectContainerExample extends Sprite { private var gutter:uint = 5; private var childCount:uint = 5; public function DisplayObjectContainerExample() { configureAssets(); } private function configureAssets():void { var child:Sprite = new CustomSprite(); var lastChild:Sprite = child; for (var i:uint = 1; i <= childCount; i++) { child = new CustomSprite(); child.x = lastChild.x + lastChild.width + gutter; addChild(child); lastChild = child; } } } } import flash.display.Sprite; class CustomSprite extends Sprite { private var size:uint = 50; private var bgColor:uint = 0xFFCC00; public function CustomSprite() { draw(size, size); } private function draw(w:uint, h:uint):void { graphics.beginFill(bgColor); graphics.drawRect(0, 0, w, h); graphics.endFill(); } }
Wed Jun 13 2018, 11:10 AM Z