| Pacchetto | flash.display |
| Classe | public class Sprite |
| Ereditarietà | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| Sottoclassi | FLVPlayback, FLVPlaybackCaptioning, MovieClip, UIComponent |
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Un oggetto Sprite è simile a un clip filmato, ma non dispone di una linea temporale. Sprite è una classe base appropriata per gli oggetti che non necessitano di una linea temporale. Ad esempio, è indicata per i componenti dell'interfaccia utente (UI) che normalmente non utilizzano la linea temporale.
La classe Sprite è stata introdotta in ActionScript 3.0. È un'alternativa alla funzionalità della classe MovieClip, che mantiene l'intera funzionalità delle versioni precedenti di ActionScript per garantire la compatibilità retroattiva.
Vedere anche
| Proprietà | Definito da | ||
|---|---|---|---|
![]() | accessibilityProperties: AccessibilityProperties
Le opzioni di accessibilità correnti di questo oggetto di visualizzazione.
| DisplayObject | |
![]() | alpha: Number
Indica il valore della trasparenza alfa dell'oggetto specificato.
| DisplayObject | |
![]() | blendMode: String
Un valore della classe BlendMode che specifica il metodo di fusione da utilizzare.
| DisplayObject | |
| buttonMode: Boolean
Specifica la modalità pulsante di questo sprite.
| Sprite | ||
![]() | cacheAsBitmap: Boolean
Se è impostata su true, viene memorizzata nella cache una rappresentazione bitmap interna dell'oggetto di visualizzazione.
| DisplayObject | |
![]() | constructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
| Object | |
![]() | contextMenu: ContextMenu
Specifica il menu di scelta rapida associato all'oggetto.
| InteractiveObject | |
![]() | doubleClickEnabled: Boolean
Specifica se l'oggetto riceve gli eventi doubleClick.
| InteractiveObject | |
| dropTarget: DisplayObject
[sola lettura]
Specifica l'oggetto di visualizzazione sopra il quale viene trascinato lo sprite o sul quale viene rilasciato.
| Sprite | ||
![]() | filters: Array
Un array indicizzato che contiene ogni oggetto filtro attualmente associato all'oggetto di visualizzazione.
| DisplayObject | |
![]() | focusRect: Object
Specifica se l'oggetto visualizza un rettangolo di attivazione.
| InteractiveObject | |
| graphics: Graphics
[sola lettura]
Specifica l'oggetto Graphics che appartiene a questo oggetto Sprite, in cui possono essere eseguiti i comandi di disegno vettoriale.
| Sprite | ||
![]() | height: Number
Indica l'altezza dell'oggetto di visualizzazione espressa in pixel.
| DisplayObject | |
| hitArea: Sprite
Definisce un altro sprite come area attiva di uno sprite.
| Sprite | ||
![]() | loaderInfo: LoaderInfo
[sola lettura]
Restituisce un oggetto LoaderInfo contenente informazioni sul caricamento del file al quale questo oggetto di visualizzazione appartiene.
| DisplayObject | |
![]() | mask: DisplayObject
L'oggetto di visualizzazione chiamante viene mascherato dall'oggetto mask specificato.
| DisplayObject | |
![]() | mouseChildren: Boolean
Determina se gli elementi secondari dell'oggetto sono abilitati per il mouse o meno.
| DisplayObjectContainer | |
![]() | mouseEnabled: Boolean
Specifica se l'oggetto riceve i messaggi relativi al mouse.
| InteractiveObject | |
![]() | mouseX: Number
[sola lettura]
Indica la coordinata x della posizione del mouse, in pixel.
| DisplayObject | |
![]() | mouseY: Number
[sola lettura]
Indica la coordinata y della posizione del mouse, in pixel.
| DisplayObject | |
![]() | name: String
Indica il nome dell'istanza dell'oggetto DisplayObject.
| DisplayObject | |
![]() | numChildren: int
[sola lettura]
Restituisce il numero di elementi secondari di questo oggetto.
| DisplayObjectContainer | |
![]() | opaqueBackground: Object
Specifica se l'oggetto di visualizzazione è opaco con un determinato colore di sfondo.
| DisplayObject | |
![]() | parent: DisplayObjectContainer
[sola lettura]
Indica l'oggetto DisplayObjectContainer che contiene questo oggetto di visualizzazione.
| DisplayObject | |
![]() | prototype: Object
[statico]
Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
| Object | |
![]() | root: DisplayObject
[sola lettura]
Nel caso di un oggetto di visualizzazione all'interno di un file SWF caricato, la proprietà principale è l'oggetto di visualizzazione più in alto nella porzione della struttura dell'elenco di visualizzazione rappresentata da quel file SWF.
| DisplayObject | |
![]() | rotation: Number
Indica la rotazione dell'istanza DisplayObject, espressa in gradi, rispetto alla posizione originale.
| DisplayObject | |
![]() | scale9Grid: Rectangle
La griglia di modifica in scala attualmente attiva.
| DisplayObject | |
![]() | scaleX: Number
Indica la scala orizzontale (percentuale) dell'oggetto applicata dal punto di registrazione.
| DisplayObject | |
![]() | scaleY: Number
Indica la scala verticale (percentuale) di un oggetto applicata dal punto di registrazione dell'oggetto.
| DisplayObject | |
![]() | scrollRect: Rectangle
I limiti del rettangolo di scorrimento dell'oggetto di visualizzazione.
| DisplayObject | |
| soundTransform: SoundTransform
Controlla il suono nello sprite.
| Sprite | ||
![]() | stage: Stage
[sola lettura]
Lo stage dell'oggetto di visualizzazione.
| DisplayObject | |
![]() | tabChildren: Boolean
Determina se gli elementi secondari dell'oggetto sono abilitati per la tabulazione.
| DisplayObjectContainer | |
![]() | tabEnabled: Boolean
Specifica se questo oggetto è incluso nell'ordine di tabulazione.
| InteractiveObject | |
![]() | tabIndex: int
Specifica l'ordine di tabulazione degli oggetti in un file SWF.
| InteractiveObject | |
![]() | textSnapshot: TextSnapshot
[sola lettura]
Restituisce un oggetto TextSnapshot per questa istanza DisplayObjectContainer.
| DisplayObjectContainer | |
![]() | transform: Transform
Un oggetto con proprietà relative alla matrice, alla trasformazione del colore e ai limiti di pixel di un oggetto di visualizzazione.
| DisplayObject | |
| useHandCursor: Boolean
Un valore booleano che indica se viene visualizzato un puntatore a forma di mano quando il mouse passa sopra uno sprite in cui la proprietà buttonMode è impostata su true.
| Sprite | ||
![]() | visible: Boolean
Determina se l'oggetto di visualizzazione è visibile o meno.
| DisplayObject | |
![]() | width: Number
Indica la larghezza dell'oggetto di visualizzazione espressa in pixel.
| DisplayObject | |
![]() | x: Number
Indica la coordinata x dell'istanza DisplayObject relativa alle coordinate locali del DisplayObjectContainer principale.
| DisplayObject | |
![]() | y: Number
Indica la coordinata y dell'istanza DisplayObject relativa alle coordinate locali del DisplayObjectContainer principale.
| DisplayObject | |
| Metodo | Definito da | ||
|---|---|---|---|
|
Sprite()
Crea una nuova istanza Sprite.
| Sprite | ||
![]() |
Aggiunge un'istanza secondaria DisplayObject a questa istanza DisplayObjectContainer.
| DisplayObjectContainer | |
![]() |
Aggiunge un'istanza secondaria DisplayObject a questa istanza DisplayObjectContainer.
| DisplayObjectContainer | |
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
| EventDispatcher | |
![]() |
Indica se le restrizioni di sicurezza possono determinare l'omissione di eventuali oggetti di visualizzazione dall'elenco restituito dalla chiamata al metodo DisplayObjectContainer.getObjectsUnderPoint() con il punto point specificato.
| DisplayObjectContainer | |
![]() |
Determina se l'oggetto di visualizzazione specificato è un elemento secondario dell'istanza DisplayObjectContainer oppure è l'istanza stessa.
| DisplayObjectContainer | |
![]() |
Invia un evento nel flusso di eventi.
| EventDispatcher | |
![]() |
Restituisce un rettangolo che definisce l'area dell'oggetto di visualizzazione relativa al sistema di coordinate dell'oggetto targetCoordinateSpace.
| DisplayObject | |
![]() |
Restituisce l'istanza dell'oggetto di visualizzazione secondario che si trova in corrispondenza della posizione di indice specificata.
| DisplayObjectContainer | |
![]() |
Restituisce l'oggetto di visualizzazione secondario al quale corrisponde il nome specificato.
| DisplayObjectContainer | |
![]() |
Restituisce la posizione di indice di un'istanza DisplayObject secondaria.
| DisplayObjectContainer | |
![]() |
Restituisce un array di oggetti che si trovano sotto il punto specificato e sono elementi secondari (di uno o più livelli inferiori) di questa istanza DisplayObjectContainer.
| DisplayObjectContainer | |
![]() |
Restituisce un rettangolo che definisce i bordi dell'oggetto di visualizzazione in base al sistema di coordinate definito dal parametro targetCoordinateSpace, esclusi gli eventuali tratti presenti sulle forme.
| DisplayObject | |
![]() |
Converte le coordinate dello stage (globali) in quelle (locali) dell'oggetto di visualizzazione per l'oggetto Point.
| DisplayObject | |
![]() |
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
| EventDispatcher | |
![]() |
Indica se per un oggetto è definita una proprietà specifica.
| Object | |
![]() |
Valuta l'oggetto di visualizzazione per stabilire se si sovrappone o si interseca con l'oggetto di visualizzazione obj.
| DisplayObject | |
![]() |
Valuta l'oggetto di visualizzazione per stabilire se si sovrappone o si interseca con il punto specificato dai parametri x e y.
| DisplayObject | |
![]() |
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
| Object | |
![]() |
Converte le coordinate dell'oggetto di visualizzazione (locali) in quelle dello stage (globali) per l'oggetto Point.
| DisplayObject | |
![]() |
Indica se la proprietà specificata esiste ed è enumerabile.
| Object | |
![]() |
Rimuove l'istanza DisplayObject secondaria specificata dall'elenco degli elementi secondari dell'istanza DisplayObjectContainer.
| DisplayObjectContainer | |
![]() |
Rimuove un'istanza DisplayObject secondaria dalla posizione di indice specificata nell'elenco degli elementi secondari di DisplayObjectContainer.
| DisplayObjectContainer | |
![]() |
Rimuove un listener dall'oggetto EventDispatcher.
| EventDispatcher | |
![]() |
Cambia la posizione di un elemento secondario nel contenitore di oggetto di visualizzazione.
| DisplayObjectContainer | |
![]() |
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
| Object | |
|
Consente all'utente di trascinare lo sprite specificato.
| Sprite | ||
|
Termina il metodo startDrag().
| Sprite | ||
![]() |
Scambia lo z-order (ordine di profondità) degli oggetti secondari specificati.
| DisplayObjectContainer | |
![]() |
Scambia lo z-order (ordine di profondità) degli oggetti secondari nelle due posizioni di indice specificate nell'elenco degli elementi secondari.
| DisplayObjectContainer | |
![]() |
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
| Object | |
![]() |
Restituisce il valore di base dell'oggetto specificato.
| Object | |
![]() |
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
| EventDispatcher | |
| buttonMode | proprietà |
buttonMode:Boolean [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Specifica la modalità pulsante di questo sprite. Se è true, questo sprite si comporta come un pulsante, ovvero attiva la visualizzazione del puntatore a forma di mano quando il mouse passa sopra lo sprite e può ricevere un evento click se viene premuto il tasto Invio o la barra spaziatrice quando lo sprite è l'elemento attivo. È possibile annullare la visualizzazione del puntatore a forma di mano impostando la proprietà useHandCursor su false, in modo da visualizzare il puntatore standard.
Benché sia meglio utilizzare la classe SimpleButton per creare dei pulsanti, la proprietà buttonMode consente di conferire a uno sprite alcune caratteristiche simili a quelle di un pulsante. Per includere uno sprite nell'ordine di tabulazione, impostare la proprietà tabEnabled (ereditata dalla classe InteractiveObject e impostata sul valore predefinito false) su true. Inoltre, scegliere se gli elementi secondari dello sprite devono essere abilitati per il mouse. La maggior parte dei pulsanti non abilita l'interattività con il mouse per gli elementi secondari perché ciò ha l'effetto di confondere il flusso degli eventi. Per disabilitare l'interattività con il mouse per tutti gli oggetti secondari, è necessario impostare la proprietà mouseChildren (ereditata dalla classe DisplayObjectContainer) su false.
Se si utilizza la proprietà buttonMode con la classe MovieClip (che è una sottoclasse di Sprite), il pulsante potrebbe presentare una funzionalità più estesa. Se si includono dei fotogrammi con le etichette _up, _over e _down, Flash Player fornisce le modifiche di stato automatiche (caratteristica simile a quella disponibile nelle versioni precedenti di ActionScript per i clip filmato utilizzati come pulsanti). Queste modifiche di stato automatiche non sono disponibili per gli sprite, che sono sprovvisti di linea temporale e quindi non hanno fotogrammi cui assegnare un'etichetta.
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Vedere anche
buttonMode su true per uno e su false per l'altro. Quando si compila ed esegue l'applicazione, entrambi gli sprite rispondono agli eventi del mouse ma solo quello in cui l'impostazione di buttonMode è true.
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 | proprietà |
dropTarget:DisplayObject [sola lettura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Specifica l'oggetto di visualizzazione sopra il quale viene trascinato lo sprite o sul quale viene rilasciato.
public function get dropTarget():DisplayObject
Vedere anche
circle e due sprite target. Il metodo startDrag() viene chiamato sullo sprite circle quando l'utente posiziona il puntatore sopra lo sprite e preme il pulsante del mouse, mentre il metodo stopDrag() viene chiamato quando l'utente rilascia il pulsante del mouse. In questo modo all'utente è consentito di trascinare lo sprite. Al rilascio del pulsante del mouse viene chiamato il metodo mouseRelease(), il quale a propria volta traccia il name dell'oggetto dropTarget (oggetto su cui l'utente ha trascinato lo sprite circle):
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);
var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";
var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";
addChild(target1);
addChild(target2);
addChild(circle);
circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown)
function mouseDown(event:MouseEvent):void {
circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
function mouseReleased(event:MouseEvent):void {
circle.stopDrag();
trace(circle.dropTarget.name);
}| graphics | proprietà |
graphics:Graphics [sola lettura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Specifica l'oggetto Graphics che appartiene a questo oggetto Sprite, in cui possono essere eseguiti i comandi di disegno vettoriale.
public function get graphics():Graphics
circle e ne utilizza la proprietà graphics per disegnare un riempimento giallo (0xFFCC00):
import flash.display.Sprite; var circle:Sprite = new Sprite(); circle.graphics.beginFill(0xFFCC00); circle.graphics.drawCircle(40, 40, 40); addChild(circle);
| hitArea | proprietà |
hitArea:Sprite [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Definisce un altro sprite come area attiva di uno sprite. Se la proprietà hitArea non esiste oppure è null o undefined, lo sprite stesso viene utilizzato come area attiva. Il valore della proprietà hitArea può fungere da riferimento per un oggetto Sprite.
È possibile modificare la proprietà hitArea in qualsiasi momento; lo sprite modificato utilizza immediatamente il nuovo comportamento dell'area attiva. Non è necessario che lo sprite designato come area attiva sia visibile; la sua forma grafica, anche non visibile, viene rilevata come area attiva.
Nota: occorre impostare su false la proprietà mouseEnabled dello sprite designato come area attiva. In caso contrario, il pulsante sprite potrebbe non funzionare perché non riceverebbe gli eventi del mouse, che sarebbero invece ricevuti dallo sprite designato come area attiva.
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
circle e uno sprite square. Lo sprite square funge da hitArea per lo sprite circle. Pertanto, quando l'utente fa clic sullo sprite square, lo sprite circle invia un evento click:
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);
var square:Sprite = new Sprite();
square.graphics.beginFill(0xCCFF00);
square.graphics.drawRect(200, 0, 100, 100);
circle.hitArea = square;
square.mouseEnabled = false;
circle.addEventListener(MouseEvent.CLICK, clicked);
function clicked(event:MouseEvent):void{
trace(event.target == circle); // true
trace(event.target == square); // false
}
addChild(circle);
addChild(square);| soundTransform | proprietà |
soundTransform:SoundTransform [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Controlla il suono nello sprite.
public function get soundTransform():SoundTransform
public function set soundTransform(value:SoundTransform):void
Vedere anche
container e aggiunge un oggetto Loader al suo elenco di elementi secondari. L'oggetto Loader carica un file SWF. Quando l'utente fa clic sul collegamento nel campo di testo tf true, il metodo mute() imposta la proprietà volume della proprietà soundTransform dello sprite container:
import flash.display.Sprite;
import flash.display.Loader;
import flash.events.IOErrorEvent;
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.text.TextField;
import flash.media.SoundTransform;
var container:Sprite = new Sprite();
addChild(container);
var ldr:Loader = new Loader;
var urlReq:URLRequest = new URLRequest("SoundPlayer.swf");
ldr.load(urlReq);
container.addChild(ldr);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, urlNotFound);
var tf:TextField = new TextField();
tf.htmlText = "<a href = 'event:Mute'>Mute / Unmute</a>";
addChild(tf);
var mySoundTransform:SoundTransform = new SoundTransform();
mySoundTransform.volume = 1;
tf.addEventListener(MouseEvent.CLICK, mute);
function mute(event:MouseEvent):void {
if (mySoundTransform.volume == 0) {
mySoundTransform.volume = 1;
} else {
mySoundTransform.volume = 0;
}
container.soundTransform = mySoundTransform;
}
function urlNotFound(event:IOErrorEvent):void {
trace("The URL was not found.");
}| useHandCursor | proprietà |
useHandCursor:Boolean [lettura-scrittura]
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Un valore booleano che indica se viene visualizzato un puntatore a forma di mano quando il mouse passa sopra uno sprite in cui la proprietà buttonMode è impostata su true. Il valore predefinito della proprietà useHandCursor è true. Se useHandCursor è impostata su true, viene visualizzato il puntatore a forma di mano quando il mouse passa sopra uno sprite pulsante. Se useHandCursor è false, viene utilizzato il puntatore a forma di freccia.
È possibile modificare la proprietà useHandCursor in qualsiasi momento; allo sprite modificato viene immediatamente associato il nuovo aspetto del cursore.
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Vedere anche
buttonMode su true per entrambi, e tuttavia imposta la proprietà useHandCursor su true per uno e su false per l'altro. Quando si compila ed esegue l'applicazione, entrambi gli sprite rispondono come pulsanti (e sono inclusi nell'ordine di tabulazione), ma solo quello in cui l'impostazione di useHandCursor è true utilizza il puntatore a forma di mano.
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle1:Sprite = new Sprite();
circle1.graphics.beginFill(0xFFCC00);
circle1.graphics.drawCircle(40, 40, 40);
circle1.buttonMode = true;
circle1.useHandCursor = true;
circle1.addEventListener(MouseEvent.CLICK, clicked);
var circle2:Sprite = new Sprite();
circle2.graphics.beginFill(0xFFCC00);
circle2.graphics.drawCircle(120, 40, 40);
circle2.buttonMode = true;
circle2.useHandCursor = false;
circle2.addEventListener(MouseEvent.CLICK, clicked);
function clicked(event:MouseEvent):void {
trace("Click!");
}
addChild(circle1);
addChild(circle2);| Sprite | () | Funzione di costruzione |
public function Sprite()
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Crea una nuova istanza Sprite. Dopo aver creato l'istanza Sprite, chiamare il metodo DisplayObjectContainer.addChild() o DisplayObjectContainer.addChildAt() per aggiungere lo sprite a un DisplayObjectContainer principale.
| startDrag | () | metodo |
public function startDrag(lockCenter:Boolean = false, bounds:Rectangle = null):void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Consente all'utente di trascinare lo sprite specificato. È possibile trascinare lo sprite fino a quando il trascinamento non viene interrotto esplicitamente mediante una chiamata a Sprite.stopDrag() o non viene reso trascinabile un altro sprite. È possibile trascinare un solo sprite alla volta.
Parametri
lockCenter:Boolean (default = false) — Specifica che lo sprite trascinabile è bloccato al centro della posizione del mouse (true) oppure bloccato nel punto in cui l'utente aveva fatto clic sullo sprite la prima volta (false).
|
|
bounds:Rectangle (default = null) — Valore relativo alle coordinate dell'elemento principale dello sprite, che specificano un rettangolo di delimitazione per lo sprite.
|
Vedere anche
circle e due sprite target. Il metodo startDrag() viene chiamato sullo sprite circle quando l'utente posiziona il puntatore sopra lo sprite e preme il pulsante del mouse, mentre il metodo stopDrag() viene chiamato quando l'utente rilascia il pulsante del mouse. In questo modo all'utente è consentito di trascinare lo sprite. Al rilascio del pulsante del mouse viene chiamato il metodo mouseRelease(), il quale a propria volta traccia il name dell'oggetto dropTarget (oggetto su cui l'utente ha trascinato lo sprite circle):
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);
var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";
var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";
addChild(target1);
addChild(target2);
addChild(circle);
circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown)
function mouseDown(event:MouseEvent):void {
circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
function mouseReleased(event:MouseEvent):void {
circle.stopDrag();
trace(circle.dropTarget.name);
}| stopDrag | () | metodo |
public function stopDrag():void
| Versione linguaggio: | ActionScript 3.0 |
| Versione lettore: | Flash Player 9 |
Termina il metodo startDrag(). Uno sprite che è stato reso trascinabile mediante il metodo startDrag() rimane tale finché non viene aggiunto un metodo stopDrag() o fino a quando un altro sprite non diventa trascinabile. È possibile trascinare un solo sprite alla volta.
Vedere anche
circle e due sprite target. Il metodo startDrag() viene chiamato sullo sprite circle quando l'utente posiziona il puntatore sopra lo sprite e preme il pulsante del mouse, mentre il metodo stopDrag() viene chiamato quando l'utente rilascia il pulsante del mouse. In questo modo all'utente è consentito di trascinare lo sprite. Al rilascio del pulsante del mouse viene chiamato il metodo mouseRelease(), il quale a propria volta traccia il name dell'oggetto dropTarget (oggetto su cui l'utente ha trascinato lo sprite circle):
import flash.display.Sprite;
import flash.events.MouseEvent;
var circle:Sprite = new Sprite();
circle.graphics.beginFill(0xFFCC00);
circle.graphics.drawCircle(0, 0, 40);
var target1:Sprite = new Sprite();
target1.graphics.beginFill(0xCCFF00);
target1.graphics.drawRect(0, 0, 100, 100);
target1.name = "target1";
var target2:Sprite = new Sprite();
target2.graphics.beginFill(0xCCFF00);
target2.graphics.drawRect(0, 200, 100, 100);
target2.name = "target2";
addChild(target1);
addChild(target2);
addChild(circle);
circle.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown)
function mouseDown(event:MouseEvent):void {
circle.startDrag();
}
circle.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
function mouseReleased(event:MouseEvent):void {
circle.stopDrag();
trace(circle.dropTarget.name);
}size (100 x 100 pixel) e il colore di sfondo (arancione) da utilizzare successivamente durante il disegno del quadrato.child e lo utilizza per aggiungere due listener di eventi e i metodi a essi associati: mouseDownHandler() e mouseUpHandler().child viene quindi passato al metodo draw(), che disegna il quadrato arancione.addChild(). mouseDownHandler(): quando l'utente fa clic sull'oggetto Sprite, il metodo aggiunge un listener di eventi mouseMove (il metodo mouseMoveHandler()) che elabora i movimenti del mouse. Viene quindi chiamato il metodo startDrag(), che consente di trascinare l'oggetto Sprite.mouseUpHandler(): quando il pulsante del mouse viene rilasciato, il listener di eventi mouseMove viene rimosso e viene chiamato il metodo stopDrag().mouseMoveHandler: fintanto che il pulsante sinistro del mouse viene tenuto premuto, questo metodo indica a Flash Player di ridisegnare continuamente il quadrato arancione.Nota: ognuno dei metodi dei listener di eventi dichiara una variabile sprite locale, che viene assegnata alla proprietà target dell'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();
}
}
}
Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti
Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/display/Sprite.html