Pacchetto | flash.events |
Classe | public class FocusEvent |
Ereditarietà | FocusEvent Event Object |
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
-
FocusEvent.FOCUS_IN
-
FocusEvent.FOCUS_OUT
-
FocusEvent.KEY_FOCUS_CHANGE
-
FocusEvent.MOUSE_FOCUS_CHANGE
Proprietà | Definito da | ||
---|---|---|---|
bubbles : Boolean [sola lettura]
Indica se un evento è un evento di bubbling. | Event | ||
cancelable : Boolean [sola lettura]
Indica se il comportamento associato all'evento può essere impedito. | Event | ||
constructor : Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto. | Object | ||
currentTarget : Object [sola lettura]
L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. | Event | ||
direction : String
Specifica la direzione di attivazione di un evento focusIn. | FocusEvent | ||
eventPhase : uint [sola lettura]
La fase attuale del flusso di eventi. | Event | ||
isRelatedObjectInaccessible : Boolean
Se è true, la proprietà relatedObject viene impostata su null per motivi riconducibili alle sandbox. | FocusEvent | ||
keyCode : uint
Il valore del codice tasto del tasto premuto per attivare un evento keyFocusChange. | FocusEvent | ||
relatedObject : InteractiveObject
Un riferimento all'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. | FocusEvent | ||
shiftKey : Boolean
Indica se il modificatore del tasto Maiusc è attivato; in questo caso il valore è true. | FocusEvent | ||
target : Object [sola lettura]
Il target dell'evento. | Event | ||
type : String [sola lettura]
Il tipo di evento. | Event |
Metodo | Definito da | ||
---|---|---|---|
FocusEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, relatedObject:InteractiveObject = null, shiftKey:Boolean = false, keyCode:uint = 0, direction:String = "none")
Crea un oggetto Event con informazioni specifiche relative agli eventi di attivazione. | FocusEvent | ||
[override]
Crea una copia dell'oggetto FocusEvent e imposta il valore di ogni proprietà in modo che corrisponda a quello dell'originale. | FocusEvent | ||
Una funzione dell'utilità per l'implementazione del metodo toString() in classi Event ActionScript 3.0 personalizzate. | Event | ||
Indica se per un oggetto è definita una proprietà specifica. | Object | ||
Verifica se sull'evento è stato chiamato il metodo preventDefault(). | Event | ||
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro. | Object | ||
Annulla il comportamento predefinito di un evento se tale comportamento può essere annullato. | Event | ||
Indica se la proprietà specificata esiste ed è enumerabile. | Object | ||
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche. | Object | ||
Impedisce l'elaborazione di tutti i listener di eventi nel nodo corrente e in tutti i nodi successivi del flusso di eventi. | Event | ||
Impedisce l'elaborazione di tutti i listener di eventi nei nodi del flusso di eventi successivi a quello corrente. | Event | ||
Restituisce la rappresentazione in formato stringa di questo oggetto, formattato in base alle convenzioni specifiche per le versioni localizzate. | Object | ||
[override]
Restituisce una stringa che contiene tutte le proprietà dell'oggetto FocusEvent. | FocusEvent | ||
Restituisce il valore di base dell'oggetto specificato. | Object |
Costante | Definito da | ||
---|---|---|---|
FOCUS_IN : String = "focusIn" [statico]
Definisce il valore della proprietà type di un oggetto evento focusIn. | FocusEvent | ||
FOCUS_OUT : String = "focusOut" [statico]
Definisce il valore della proprietà type di un oggetto evento focusOut. | FocusEvent | ||
KEY_FOCUS_CHANGE : String = "keyFocusChange" [statico]
Definisce il valore della proprietà type di un oggetto evento keyFocusChange. | FocusEvent | ||
MOUSE_FOCUS_CHANGE : String = "mouseFocusChange" [statico]
Definisce il valore della proprietà type di un oggetto evento mouseFocusChange. | FocusEvent |
direction | proprietà |
isRelatedObjectInaccessible | proprietà |
isRelatedObjectInaccessible:Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 10, Flash Lite 4 |
Se è true
, la proprietà relatedObject
viene impostata su null
per motivi riconducibili alle sandbox. Se il valore nominale di relatedObject
è un riferimento a DisplayObject in un'altra sandbox, relatedObject
viene impostato su null
a meno che non vi sia autorizzazione in entrambe le direzioni attraverso questa sandbox. L'autorizzazione si stabilisce chiamando Security.allowDomain()
da un file SWF o fornendo un file di criteri dal server di un file di immagine e impostando la proprietà LoaderContext.checkPolicyFile
quando si carica l'immagine.
Implementazione
public function get isRelatedObjectInaccessible():Boolean
public function set isRelatedObjectInaccessible(value:Boolean):void
Elementi API correlati
keyCode | proprietà |
relatedObject | proprietà |
relatedObject:InteractiveObject
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Un riferimento all'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. Ad esempio, quando si verifica un evento focusOut
, la proprietà relatedObject
rappresenta l'istanza InteractiveObject che è stata attivata.
Il valore di questa proprietà può essere null
in due casi: se non vi è un oggetto correlato oppure se esiste un oggetto correlato ma si trova in una sandbox a cui non si può accedere. Per individuare il motivo, utilizzate la proprietà isRelatedObjectInaccessible()
.
Implementazione
public function get relatedObject():InteractiveObject
public function set relatedObject(value:InteractiveObject):void
Elementi API correlati
shiftKey | proprietà |
shiftKey:Boolean
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Indica se il modificatore del tasto Maiusc è attivato; in questo caso il valore è true
. In caso contrario, il valore è false
. Questa proprietà è utilizzata solo se FocusEvent è di tipo keyFocusChange
.
Implementazione
public function get shiftKey():Boolean
public function set shiftKey(value:Boolean):void
FocusEvent | () | Funzione di costruzione |
public function FocusEvent(type:String, bubbles:Boolean = true, cancelable:Boolean = false, relatedObject:InteractiveObject = null, shiftKey:Boolean = false, keyCode:uint = 0, direction:String = "none")
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crea un oggetto Event con informazioni specifiche relative agli eventi di attivazione. Gli oggetti evento vengono passati ai listener di eventi come parametri.
Parametritype:String — Il tipo di evento. I valori possibili sono: FocusEvent.FOCUS_IN , FocusEvent.FOCUS_OUT , FocusEvent.KEY_FOCUS_CHANGE e FocusEvent.MOUSE_FOCUS_CHANGE .
| |
bubbles:Boolean (default = true ) — Determina se l'oggetto Event partecipa alla fase di bubbling del flusso di eventi.
| |
cancelable:Boolean (default = false ) — Determina se l'oggetto Event può essere annullato.
| |
relatedObject:InteractiveObject (default = null ) — Indica l'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. Ad esempio, quando si verifica un evento focusIn , la proprietà relatedObject rappresenta l'istanza InteractiveObject che è stata disattivata.
| |
shiftKey:Boolean (default = false ) — Indica se il modificatore del tasto Maiusc è attivato.
| |
keyCode:uint (default = 0 ) — Indica il codice del tasto premuto per attivare un evento keyFocusChange .
| |
direction:String (default = "none ") — Indica da quale direzione l'oggetto interattivo target è attivato. Impostato su FocusDirection.NONE (il valore predefinito) per tutti gli eventi diversi da focusIn .
|
Elementi API correlati
clone | () | metodo |
override public function clone():Event
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Crea una copia dell'oggetto FocusEvent e imposta il valore di ogni proprietà in modo che corrisponda a quello dell'originale.
RestituisceEvent — Un nuovo oggetto FocusEvent con proprietà dai valori identici a quelli dell'originale.
|
toString | () | metodo |
override public function toString():String
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Restituisce una stringa che contiene tutte le proprietà dell'oggetto FocusEvent. La stringa ha il seguente formato:
[FocusEvent type=valore bubbles=valore cancelable=valore relatedObject=valore shiftKey=valore] keyCode=valore]
String — Una stringa che contiene tutte le proprietà dell'oggetto FocusEvent.
|
FOCUS_IN | Costante |
public static const FOCUS_IN:String = "focusIn"
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Definisce il valore della proprietà type
di un oggetto evento focusIn
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | true |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
keyCode | 0; valido solo per gli eventi keyFocusChange . |
relatedObject | L'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. |
shiftKey | false ; valido solo per gli eventi keyFocusChange . |
target | L'istanza InteractiveObject che è appena stata attivata. Il target non è sempre l'oggetto nell'elenco di visualizzazione che ha registrato il listener di eventi. Utilizzate la proprietà currentTarget per accedere all'oggetto dell'elenco di visualizzazione che sta elaborando l'evento.
|
direction | La direzione dalla quale l'attivazione è stata assegnata. Questa proprietà segnala il valore del parametro direction del metodo assignFocus() dello stage. Se l'attivazione viene modificata mediante altri metodi, il valore sarà sempre FocusDirection.NONE . Valido solo per gli eventi focusIn . Per tutti gli altri eventi di attivazione, il valore sarà FocusDirection.NONE . |
Elementi API correlati
FOCUS_OUT | Costante |
public static const FOCUS_OUT:String = "focusOut"
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Definisce il valore della proprietà type
di un oggetto evento focusOut
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | true |
cancelable | false ; non è presente alcun comportamento predefinito da annullare. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
keyCode | 0; valido solo per gli eventi keyFocusChange . |
relatedObject | L'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. |
shiftKey | false ; valido solo per gli eventi keyFocusChange . |
target | L'istanza InteractiveObject che è appena stata disattivata. Il target non è sempre l'oggetto nell'elenco di visualizzazione che ha registrato il listener di eventi. Utilizzate la proprietà currentTarget per accedere all'oggetto dell'elenco di visualizzazione che sta elaborando l'evento.
|
Elementi API correlati
KEY_FOCUS_CHANGE | Costante |
public static const KEY_FOCUS_CHANGE:String = "keyFocusChange"
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Definisce il valore della proprietà type
di un oggetto evento keyFocusChange
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | true |
cancelable | true ; chiama il metodo preventDefault() per annullare il comportamento predefinito. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
keyCode | Il valore del codice tasto del tasto premuto per attivare un evento keyFocusChange . |
relatedObject | L'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. |
shiftKey | true se il modificatore del tasto Maiusc è attivato; false in caso contrario. |
target | L'istanza corrente di InteractiveObject attivata. Il target non è sempre l'oggetto nell'elenco di visualizzazione che ha registrato il listener di eventi. Utilizzate la proprietà currentTarget per accedere all'oggetto dell'elenco di visualizzazione che sta elaborando l'evento.
|
Elementi API correlati
MOUSE_FOCUS_CHANGE | Costante |
public static const MOUSE_FOCUS_CHANGE:String = "mouseFocusChange"
Versione linguaggio: | ActionScript 3.0 |
Versioni runtime: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Definisce il valore della proprietà type
di un oggetto evento mouseFocusChange
.
Questo evento ha le seguenti proprietà:
Proprietà | Valore |
---|---|
bubbles | true |
cancelable | true ; chiama il metodo preventDefault() per annullare il comportamento predefinito. |
currentTarget | L'oggetto che elabora attivamente l'oggetto Event con un listener di eventi. |
keyCode | 0; valido solo per gli eventi keyFocusChange . |
relatedObject | L'istanza complementare di InteractiveObject che è interessata dal cambiamento di attivazione. |
shiftKey | false ; valido solo per gli eventi keyFocusChange . |
target | L'istanza corrente di InteractiveObject attivata. Il target non è sempre l'oggetto nell'elenco di visualizzazione che ha registrato il listener di eventi. Utilizzate la proprietà currentTarget per accedere all'oggetto dell'elenco di visualizzazione che sta elaborando l'evento.
|
Elementi API correlati
FocusEventExample
e CustomSprite
per mostrare come utilizzare l'attivazione in combinazione con gli elementi disegnati sullo stage per catturare gli eventi e stampare le informazioni. Questo esempio esegue le operazioni seguenti:
- Dichiara le proprietà
child
(di tipo Sprite) echildCount
(di tipo uint). - Un ciclo
for
crea cinque quadrati blu chiaro in corrispondenza delle coordinate (0,0). Inizia dall'assegnazione dichild
a una nuova istanza CustomSprite. Ogni volta che viene creato un oggetto CustomSprite, vengono eseguite le seguenti operazioni:- La proprietà
size
di tipo uint viene impostata su 50 pixel ebgColor
su blu chiaro. - Le proprietà
buttonMode
euseHandCursor
della classe Sprite vengono impostate sutrue
all'interno della funzione di costruzione. - Viene istanziato un listener di eventi di tipo
click
unitamente al sottoscrittoreclickHandler()
associato. Il metodo subscriber crea una variabile localetarget
di tipo Sprite e la assegna a qualsiasi casella su cui si è fatto clic. Lo stato attivo dello stage viene quindi assegnato atarget
. - Viene chiamato il metodo
draw()
, che crea un quadrato di 50 x 50 pixel mediante una chiamata ai metodibeginFill()
,drawRect()
eendFill()
della classe Graphics e alle proprietà dell'istanza.
- La proprietà
- Nel ciclo for viene chiamato il metodo
configureListeners()
, che crea un'istanza di tre listener/subscriber di eventi:focusIn
/focusInHandler()
viene inviato dopo l'eventoclick
per qualsiasi oggetto elenco di visualizzazione (casella) su cui viene fatto clic.focusOut
/focusOutHandler()
viene inviato quando viene fatto clic su un'altra casella o quando lo stato attivo esce dallo stage (ad esempio, facendo clic all'esterno di Flash Player).keyFocusChange
/keyFocusChangeHandler()
viene inviato se si utilizza il tasto Tab o il tasto Freccia destra o Freccia sinistra per selezionare un oggetto elenco di visualizzazione. Il metodokeyFocusChangeHandler()
, tuttavia, intercetta i tasti Freccia sinistra e Freccia destra e chiama il metodopreventDefault()
per disattivarli.
- Nel ciclo
for
ogni quadrato viene aggiunto all'elenco di visualizzazione e visualizzato (tutti nella stesa area) medianteaddChild()
. - La funzione di costruzione chiama quindi
refreshLayout()
, che distribuisce i quadrati arancione nella parte superiore (y = 0) del display, ciascuno separato da 5 pixel.
package { import flash.display.Sprite; import flash.display.DisplayObject; import flash.events.FocusEvent; import flash.events.IEventDispatcher; public class FocusEventExample extends Sprite { private var gutter:uint = 5; private var childCount:uint = 5; public function FocusEventExample() { var child:Sprite; for(var i:uint; i < childCount; i++) { child = new CustomSprite(); configureListeners(child); addChild(child); } refreshLayout(); } private function configureListeners(dispatcher:IEventDispatcher):void { dispatcher.addEventListener(FocusEvent.FOCUS_IN, focusInHandler); dispatcher.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); dispatcher.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); dispatcher.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); } private function refreshLayout():void { var ln:uint = numChildren; var child:DisplayObject = getChildAt(0); var lastChild:DisplayObject = child; for(var i:uint = 1; i < ln; i++) { child = getChildAt(i); child.x = lastChild.x + lastChild.width + gutter; lastChild = child; } } private function focusInHandler(event:FocusEvent):void { var target:CustomSprite = CustomSprite(event.target); trace("focusInHandler: " + target.name); } private function focusOutHandler(event:FocusEvent):void { var target:CustomSprite = CustomSprite(event.target); trace("focusOutHandler: " + target.name); } private function keyFocusChangeHandler(event:FocusEvent):void { if(event.keyCode == 39 || event.keyCode == 37){ event.preventDefault() } var target:CustomSprite = CustomSprite(event.target); trace("keyFocusChangeHandler: " + target.name); } private function mouseFocusChangeHandler(event:FocusEvent):void { var target:CustomSprite = CustomSprite(event.target); trace("mouseFocusChangeHandler: " + target.name); } } } import flash.display.Sprite; import flash.events.MouseEvent; class CustomSprite extends Sprite { private var size:uint = 50; private var bgColor:uint = 0x00CCFF; public function CustomSprite() { buttonMode = true; useHandCursor = true; addEventListener(MouseEvent.CLICK, clickHandler); draw(size, size); } private function draw(w:uint, h:uint):void { graphics.beginFill(bgColor); graphics.drawRect(0, 0, w, h); graphics.endFill(); } private function clickHandler(event:MouseEvent):void { var target:Sprite = Sprite(event.target); trace("clickHandler: " + target.name); stage.focus = target; } }
Tue Jun 12 2018, 02:44 PM Z