Pacote | flash.display |
Classe | public class Sprite |
Herança | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Subclasses | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Um objeto Sprite é semelhante a um clipe de filme, nas não tem uma linha do tempo. Sprite é uma classe base apropriada para objetos que não exigem linhas do tempo. Por exemplo, Sprite seria uma classe base lógica para componentes da UI que em geral não utilizam a linha do tempo.
A classe Sprite é nova no ActionScript 3.0. Ela fornece uma alternativa para a funcionalidade da classe MovieClip, que mantém toda a funcionalidade das versões anteriores do ActionScript de forma a oferecer compatibilidade com essas versões.
Mais exemplos
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 | ||
buttonMode : Boolean
Especifica o modo de botão desta entidade gráfica. | Sprite | ||
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 | ||
dropTarget : DisplayObject [somente leitura]
Especifica o objeto de exibição sobre o qual a entidade gráfica está sendo arrastada ou no qual a entidade gráfica foi solta. | Sprite | ||
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 | ||
graphics : Graphics [somente leitura]
Especifica o objeto Graphics pertencente a esta entidade gráfica em que comandos de desenho de vetor podem ocorrer. | Sprite | ||
height : Number
Indica a altura do objeto de exibição, em pixels. | DisplayObject | ||
hitArea : Sprite
Designa outra entidade gráfica para atuar como área de ocorrência para uma entidade gráfica. | Sprite | ||
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 | ||
soundTransform : flash.media:SoundTransform
Controla o som nesta entidade gráfica. | Sprite | ||
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 | ||
useHandCursor : Boolean
Um valor booliano que indica se a mão que aponta (cursor de mão) aparece quando o ponteiro passa sobre uma entidade gráfica em que a propriedade buttonMode esteja definida como "true". | Sprite | ||
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 | ||
---|---|---|---|
Sprite()
Cria uma nova ocorrência de Sprite. | Sprite | ||
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 | ||
Permite ao usuário arrastar a entidade gráfica especificada. | Sprite | ||
Deixa o usuário arrastar o sprite especificado em um dispositivo ativado pelo toque. | Sprite | ||
Interrompe repetitivamente a execução da linha de tempo de todos os MovieClips enraizados neste objeto. | DisplayObjectContainer | ||
Finaliza o método startDrag(). | Sprite | ||
Termina o método startTouchDrag() para o uso com dispositivos ativados pelo toque. | Sprite | ||
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 |
buttonMode | propriedade |
buttonMode:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica o modo de botão desta entidade gráfica. Se true
, essa entidade gráfica se comportará como um botão, o que significa que ela aciona a exibição do cursor de mão quando o mouse passa sobre a entidade gráfica e poderá receber um evento click
se as teclas Enter ou barra de espaço forem pressionadas quando o foco estiver na entidade gráfica. É possível suprimir a exibição do cursor de mão definindo a propriedade useHandCursor
como false
, em cujo caso o ponto é exibido.
Embora seja melhor usar a classe SimpleButton para criar botões, você pode usar a propriedade buttonMode
para fornecer a uma entidade gráfica uma funcionalidade de botão. Para incluir uma entidade gráfica na ordem de tabulação, defina a propriedade tabEnabled
(herdada da classe InteractiveObject e false
por padrão) como true
. Além disso, considere se você deseja que os filhos da entidade gráfica sejam ativados pelo usuário. A maioria dos botões não permitem a interatividade do usuário para seus objetos-filho, já que isso confunde o fluxo de eventos. Para desativar a interatividade para todos os objetos-filho, é necessário definir a propriedade mouseChildren
(herdada da classe DisplayObjectContainer) como false
.
Se você usar a propriedade buttonMode
com a classe MovieClip (que é uma subclasse da classe Sprite), o botão poderá ter uma certa funcionalidade adicionada. Se você incluir quadros com os rótulos _up, _over e _down, o Flash Player fornecerá alterações automáticas de estado (funcionalidade semelhante à fornecida nas versões anteriores do ActionScript para clipes de filme usados como botões). Essas alterações automáticas de estado não estão disponíveis para entidades gráficas, que não têm linha do tempo e, portanto, não têm quadros a serem rotulados.
Implementação
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
buttonMode
como true
para um e false
para a outra. Quando você compilar e executar o aplicativo, ambas as entidades gráficas responderão a eventos do mouse, mas apenas aquela na qual buttonMode
está definida como true
usa o cursor de mão e é inclusa na ordem de tabulação:
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
dropTarget | propriedade |
dropTarget:DisplayObject
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica o objeto de exibição sobre o qual a entidade gráfica está sendo arrastada ou no qual a entidade gráfica foi solta.
Implementação
public function get dropTarget():DisplayObject
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
círculo
e duas entidades gráficas destino
. O método startDrag()
é chamado na entidade gráfica círculo
quando o usuário posiciona o cursor sobre a entidade gráfica e pressiona o botão do mouse, e o método stopDrag()
é chamado quando o usuário solta o botão do mouse. Permite ao usuário arrastar a entidade gráfica. Quando se solta o botão do mouse, é chamado o método mouseRelease()
, que, por sua vez, rastreia o nome (name
) do objeto dropTarget
– o objeto até o qual o usuário arrastou a entidade gráfica circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
graphics | propriedade |
graphics:Graphics
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Especifica o objeto Graphics pertencente a esta entidade gráfica em que comandos de desenho de vetor podem ocorrer.
Implementação
public function get graphics():Graphics
Exemplo ( Como usar este exemplo )
círculo
e usa sua propriedade graphics
para desenhar um círculo com preenchimento amarelo (0xFFCC00):
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
hitArea | propriedade |
hitArea:Sprite
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Designa outra entidade gráfica para atuar como área de ocorrência para uma entidade gráfica. Se a propriedade hitArea
não existir ou o valor for null
ou undefined
, a própria entidade gráfica será usada como área de ocorrência. O valor da propriedade hitArea
pode ser uma referência a um objeto Sprite.
A propriedade hitArea
pode ser alterada a qualquer momento; a entidade gráfica modificada usa imediatamente o novo comportamento da área de ocorrência. A entidade gráfica designada como área de ocorrência não precisa estar visível; sua forma gráfica, embora invisível, ainda é detectada como a área de ocorrência.
Observação: é necessário definir como false
a propriedade mouseEnabled
da entidade gráfica designada como área de ocorrência. Caso contrário, o botão de entidade gráfica não funcionará porque a entidade gráfica designada como área de acerto receberá os eventos da entrada de usuário no lugar desse botão de entidade gráfica.
Implementação
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Exemplo ( Como usar este exemplo )
círculo
e uma entidade gráfica quadrado
. A entidade gráfica quadrado
é a hitArea
da entidade gráfica círculo
. Dessa forma, quando o usuário clica na entidade gráfica quadrado
, a entidade gráfica círculo
despacha um evento click
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var square:Sprite = new Sprite(); square.graphics.beginFill(0xCCFF00); square.graphics.drawRect(200, 0, 100, 100); circle.hitArea = square; square.mouseEnabled = false; circle.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void{ trace(event.target == circle); // true trace(event.target == square); // false } addChild(circle); addChild(square);
soundTransform | propriedade |
soundTransform:flash.media:SoundTransform
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Controla o som nesta entidade gráfica.
Observação: Esta propriedade não afeta o conteúdo de HTML em um objeto HTMLControl (no Adobe AIR).
Implementação
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
contêiner
e adiciona um objeto Loader à sua lista de filhos. O objeto Loader carrega um arquivo SWF. Quando o usuário clicar no link na caixa de texto tf
true
, o método mute()
definirá a propriedade volume
da propriedade soundTransform
da entidade gráfica contêiner
:
import flash.display.Sprite; import flash.display.Loader; import flash.events.IOErrorEvent; import flash.events.MouseEvent; import flash.net.URLRequest; import flash.text.TextField; import flash.media.SoundTransform; var container:Sprite = new Sprite(); addChild(container); var ldr:Loader = new Loader; var urlReq:URLRequest = new URLRequest("SoundPlayer.swf"); ldr.load(urlReq); container.addChild(ldr); ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound); var tf:TextField = new TextField(); tf.htmlText = "<a href = 'event:Mute'>Mute / Unmute</a>"; addChild(tf); var mySoundTransform:SoundTransform = new SoundTransform(); mySoundTransform.volume = 1; tf.addEventListener(MouseEvent.CLICK, mute); function mute(event:MouseEvent):void { if (mySoundTransform.volume == 0) { mySoundTransform.volume = 1; } else { mySoundTransform.volume = 0; } container.soundTransform = mySoundTransform; } function urlNotFound(event:IOErrorEvent):void { trace("The URL was not found."); }
useHandCursor | propriedade |
useHandCursor:Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0 |
Um valor booliano que indica se a mão que aponta (cursor de mão) aparece quando o mouse passa sobre uma entidade gráfica em que a propriedade buttonMode
esteja definida como true
. O valor padrão da propriedade useHandCursor
é true
. Se useHandCursor
está definida como true
, a mão que aponta usada para botões aparecerá quando o mouse rolar sobre uma entidade gráfica de botão. Se useHandCursor
for false
, o ponteiro de seta será usado.
A propriedade useHandCursor
pode ser alterada a qualquer momento; a entidade gráfica modificada usa imediatamente a nova aparência do cursor.
Observação: No Flex ou no Flash Builder, se o seu fantasma tiver fantasmas filhos, talvez convenha definir a propriedade mouseChildren
como false
. Por exemplo, se desejar que o cursor de mão seja exibido sobre um controle Flex<mx:Label>, defina as propriedades useHandCursor
e buttonMode
como true
, e a propriedade mouseChildren
como false
.
Implementação
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
buttonMode
como true
para ambas, mas define a propriedade useHandCursor
como true
para uma e como false
para a outra. Quando você compilar e executar o aplicativo, ambas as entidades gráficas responderão como botões (e serão inclusas na ordem de tabulação), mas apenas aquela na qual useHandCursor
está definida como true
usa o cursor de mão:
import flash.display.Sprite; import flash.events.MouseEvent; var circle1:Sprite = new Sprite(); circle1.graphics.beginFill(0xFFCC00); circle1.graphics.drawCircle(40, 40, 40); circle1.buttonMode = true; circle1.useHandCursor = true; circle1.addEventListener(MouseEvent.CLICK, clicked); var circle2:Sprite = new Sprite(); circle2.graphics.beginFill(0xFFCC00); circle2.graphics.drawCircle(120, 40, 40); circle2.buttonMode = true; circle2.useHandCursor = false; circle2.addEventListener(MouseEvent.CLICK, clicked); function clicked(event:MouseEvent):void { trace ("Click!"); } addChild(circle1); addChild(circle2);
Sprite | () | Construtor |
public function Sprite()
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Cria uma nova ocorrência de Sprite. Depois de criar a ocorrência de Sprite, chame o método DisplayObjectContainer.addChild()
ou DisplayObjectContainer.addChildAt()
para adicionar Sprite a um DisplayObjectContainer-pai.
startDrag | () | método |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Permite ao usuário arrastar a entidade gráfica especificada. A entidade gráfica permanece arrastável até ser explicitamente interrompida por meio de uma chamada ao método Sprite.stopDrag()
ou até que outra entidade gráfica se torne arrastável. Apenas uma entidade gráfica por vez pode ser arrastável.
Os objetos de exibição tridimensional seguem o mouse e Sprite.startDrag()
move o objeto dentro do plano tridimensional definido pelo objeto de exibição. Ou, se o objeto de exibição for um objeto bidimensional e filho de um objeto tridimensional, esse objeto bidimensional se moverá dentro do plano tridimensional definido pelo objeto pai tridimensional.
Parâmetros
lockCenter:Boolean (default = false ) — Especifica se a entidade gráfica para arrastar está bloqueada no centro da posição do mouse (true ) ou se está bloqueada no ponto em que o usuário clicou pela primeira vez na entidade gráfica (false ).
| |
bounds:Rectangle (default = null ) — Valor relativo às coordenadas do pai de Sprite que especificam um retângulo de restrição para Sprite.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
círculo
e duas entidades gráficas destino
. O método startDrag()
é chamado na entidade gráfica círculo
quando o usuário posiciona o cursor sobre a entidade gráfica e pressiona o botão do mouse, e o método stopDrag()
é chamado quando o usuário solta o botão do mouse. Permite ao usuário arrastar a entidade gráfica. Quando se solta o botão do mouse, é chamado o método mouseRelease()
, que, por sua vez, rastreia o nome (name
) do objeto dropTarget
– o objeto até o qual o usuário arrastou a entidade gráfica circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
startTouchDrag | () | método |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Deixa o usuário arrastar o sprite especificado em um dispositivo ativado pelo toque. O sprite permanece arrastável até ser explicitamente interrompido por meio de uma chamada ao método Sprite.stopTouchDrag()
ou até que outro sprite se torne arrastável. Apenas uma entidade gráfica por vez pode ser arrastável.
Os objetos de exibição tridimensionais seguem o ponteiro e Sprite.startTouchDrag()
move o objeto dentro do plano tridimensional definido pelo objeto de exibição. Ou, se o objeto de exibição for um objeto bidimensional e filho de um objeto tridimensional, esse objeto bidimensional se moverá dentro do plano tridimensional definido pelo objeto pai tridimensional.
Parâmetros
touchPointID:int — Um número inteiro para destinar ao ponto de toque.
| |
lockCenter:Boolean (default = false ) — Especifica se a entidade gráfica para arrastar está bloqueada no centro da posição do mouse (true ) ou se está bloqueada no ponto em que o usuário clicou pela primeira vez na entidade gráfica (false ).
| |
bounds:Rectangle (default = null ) — Valor relativo às coordenadas do pai de Sprite que especificam um retângulo de restrição para Sprite.
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
stopDrag | () | método |
public function stopDrag():void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Finaliza o método startDrag()
. Uma entidade gráfica que se tornou arrastável com o método startDrag()
permanecerá nesse estado até que um método stopDrag()
seja adicionado ou até que outra entidade gráfica se torne arrastável. Apenas uma entidade gráfica por vez pode ser arrastável.
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
círculo
e duas entidades gráficas destino
. O método startDrag()
é chamado na entidade gráfica círculo
quando o usuário posiciona o cursor sobre a entidade gráfica e pressiona o botão do mouse, e o método stopDrag()
é chamado quando o usuário solta o botão do mouse. Permite ao usuário arrastar a entidade gráfica. Quando se solta o botão do mouse, é chamado o método mouseRelease()
, que, por sua vez, rastreia o nome (name
) do objeto dropTarget
– o objeto até o qual o usuário arrastou a entidade gráfica circle
:
import flash.display.Sprite; import flash.events.MouseEvent; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(0, 0, 40); var target1:Sprite = new Sprite(); target1.graphics.beginFill(0xCCFF00); target1.graphics.drawRect(0, 0, 100, 100); target1.name = "target1"; var target2:Sprite = new Sprite(); target2.graphics.beginFill(0xCCFF00); target2.graphics.drawRect(0, 200, 100, 100); target2.name = "target2"; addChild(target1); addChild(target2); addChild(circle); circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown) function mouseDown(event:MouseEvent):void { circle.startDrag(); } circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased); function mouseReleased(event:MouseEvent):void { circle.stopDrag(); trace(circle.dropTarget.name); }
stopTouchDrag | () | método |
public function stopTouchDrag(touchPointID:int):void
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Finaliza o método startTouchDrag()
para uso com dispositivos ativados pelo toque. Um Sprite que se tornou arrastável com o método startTouchDrag()
permanecerá nesse estado até que um método stopTouchDrag()
seja adicionado ou até que outro sprite se torne arrastável. Apenas uma entidade gráfica por vez pode ser arrastável.
Parâmetros
touchPointID:int — O número inteiro atribuído ao ponto de toque no método startTouchDrag .
|
Elementos da API relacionados
Exemplo ( Como usar este exemplo )
MySprite.addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin); MySprite.addEventListener(TouchEvent.TOUCH_END, onTouchEnd); function onTouchBegin(e:TouchEvent) { e.target.startTouchDrag(e.touchPointID, false, bg.getRect(this)); trace("touch begin"); } function onTouchEnd(e:TouchEvent) { e.target.stopTouchDrag(e.touchPointID); trace("touch end"); }
- Declare a propriedade
size
(100 x 100 pixels) e a cor do plano de fundo (laranja) para uso posterior no desenho do quadrado. - Em seguida, o construtor cria um novo objeto-
filho
Sprite e o usa para adicionar dois ouvintes de eventos e seus métodos associados:mouseDownHandler()
emouseUpHandler()
. - O objeto-
filho
Sprite é então transmitido ao métododraw()
, que desenha o quadrado laranja. - O filho é inserido na lista de exibição por uma chamada ao método
addChild()
. - Os listeners de evento funcionam como se segue:
mouseDownHandler()
: quando o usuário clica no objeto Sprite, esse método adiciona um ouvinte de evento mouseMove, o métodomouseDownHandler()
que processa os movimentos do mouse. Em seguida, o métodostartDrag()
é chamado, o que permite que o objeto Sprite seja arrastado.mouseUpHandler()
: quando o botão do mouse é solto, o ouvinte de eventos mouseMove é removido e o métodostopDrag()
é chamado, congelando o quadrado laranja no lugar.mouseMoveHandler
: enquanto o botão esquerdo do mouse estiver pressionado, esse método instrui o player a redesenhar continuamente o quadrado laranja.
Observação: Cada um dos métodos do ouvinte de eventos declara uma variável sprite
local, que recebe a propriedade target
do evento.
package { import flash.display.Sprite; import flash.events.*; public class SpriteExample extends Sprite { private var size:uint = 100; private var bgColor:uint = 0xFFCC00; public function SpriteExample() { var child:Sprite = new Sprite(); child.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); child.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); draw(child); addChild(child); } private function mouseDownHandler(event:MouseEvent):void { trace("mouseDownHandler"); var sprite:Sprite = Sprite(event.target); sprite.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.startDrag(); } private function mouseUpHandler(event:MouseEvent):void { trace("mouseUpHandler"); var sprite:Sprite = Sprite(event.target); sprite.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); sprite.stopDrag(); } private function mouseMoveHandler(event:MouseEvent):void { trace("mouseMoveHandler"); event.updateAfterEvent(); } private function draw(sprite:Sprite):void { sprite.graphics.beginFill(bgColor); sprite.graphics.drawRect(0, 0, size, size); sprite.graphics.endFill(); } } }
Wed Jun 13 2018, 11:10 AM Z