Pacchetto | flash.display |
Classe | public class Sprite |
Ereditarietà | Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Sottoclassi | DownloadProgressBar, FlexSprite, FLVPlayback, FLVPlaybackCaptioning, FTETextField, HTMLLoader, LayoutTargetSprite, MediaPlayerSprite, MovieClip, Preloader, ProLoader, SparkDownloadProgressBar, SplashScreen, TLFTextField, UIComponent |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Altri esempi
Esempio di oggetto di visualizzazione: SpriteArranger
Altre informazioni
Elementi fondamentali della programmazione degli elementi visivi
Classi di visualizzazione di base
Operazioni con gli oggetti di visualizzazione
Scelta di una sottoclasse DisplayObject
Proprietà | Definito da | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
L'implementazione di accessibilità corrente (AccessibilityImplementation) di questa istanza InteractiveObject. | InteractiveObject | ||
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 | ||
blendShader : Shader [sola scrittura]
Imposta uno shader utilizzato per la fusione dei colori di primo piano e sfondo. | DisplayObject | ||
buttonMode : Boolean
Specifica la modalità pulsante di questo sprite. | Sprite | ||
cacheAsBitmap : Boolean
Se è impostata su true, nella cache dei runtime Flash viene memorizzata una rappresentazione bitmap interna dell'oggetto di visualizzazione. | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
Se il valore è diverso da null, questo oggetto Matrix definisce il modo in cui viene eseguito il rendering di un oggetto di visualizzazione quando cacheAsBitmap è impostato su true. | DisplayObject | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
contextMenu : NativeMenu
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 | ||
metaData : Object
Ottiene l’oggetto di metadati dell’istanza DisplayObject se i metadati sono stati memorizzati insieme all’istanza di questo DisplayObject nel file SWF mediante un tag PlaceObject4. | DisplayObject | ||
mouseChildren : Boolean
Determina se gli elementi secondari dell'oggetto sono abilitati o meno per il mouse o per il dispositivo di input dell'utente. | DisplayObjectContainer | ||
mouseEnabled : Boolean
Specifica se questo oggetto riceve messaggi del mouse o di altri dispositivi di input dell'utente. | InteractiveObject | ||
mouseX : Number [sola lettura]
Indica la coordinata x del mouse o la posizione del dispositivo di input dell'utente, espressa in pixel. | DisplayObject | ||
mouseY : Number [sola lettura]
Indica la coordinata y del mouse o la posizione del dispositivo di input dell'utente, espressa in pixel. | DisplayObject | ||
name : String
Indica il nome dell'istanza dell'oggetto DisplayObject. | DisplayObject | ||
needsSoftKeyboard : Boolean
Specifica se deve essere visualizzata una tastiera virtuale (una tastiera software a video) quando questa istanza InteractiveObject riceve lo stato di attivazione. | InteractiveObject | ||
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 | ||
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 | ||
rotationX : Number
Indica la rotazione dell'asse x dell'istanza DisplayObject, espressa in gradi, rispetto all'orientamento originale relativo al contenitore principale 3D. | DisplayObject | ||
rotationY : Number
Indica la rotazione dell'asse y dell'istanza DisplayObject, espressa in gradi, rispetto all'orientamento originale relativo al contenitore principale 3D. | DisplayObject | ||
rotationZ : Number
Indica la rotazione dell'asse z dell'istanza DisplayObject, espressa in gradi, rispetto all'orientamento originale relativo al contenitore principale 3D. | 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 | ||
scaleZ : Number
Indica la scala di profondità (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 | ||
softKeyboard : String
Controlla l'aspetto della tastiera software. | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
Definisce l’area che deve rimanere visibile sullo schermo quando è visualizzata una tastiera virtuale (non disponibile in iOS). | InteractiveObject | ||
soundTransform : flash.media: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 : flash.text:TextSnapshot [sola lettura]
Restituisce un oggetto TextSnapshot per questa istanza DisplayObjectContainer. | DisplayObjectContainer | ||
transform : flash.geom: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 cursore a forma di mano quando il puntatore 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 | ||
z : Number
Indica la posizione della coordinata z lungo l'asse z dell'istanza DisplayObject relativa al contenitore principale 3D. | 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 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 | ||
Converte un punto bidimensionale dalle coordinate dello stage (globali) in quelle (locali) di un oggetto di visualizzazione tridimensionale. | 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 il riquadro di delimitazione dell'oggetto di visualizzazione per verificare se si sovrappone o si interseca con il riquadro di delimitazione dell'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 un punto tridimensionale delle coordinate (locali) dell'oggetto di visualizzazione tridimensionale in un punto bidimensionale nelle coordinate dello stage (globali). | DisplayObject | ||
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 tutte le istanze DisplayObject secondarie dall'elenco degli elementi secondari dell'istanza DisplayObjectContainer. | DisplayObjectContainer | ||
Rimuove un listener dall'oggetto EventDispatcher. | EventDispatcher | ||
Alza una tastiera virtuale. | InteractiveObject | ||
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 | ||
Consente all'utente di trascinare lo sprite specificato su un dispositivo abilitato per il tocco. | Sprite | ||
Interrompe in modo ricorsivo l’esecuzione della linea temporale di qualsiasi MovieClips che ha origine in questo oggetto. | DisplayObjectContainer | ||
Termina il metodo startDrag(). | Sprite | ||
Termina il metodo startTouchDrag(), utilizzato con i dispositivi abilitati per il tocco. | 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 di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
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
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifica la modalità pulsante di questo sprite. Se è true
, questo sprite si comporta come un pulsante, ovvero attiva la visualizzazione del cursore a forma di mano quando il puntatore passa sopra lo sprite. Può ricevere un evento click
se viene premuto il tasto Invio o la barra spaziatrice quando lo sprite è l'elemento attivo. Potete 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, impostate la proprietà tabEnabled
(ereditata dalla classe InteractiveObject e impostata sul valore predefinito false
) su true
. Inoltre, dovete scegliere se gli elementi secondari dello sprite devono essere abilitati per l'input dell'utente. La maggior parte dei pulsanti non abilita l'interattività con l'input dell'utente per gli elementi secondari, perché ciò ha l'effetto di confondere il flusso degli eventi. Per disabilitare l'interattività con l'input dell'utente per tutti gli oggetti secondari, dovete impostare la proprietà mouseChildren
(ereditata dalla classe DisplayObjectContainer) su false
.
Se utilizzate la proprietà buttonMode
con la classe MovieClip (che è una sottoclasse di Sprite), il pulsante potrebbe presentare una funzionalità più estesa. Se includonote 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.
Implementazione
public function get buttonMode():Boolean
public function set buttonMode(value:Boolean):void
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
buttonMode
su true
per uno e su false
per l'altro. Quando compilate ed eseguite 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 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifica l'oggetto di visualizzazione sopra il quale viene trascinato lo sprite o sul quale viene rilasciato.
Implementazione
public function get dropTarget():DisplayObject
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Specifica l'oggetto Graphics che appartiene a questo oggetto Sprite, in cui possono essere eseguiti i comandi di disegno vettoriale.
Implementazione
public function get graphics():Graphics
Esempio ( Come utilizzare questo esempio )
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
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Potete 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: dovete 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 dell'input dell'utente, che sarebbero invece ricevuti dallo sprite designato come area attiva.
Implementazione
public function get hitArea():Sprite
public function set hitArea(value:Sprite):void
Esempio ( Come utilizzare questo esempio )
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:flash.media:SoundTransform
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Controlla il suono nello sprite.
Nota: questa proprietà non ha effetto sul contenuto HTML in un oggetto HTMLControl (in Adobe AIR).
Implementazione
public function get soundTransform():flash.media:SoundTransform
public function set soundTransform(value:flash.media:SoundTransform):void
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0 |
Un valore booleano che indica se viene visualizzato un cursore a forma di mano quando il puntatore 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 puntatore passa sopra uno sprite pulsante. Se useHandCursor
è false
, viene utilizzato il puntatore a forma di freccia.
Potete modificare la proprietà useHandCursor
in qualsiasi momento; allo sprite modificato viene immediatamente associato il nuovo aspetto del cursore.
Nota: in Flex o Flash Builder, se lo sprite contiene degli sprite secondari, può essere opportuno impostare la proprietà mouseChildren
su false
. Ad esempio, se desiderate che un cursore a forma di mano venga visualizzato su un controllo Flex <mx:Label>, impostate le proprietà useHandCursor
e buttonMode
su true
e la proprietà mouseChildren
su false
.
Implementazione
public function get useHandCursor():Boolean
public function set useHandCursor(value:Boolean):void
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
buttonMode
su true
per entrambi, e tuttavia imposta la proprietà useHandCursor
su true
per uno e su false
per l'altro. Quando compilate ed eseguite 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 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
Crea una nuova istanza Sprite. Dopo aver creato l'istanza Sprite, chiamate 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 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Gli oggetti di visualizzazione tridimensionali seguono il puntatore e Sprite.startDrag()
sposta l'oggetto all'interno del pannello tridimensionale definito dall'oggetto di visualizzazione. Oppure, se l'oggetto di visualizzazione è un oggetto bidimensionale e un elemento secondario di un oggetto tridimensionale, l'oggetto bidimensionale si sposta all'interno del pannello tridimensionale definito dall'oggetto principale tridimensionale.
Parametri
lockCenter:Boolean (default = false ) — Specifica se lo sprite trascinabile è bloccato al centro della posizione del puntatore (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.
|
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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); }
startTouchDrag | () | metodo |
public function startTouchDrag(touchPointID:int, lockCenter:Boolean = false, bounds:Rectangle = null):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Consente all'utente di trascinare lo sprite specificato su un dispositivo abilitato per il tocco. Lo sprite può essere trascinato fino a quando tale operazione non viene interrotta esplicitamente mediante una chiamata al metodo Sprite.stopTouchDrag()
o non viene reso trascinabile un altro sprite. È possibile trascinare un solo sprite alla volta.
Gli oggetti di visualizzazione tridimensionali seguono il puntatore e Sprite.startTouchDrag()
sposta l'oggetto all'interno del pannello tridimensionale definito dall'oggetto di visualizzazione. Oppure, se l'oggetto di visualizzazione è un oggetto bidimensionale e un elemento secondario di un oggetto tridimensionale, l'oggetto bidimensionale si sposta all'interno del pannello tridimensionale definito dall'oggetto principale tridimensionale.
Parametri
touchPointID:int — Un numero intero da assegnare al punto di tocco.
| |
lockCenter:Boolean (default = false ) — Specifica se lo sprite trascinabile è bloccato al centro della posizione del puntatore (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.
|
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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 | () | metodo |
public function stopDrag():void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 9, AIR 1.0, Flash Lite 4 |
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.
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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); }
stopTouchDrag | () | metodo |
public function stopTouchDrag(touchPointID:int):void
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | Flash Player 10.1, AIR 2, Flash Lite 4 |
Termina il metodo startTouchDrag()
, utilizzato con i dispositivi abilitati per il tocco. Uno sprite reso trascinabile mediante il metodo startTouchDrag()
rimane tale finché non viene aggiunto un metodo stopTouchDrag()
o fino a quando un altro sprite non diventa trascinabile. È possibile trascinare un solo sprite alla volta.
Parametri
touchPointID:int — Il numero intero assegnato al punto di tocco nel metodo startTouchDrag .
|
Elementi API correlati
Esempio ( Come utilizzare questo esempio )
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"); }
- Dichiarate la proprietà
size
(100 x 100 pixel) e il colore di sfondo (arancione) da utilizzare successivamente durante il disegno del quadrato. - La funzione di costruzione crea quindi un oggetto Sprite
child
e lo utilizza per aggiungere due listener di eventi e i metodi a essi associati:mouseDownHandler()
emouseUpHandler()
. - L'oggetto Sprite
child
viene quindi passato al metododraw()
, che disegna il quadrato arancione. - L'elemento secondario viene inserito nell'elenco di visualizzazione da una chiamata al metodo
addChild()
. - I listener di eventi funzionano nel modo seguente:
mouseDownHandler()
: quando l'utente fa clic sull'oggetto Sprite, il metodo aggiunge un listener di eventi mouseMove (il metodomouseMoveHandler()
) che elabora i movimenti del mouse. Viene quindi chiamato il metodostartDrag()
, 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 metodostopDrag()
.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(); } } }
Tue Jun 12 2018, 02:44 PM Z