Visualizza PDF della guida

Transcript

Visualizza PDF della guida
ADOBE FLASH LITE 2.x e 3.x
®
®
™
Guida di riferimento di Adobe ActionScript
®
®
Ultimo aggiornamento 4/5/2010
© 2010 Adobe Systems Incorporated. All rights reserved.
Copyright
Guida di riferimento di ActionScript® per Adobe® Flash® Lite® 2.x e 3.x
This Language Reference is licensed for use under the terms of the Creative Commons Attribution Non-Commercial 3.0 License. This License allows users to
copy, distribute, and transmit the user guide for noncommercial purposes only so long as (1) proper attribution to Adobe is given as the owner of the guide; and
(2) any reuse or distribution of the guide contains a notice that use of the user guide is governed by these terms. The best way to provide notice is to include the
following link. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
Adobe, the Adobe logo, ActionScript, Flash, and Flash Lite are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States
and/or other countries. Windows, Windows NT, and Windows Vista are either registered trademarks or trademarks of Microsoft Corporation in the United
States and/or other countries. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. All other trademarks are the property of their
respective owners.
Adobe Systems Incorporated, 345 Park Avenue, San Jose, California 95110, USA.
iii
Ultimo aggiornamento 4/5/2010
Sommario
Capitolo 1: Elementi del linguaggio ActionScript
Direttive per il compilatore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Costanti
............................................................................................................... 4
Funzioni globali
....................................................................................................... 8
Proprietà globali
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Operatori
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
istruzioni
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Comandi fscommand2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Capitolo 2: Classi ActionScript
arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Array
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
BitmapData (flash.display.BitmapData)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Boolean
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
Pulsante
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
capabilities (System.capabilities)
Color
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
ColorTransform (flash.geom.ColorTransform)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Date
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Error
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
ExtendedKey
Function
Key
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
LoadVars
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
LocalConnection
Math
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Matrix (flash.geom.Matrix)
Mouse
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
MovieClip
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
MovieClipLoader
NetConnection
NetStream
Number
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 499
Object
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504
Point (flash.geom.Point)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 520
Rectangle (flash.geom.Rectangle)
Security (System.security)
Selection
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 549
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554
SharedObject
Sound
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572
stage
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 592
String
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X iv
Sommario
System
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 610
TextField
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
TextFormat
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
Transform (flash.geom.Transform)
Video
XML
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679
XMLNode
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 697
XMLSocket
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714
Capitolo 3: Codice ActionScript obsoleto
Riepilogo delle funzioni obsolete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
Riepilogo delle proprietà obsolete
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723
Riepilogo degli operatori obsoleti
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724
Capitolo 4: Codice ActionScript non supportato
Classi non supportate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
Metodi non supportati
Proprietà non supportate
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
Funzioni globali non supportate
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725
Gestori di eventi non supportati
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
Azioni fscommand non supportate
Indice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
Ultimo aggiornamento 4/5/2010
Capitolo 1: Elementi del linguaggio
ActionScript
Questa sezione fornisce informazioni sulla sintassi e sull'utilizzo; esempi di codice per le funzioni e le proprietà globali
(ossia per gli elementi che non appartengono a una classe ActionScript); direttive per il compilatore; e informazioni
sulle costanti, gli operatori, le istruzioni e le parole chiave usate in ActionScript e definite nella bozza della specifica del
linguaggio ECMAScript (ECMA-262) Edizione 4.
Direttive per il compilatore
Questa sezione contiene le direttive da includere nel file ActionScript per fare in modo che il compilatore pre-elabori
determinate istruzioni.
Riepilogo delle direttive per il compilatore
Direttiva
Descrizione
#endinitclip
Direttiva del compilatore; indica la fine di un blocco di azioni di inizializzazione.
#include
Direttiva del compilatore: include il contenuto del file specificato, come se i comandi
del file facessero parte dello script chiamante.
#initclip
Direttiva del compilatore; indica l'inizio di un blocco di azioni di inizializzazione.
Direttiva #endinitclip
#endinitclip
Direttiva del compilatore; indica la fine di un blocco di azioni di inizializzazione.
Disponibilità
Flash Lite™ 2.0
Esempio
#initclip
...initialization actions go here...
#endinitclip
Direttiva #include
#include "[path]filename.as"
Nota: non inserire un punto e virgola (;) alla fine della riga che contiene la direttiva #include.
Direttiva del compilatore: include il contenuto del file specificato, come se i comandi del file facessero parte dello script
chiamante. La direttiva #include viene chiamata al momento della compilazione. Pertanto, in caso di modifiche a un
file esterno, è necessario salvare il file e ricompilare gli eventuali file FLA che lo utilizzano.
1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 2
Elementi del linguaggio ActionScript
Se si utilizza il pulsante Controlla sintassi per uno script che contiene istruzioni #include, viene verificata anche la
sintassi dei file inclusi.
La direttiva #include può essere utilizzata nei file FLA e nei file di script esterni, ma non nei file di classe ActionScript 2.0.
È possibile non specificare il percorso, indicare un percorso relativo o il percorso assoluto del file da includere. Se non
si specifica il percorso, il file AS deve trovarsi in una delle seguenti posizioni:
• La directory del file FLA. La stessa directory dello script che contiene l'istruzione #include.
• La directory Include globale, ovvero una delle seguenti:
Windows® 2000 o Windows XP: C:\Documents and Settings\utente \Impostazioni
locali\ Dati applicazione\Adobe\Flash 10\lingua\Configuration\Include
Windows Vista®: C:\Utenti\utente \Impostazioni locali\ Dati applicazioni\Adobe\Flash
8\lingua\Configuration\Include
Macintosh® OS X: Disco rigido/Users/Library/Supporto applicazioni/Adobe/Flash
10/lingua/Configuration/Include
• La directory programma Flash \lingua\First Run\Include; un file salvato in questa posizione viene copiato nella
directory globale Include al successivo avvio di Flash®.
Per specificare un percorso relativo al file AS, utilizzare un solo punto (.) per indicare la directory corrente, due punti
(..) per indicare una directory principale o il carattere barra (/) per indicare le sottodirectory. Consultare la seguente
sezione di esempio.
Per specificare un percorso assoluto per il file AS, utilizzare il formato supportato dalla piattaforma in uso (Macintosh
o Windows). Consultare la seguente sezione di esempio. (Questo uso non è consigliato in quanto richiede che la
struttura della directory sia uguale su tutti i computer utilizzati per compilare lo script).
Nota: se si posizionano dei file nella directory First Run/Include o nella directory Include globale, eseguire il backup dei
file. Nel caso in cui si rendesse necessario disinstallare e reinstallare Flash, è possibile che queste directory vengano
eliminate o sovrascritte.
Disponibilità
Flash Lite 2.0
Parametri
[percorso]nomefile.as - nomefile.asIl nome file e il percorso opzionale dello script da aggiungere al pannello
Azioni o allo script corrente; .as è l'estensione file consigliata.
Esempio
Gli esempi seguenti mostrano i diversi modi di specificare un percorso che includa un file nello script:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 3
Elementi del linguaggio ActionScript
// Note that #include statements do not end with a semicolon (;)
// AS file is in same directory as FLA file or script
// or is in the global Include directory or the First Run/Include directory
#include "init_script.as"
// AS file is in a subdirectory of one of the above directories
// The subdirectory is named "FLA_includes"
#include "FLA_includes/init_script.as"
// AS file is in a subdirectory of the script file directory
// The subdirectory is named "SCRIPT_includes"
#include "SCRIPT_includes/init_script.as"
// AS file is in a directory at the same level as one of the above directories
// AS file is in a directory at the same level as the directory
// that contains the script file
// The directory is named "ALL_includes"
#include "../ALL_includes/init_script.as"
// AS file is specified by an absolute path in Windows
// Note use of forward slashes, not backslashes
#include "C:/Flash_scripts/init_script.as"
// AS file is specified by an absolute path on Macintosh
#include "Mac HD:Flash_scripts:init_script.as"
Direttiva #initclip
#initclip order
Nota: non inserire un punto e virgola (;) alla fine della riga che contiene l'istruzione #initclip.
Direttiva del compilatore; indica l'inizio di un blocco di azioni di inizializzazione. Quando vengono inizializzati più
clip contemporaneamente, è possibile utilizzare il parametro order per indicare l'inizializzazione che deve avvenire
per prima. Le azioni di inizializzazione vengono eseguite al momento della definizione di un simbolo di clip filmato.
Se il clip filmato è un simbolo esportato, le azioni di inizializzazione vengono eseguite prima delle azioni presenti sul
fotogramma 1 del file SWF. In caso contrario, vengono eseguite immediatamente prima delle azioni del fotogramma
contenente la prima istanza del simbolo di clip filmato associato.
Le azioni di inizializzazione vengono eseguite solo una volta, nel momento in cui il file SWF viene riprodotto;
utilizzarle per le inizializzazioni singole, quali la definizione della classe e la registrazione.
Disponibilità
Flash Lite 2.0
Parametri
order - Un numero intero non negativo che specifica l'ordine di esecuzione dei blocchi del codice #initclip. Questo
parametro è opzionale. Il valore deve essere specificato mediante un valore letterale intero (possono essere usati solo i
valori decimali, non quelli esadecimali), non una variabile. Se si includono più blocchi #initclip in un simbolo di
clip filmato singolo, il compilatore usa l'ultimo valore order specificato nel simbolo di clip filmato per tutti i blocchi
#initclip del simbolo.
Esempio
Nell'esempio seguente, il codice ActionScript viene posizionato nel fotogramma 1 all'interno di un'istanza di clip
filmato. Un file di testo denominato variables.txt viene collocato nella stessa directory.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 4
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
#initclip
trace("initializing app");
var variables:LoadVars = new LoadVars();
variables.load("variables.txt");
variables.onLoad = function(success:Boolean) {
trace("variables loaded:"+success);
if (success) {
for (i in variables) {
trace("variables."+i+" = "+variables[i]);
}
}
};
#endinitclip
Costanti
Una costante è una variabile utilizzata per rappresentare una proprietà il cui valore non cambia mai. In questa sezione
vengono descritte le costanti globali disponibili per tutti gli script.
Riepilogo delle costanti
Modificatori
Costante
Descrizione
false
Valore booleano univoco che rappresenta l'opposto di true.
Infinity
Indica il valore IEEE-754 che rappresenta l'infinito positivo.
-Infinity
Indica il valore IEEE-754 che rappresenta l'infinito negativo.
NaN
Variabile predefinita con il valore IEEE-754 per NaN (not a
number).
newline
Inserisce un carattere di ritorno a capo (\r) che crea una riga
vuota nel testo generato dal codice.
null
Valore che può essere assegnato a delle variabili o restituito da
una funzione quando non vengono forniti dati.
true
Valore booleano univoco che rappresenta l'opposto di false.
undefined
Un valore speciale, solitamente utilizzato per indicare che a
una variabile non è ancora stato assegnato un valore.
Costante false
Valore booleano univoco che rappresenta l'opposto di true.
Quando la tipizzazione automatica dei dati converte false in un numero, questo diventa 0; quando converte false
in una stringa, questa diventa "false".
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 5
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.1
Esempio
Questo esempio mostra il modo in cui la tipizzazione automatica dei dati converte il valore false in un numero o in
una stringa:
var bool1:Boolean = Boolean(false);
// converts it to the number 0
trace(1 + bool1); // outputs 1
// converts it to a string
trace("String: " + bool1); // outputs String: false
Costante Infinity
Indica il valore IEEE-754 che rappresenta l'infinito positivo. Il valore di questa costante è uguale a
Number.POSITIVE_INFINITY.
Disponibilità
Flash Lite 2.0
Vedere anche
POSITIVE_INFINITY (proprietà Number.POSITIVE_INFINITY)
Costante -Infinity
Indica il valore IEEE-754 che rappresenta l'infinito negativo. Il valore di questa costante è uguale a
Number.NEGATIVE_INFINITY.
Disponibilità
Flash Lite 2.0
Vedere anche
NEGATIVE_INFINITY (proprietà Number.NEGATIVE_INFINITY)
Costante NaN
Variabile predefinita con il valore IEEE-754 per NaN (not a number). Per determinare se un numero è NaN, usare
isNaN().
Disponibilità
Flash Lite 1.1
Vedere anche
Funzione isNaN, NaN (proprietà Number.NaN)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 6
Elementi del linguaggio ActionScript
Costante newline
Inserisce un carattere di ritorno a capo (\r) che crea una riga vuota nel testo generato dal codice. Utilizzare newline
per creare spazio per le informazioni recuperate da una funzione o istruzione del codice.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente mostra il modo in cui la costante newline visualizza l'output dell'istruzione trace() su più righe.
var myName:String = "Lisa", myAge:Number = 30;
trace(myName+myAge);
trace("-----");
trace(myName+newline+myAge);
// output:
Lisa30
----Lisa
30
Vedere anche
Funzione trace
Costante null
Valore che può essere assegnato a delle variabili o restituito da una funzione quando non vengono forniti dati.
Utilizzare null per rappresentare valori mancanti o che non presentano un tipo di dati definito.
Disponibilità
Flash Lite 1.1
Esempio
In un contesto di tipo numerico, null restituisce 0. Con null è possibile eseguire i test di uguaglianza. In questa
istruzione, un nodo di una struttura ad albero binaria non ha elementi secondari, pertanto è possibile impostare su
null il campo per il relativo elemento secondario sinistro.
if (tree.left == null) {
tree.left = new TreeNode();
}
Costante true
Valore booleano univoco che rappresenta l'opposto di false. Quando la tipizzazione automatica dei dati converte
true in un numero, questo diventa 1; quando converte true in una stringa, questa diventa "true".
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente mostra l'uso di true in un'istruzione if:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 7
Elementi del linguaggio ActionScript
var shouldExecute:Boolean;
// ...
// code that sets shouldExecute to either true or false goes here
// shouldExecute is set to true for this example:
shouldExecute = true;
if (shouldExecute == true) {
trace("your statements here");
}
//
//
//
//
true is also implied, so the if statement could also be written:
if (shouldExecute) {
trace("your statements here");
}
L'esempio seguente mostra il modo in cui la tipizzazione automatica dei dati converte true nel numero 1:
var myNum:Number;
myNum = 1 + true;
trace(myNum); // output: 2
Vedere anche
Costante false, Boolean
Costante undefined
Un valore speciale, solitamente utilizzato per indicare che a una variabile non è ancora stato assegnato un valore. Un
riferimento a un valore non definito restituisce il valore speciale undefined. Il codice ActionScript
typeof(undefined) restituisce la stringa "undefined". L'unico valore di tipo undefined è undefined.
Nei file pubblicati per Flash Player 6 o versione precedente, il valore di String(undefined) è "" (una stringa vuota).
Nei file pubblicati per Flash Player 7 o versione successiva, il valore di String(undefined) è "undefined" (il valore
undefined viene convertito in stringa).
Nei file pubblicati per Flash Player 6 o versione precedente, il valore di Number(undefined) è 0. Nei file pubblicati per
Flash Player 7 o versione successiva, il valore di Number(undefined) è NaN.
Il valore undefined è simile al valore speciale null. Quando null e undefined vengono confrontati mediante
l'operatore di uguaglianza (==), risultano uguali. Tuttavia, quando null e undefined vengono confrontati mediante
l'operatore di uguaglianza rigorosa (===), non risultano uguali.
Disponibilità
Flash Lite 1.1
Esempio
Nell'esempio seguente, la variabile x non è stata dichiarata e pertanto il relativo valore è undefined.
Nella prima sezione del codice, l'operatore di uguaglianza (==) confronta il valore di x con il valore undefined quindi
il risultato appropriato viene inviato al pannello Output. Nella prima sezione del codice, l'operatore di uguaglianza
(==) confronta il valore di x con il valore undefined quindi il risultato appropriato viene inviato al file di registro.
Nella seconda sezione del codice, l'operatore di uguaglianza (==) confronta i valori null e undefined.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 8
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
// x has not been declared
trace("The value of x is "+x);
if (x == undefined) {
trace("x is undefined");
} else {
trace("x is not undefined");
}
trace("typeof (x) is "+typeof (x));
if (null == undefined) {
trace("null and undefined are equal");
} else {
trace("null and undefined are not equal");
}
Il risultato seguente viene visualizzato nel pannello Output.
The value of x is undefined
x is undefined
typeof (x) is undefined
null and undefined are equal
Funzioni globali
Questa sezione contiene una serie di funzioni incorporate disponibili in qualsiasi punto di un file SWF in cui viene
utilizzato ActionScript. Queste funzioni globali coprono una vasta gamma di attività di programmazione comuni quali
le operazioni con tipi di dati (Boolean(), int() e così via), la produzione di informazioni sul debug (trace()) e la
comunicazione con Flash Player o con il browser (fscommand()).
Riepilogo delle funzioni globali
Modificatori
Firma
Descrizione
Array([numElements],
Crea un nuovo array vuoto oppure converte in array gli elementi
specificati.
[elementN]) : Array
Boolean(expression:Obje
ct) : Boolean
call(frame:Object)
Converte il parametro expression in un valore booleano e
restituisce true o false.
Sconsigliata a partire da Flash Player 5. Questa azione è stata
sconsigliata a favore dell'istruzione function.
Esegue lo script nel fotogramma chiamato senza spostare
l'indicatore di riproduzione sul fotogramma.
chr(number:Number) :
String
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di String.fromCharCode().
Converte i numeri di codice ASCII in caratteri.
clearInterval(intervalID:N
Annulla un intervallo creato da una chiamata a setInterval().
umber)
duplicateMovieClip(target:
Object, newname:String,
depth:Number)
Crea un'istanza di un clip filmato durante la riproduzione del file
SWF.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 9
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Firma
Descrizione
escape(expression:Strin
g) : String
Converte il parametro in stringa e lo codifica in un formato URL in
cui tutti i caratteri non alfanumerici vengono sostituiti con
sequenze esadecimali %.
eval(expression:Object)
Accede a variabili, proprietà, oggetti e clip filmato in base al
nome.
: Object
fscommand(command:Stri
ng, parameters:String)
Consente al file SWF di comunicare con il lettore Flash Lite o con
l'ambiente di un dispositivo mobile (ad esempio un sistema
operativo).
fscommand2(command:Stri Consente al file SWF di comunicare con il lettore Flash Lite o con
ng, parameters:String) un'applicazione host su un dispositivo mobile.
getProperty(my_mc:Object
, property:Object) :
Object
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sostituita dalla sintassi a punto, introdotta con Flash Player 5.
Restituisce il valore della proprietà specificata per il clip filmato
my_mc.
getTimer() : Number
Restituisce il numero di millisecondi trascorsi dall'inizio della
riproduzione del file SWF.
getURL(url:String,
Carica un documento da un URL specifico in una finestra, oppure
trasmette le variabili a un'altra applicazione in un URL definito.
[window:String],
[method:String])
getVersion() : String
Restituisce una stringa contenente le informazioni sulla versione
di Flash Player e la piattaforma.
gotoAndPlay([scene:Strin Invia l'indicatore di riproduzione al fotogramma specificato in una
g], frame:Object)
scena e avvia la riproduzione da quel fotogramma.
gotoAndStop([scene:Stri
ng], frame:Object)
ifFrameLoaded([scene:Str
ing], frame:Object,
statement(s):Object)
Invia l'indicatore di riproduzione al fotogramma specificato in una
scena e lo arresta.
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata. Adobe consiglia di usare la proprietà
MovieClip._framesloaded.
Verifica se il contenuto di un fotogramma specifico è disponibile
localmente.
int(value:Number) :
Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di Math.round().
Converte un numero decimale in valore intero troncando il valore
decimale.
isFinite(expression:Objec
t) : Boolean
Valuta expression e restituisce true se si tratta di un numero
finito oppure false se si tratta di un valore infinito o infinito
negativo.
isNaN(expression:Object
Valuta il parametro e restituisce true se il valore è NaN (not a
number).
) : Boolean
length(expression:Strin
g, variable:Object) :
Number
Sconsigliata a partire da Flash Player 5. Questa funzione con le
relative funzioni stringa è stata sconsigliata. Adobe consiglia di
usare i metodi della classe String e la proprietà String.length
per eseguire le stesse operazioni.
Restituisce la lunghezza della stringa o della variabile specificata.
loadMovie(url:String,
target:Object,
[method:String])
Carica un file SWF o JPEG in Flash Player durante la riproduzione
del file SWF originale.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 10
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Firma
Descrizione
loadMovieNum(url:String
, level:Number,
[method:String])
Carica un file SWF o JPEG in un livello di Flash Player durante la
riproduzione del file SWF caricato originariamente.
loadVariables(url:String,
Legge i dati da un file esterno, ad esempio un file di testo o un
testo generato da ColdFusion, uno script CGI, ASP (Active Server
Pages), PHP o Perl, e imposta i valori delle variabili in un clip
filmato target.
target:Object,
[method:String])
loadVariablesNum(url:Stri Legge i dati da un file esterno, ad esempio un file di testo o un
ng, level:Number,
testo generato da ColdFusion, uno script CGI, ASP (Active Server
[method:String])
Pages), PHP o Perl, e imposta i valori delle variabili in un livello di
FlashPlayer.
mbchr(number:Number)
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore del metodo String.fromCharCode().
Converte un numero di codice ASCII in un carattere multibyte.
mblength(string:String)
: Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore della proprietà String.length.
Restituisce la lunghezza della stringa a caratteri multibyte.
mbord(character:String
) : Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di String.charCodeAt().
Converte il carattere specificato in un numero multibyte.
mbsubstring(value:String Sconsigliata a partire da Flash Player 5. Questa funzione è stata
, index:Number,
sconsigliata a favore di String.substr().
count:Number) : String
Estrae una nuova stringa a caratteri multibyte da una stringa a
caratteri multibyte.
nextFrame()
Invia l'indicatore di riproduzione al fotogramma successivo.
nextScene()
Invia l'indicatore di riproduzione al fotogramma 1 della scena
successiva.
Number(expression:Obje
Converte il parametro expression in un numero.
ct) : Number
Object([value:Object]) :
Object
Crea un nuovo oggetto vuoto o converte in oggetto il numero, la
stringa o il valore booleano specificati.
on(mouseEvent:Object)
Specifica l'evento associato al mouse o la pressione di un tasto
che attiva un'azione.
onClipEvent(movieEvent:O
Attiva le azioni definite per un'istanza specifica di un clip filmato.
bject)
ord(character:String) :
Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sostituita dai metodi e dalle proprietà della classe String.
Converte i caratteri in numeri di codice ASCII.
parseFloat(string:String) Converte una stringa in un numero a virgola mobile.
: Number
parseInt(expression:Stri
ng, [radix:Number]) :
Number
Converte una stringa in un numero intero.
play()
Sposta l'indicatore di riproduzione più avanti nella linea
temporale.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 11
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Firma
Descrizione
prevFrame()
Invia l'indicatore di riproduzione al fotogramma precedente.
prevScene()
Invia l'indicatore di riproduzione al fotogramma 1 della scena
precedente.
random(value:Number) :
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di Math.random().
Number
Restituisce un numero intero casuale compreso tra 0 e un valore
inferiore al numero intero specificato nel parametro value.
removeMovieClip(target:O
Elimina il clip filmato specificato.
bject)
setInterval(functionName:O Chiama una funzione, un metodo o un oggetto a intervalli
bject, interval:Number, regolari durante la riproduzione di un file SWF.
[param:Object],
objectName:Object,
methodName:String) :
Number
setProperty(target:Object Modifica un valore di proprietà di un clip filmato durante la
, property:Object,
riproduzione del clip filmato.
expression:Object)
startDrag(target:Object,
[lock:Boolean],
[left,top,right,bottom
:Number])
Rende trascinabile il clip filmato target durante la riproduzione
del filmato.
stop()
Arresta il file SWF in esecuzione.
stopAllSounds()
Interrompe tutti i suoni attualmente riprodotti in un file SWF
senza arrestare l'indicatore di riproduzione.
stopDrag()
Interrompe l'operazione di trascinamento corrente.
String(expression:Object
Restituisce una rappresentazione sotto forma di stringa del
parametro specificato.
) : String
substring(string:String,
index:Number,
count:Number) : String
targetPath(targetObject:
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di String.substr().
Estrae parte di una stringa.
Object) : String
Restituisce una stringa contenente il percorso target di
movieClipObject.
tellTarget(target:String,
statement(s):Object)
Sconsigliata a partire da Flash Player 5. Adobe consiglia di
utilizzare la notazione del punto (.) e l'istruzione with.
Applica le istruzioni specificate nel parametro statements alla
linea temporale specificata nel parametro target.
toggleHighQuality()
Sconsigliata a partire da Flash Player 5. Questa funzione è stata
sconsigliata a favore di _quality.
Attiva e disattiva l'antialiasing in Flash Player.
trace(expression:Object) Valuta l'espressione e produce il risultato.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 12
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Firma
Descrizione
unescape(string:String)
Valuta il parametro x come stringa, decodifica la stringa dal
formato URL (convertendo tutte le sequenze esadecimali in
caratteri ASCII) e restituisce la stringa.
: String
unloadMovie(target)
Rimuove un clip filmato caricato mediante loadMovie() da
Flash Player.
unloadMovieNum(level:Nu Rimuove un file SWF o un'immagine caricati da Flash Player
mber)
mediante loadMovieNum().
Funzione Array
Array(): Array Array(numElements:Number): Array Array( [element0:Object [, element1, element2,
...elementN] ]) : Array
Crea un nuovo array di lunghezza pari a zero o a un valore superiore, oppure un array compilato da un elenco di
elementi specificati, possibilmente di tipi di dati diversi.
Consente di creare uno dei seguenti elementi:
• un array vuoto
• un array di lunghezza specifica i cui elementi hanno valori non definiti
• un array i cui elementi hanno valori specifici
L'uso di questa funzione è simile alla creazione di un array mediante la funzione di costruzione di array (vedere
"Funzione di costruzione per la classe Array").
È possibile passare un numero (numElements) o un elenco di elementi contenente uno o più tipi diversi (elemento0,
elemento1, ..., elementoN).
I parametri che possono accettare più tipi di dati vengono indicati nella firma con il tipo Object.
Disponibilità
Flash Lite 2.0
Parametri
numElements [opzionale] - Un numero intero positivo che specifica il numero di elementi nell'array. È possibile
specificare numElements o l'elenco di elementi, ma non entrambi.
elementN [opzionale] - Uno o più parametri, element0, element1, ... , elementN, i cui valori possono essere di
qualunque tipo. I parametri che possono accettare più tipi di dati vengono indicati con il tipo Object. È possibile
specificare numElements o l'elenco di elementi, ma non entrambi.
Restituisce
Array - Un array.
Esempio
var myArray:Array = Array();
myArray.push(12);
trace(myArray); //traces 12
myArray[4] = 7;
trace(myArray); //traces 12,undefined,undefined,undefined,7
Uso 2: l'esempio seguente crea un array con lunghezza 4 ma senza elementi definiti:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 13
Elementi del linguaggio ActionScript
var myArray:Array = Array(4);
trace(myArray.length); // traces 4
trace(myArray); // traces undefined,undefined,undefined,undefined
Uso 3: l'esempio seguente crea un array con tre elementi definiti:
var myArray:Array = Array("firstElement", "secondElement", "thirdElement");
trace (myArray); // traces firstElement,secondElement,thirdElement
Nota: a differenza della funzione di costruzione della classe Array, la funzione Array() non utilizza la parola chiave new.
Vedere anche
Array
Funzione Boolean
Boolean(expression:Object) : Boolean
Converte il parametro expression in un valore booleano e restituisce un valore descritto nel seguente elenco:
• Se expression è un valore booleano, il valore restituito è expression.
• Se expression è un numero, il valore restituito è true se il numero è diverso da zero; in caso contrario, il valore
restituito è false.
Se expression è una stringa, viene restituito il seguente valore:
• Nei file pubblicati per Flash Player 6 o versione precedente, la stringa viene dapprima convertita in numero; il
valore è true se il numero è diverso da zero, false negli altri casi.
• Nei file pubblicati per Flash Player 7 o versione successiva, il valore restituito è true se la stringa ha una lunghezza
superiore a zero, false se la stringa è vuota.
Se expression è una stringa, il risultato è true se la stringa ha una lunghezza superiore a 0, false se la stringa è vuota.
• Se expression è undefined o NaN (non un numero), il valore restituito è false.
• Se expression è un clip filmato o un oggetto, la stringa restituita è true.
Nota: a differenza della funzione di costruzione della classe Boolean, la funzione Boolean() non utilizza la parola chiave
new. Inoltre, la funzione di costruzione della classe Boolean inizializza un oggetto booleano su false se non viene
specificato alcun parametro, mentre la funzione Boolean() restituisce il valore undefined se non viene specificato alcun
parametro.
Disponibilità
Flash Lite 2.0
Parametri
expression:Object - Espressione da convertire in un valore booleano.
Restituisce
Boolean - Un valore booleano.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 14
Elementi del linguaggio ActionScript
Esempio
trace(Boolean(-1)); // output: true
trace(Boolean(0)); // output: false
trace(Boolean(1)); // output: true
trace(Boolean(true)); // output: true
trace(Boolean(false)); // output: false
trace(Boolean("true")); // output: true
trace(Boolean("false")); // output: true
trace(Boolean("Craiggers")); // output: true
trace(Boolean("")); // output: false
Se i file sono pubblicati per Flash Player 6 e versione precedente, i risultati sono diversi per tre degli esempi precedenti:
trace(Boolean("true")); // output: false
trace(Boolean("false")); // output: false
trace(Boolean("Craiggers")); // output: false
Questo esempio mostra una differenza significativa tra l'uso della funzione Boolean() e quello della classe Boolean.
La funzione Boolean() crea un valore booleano, mentre la classe Boolean crea un oggetto Boolean. I valori booleani
vengono confrontati in base al valore, mentre gli oggetti Boolean vengono confrontati in base al riferimento.
// Variables representing Boolean values are compared by value
var a:Boolean = Boolean("a"); // a is true
var b:Boolean = Boolean(1); // b is true
trace(a==b); // true
// Variables representing Boolean objects are compared by reference
var a:Boolean = new Boolean("a"); // a is true
var b:Boolean = new Boolean(1); // b is true
trace(a == b); // false
Vedere anche
Boolean
Funzione call
call(frame)
Sconsigliata a partire da Flash Player 5. Questa azione è stata sconsigliata a favore dell'istruzione function.
Esegue lo script nel fotogramma chiamato senza spostare l'indicatore di riproduzione sul fotogramma. Le variabili
locali non sono presenti dopo l'esecuzione dello script.
• Se non vengono dichiarate variabili all'interno di un blocco ({}), ma l'elenco delle azioni è stato eseguito mediante
un'azione call(), le variabili sono locali e scadono al termine dell'elenco corrente.
• Se non vengono dichiarate delle variabili all'interno di un blocco e l'elenco delle azioni corrente non è stato eseguito
mediante l'azione call(), le variabili vengono interpretate come variabili della linea temporale.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 15
Elementi del linguaggio ActionScript
Parametri
frame:Object - L'etichetta o il numero di un fotogramma nella linea temporale.
Vedere anche
Funzione Array, call (metodo Function.call)
Funzione chr
chr(number) : String
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di String.fromCharCode().
Converte i numeri di codice ASCII in caratteri.
Disponibilità
Flash Lite 1.0
Parametri
number:Number - Un numero di codice ASCII.
Restituisce
String - Il valore dei caratteri del codice ASCII specificato.
Esempio
L'esempio seguente converte il numero 65 nella lettera A e la assegna alla variabile myVar: myVar = chr(65);
Vedere anche
fromCharCode (metodo String.fromCharCode)
Funzione clearInterval
clearInterval(intervalID:Number) : Void
Annulla un intervallo creato da una chiamata a setInterval().
Disponibilità
Flash Lite 2.0
Parametri
intervalID:Number - Un identificatore numerico (numero intero) restituito da una chiamata a setInterval().
Esempio
L'esempio seguente imposta e successivamente cancella una chiamata a interval:
function callback() {
trace("interval called: "+getTimer()+" ms.");
}
var intervalID:Number = setInterval(callback, 1000);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 16
Elementi del linguaggio ActionScript
Una volta terminato l'utilizzo della funzione, è necessario cancellare l'intervallo. Creare un pulsante di nome
clearInt_btn e utilizzare il codice ActionScript per cancellare setInterval():
clearInt_btn.onRelease = function(){
clearInterval( intervalID );
trace("cleared interval");
};
Vedere anche
Funzione setInterval
Funzione duplicateMovieClip
duplicateMovieClip(target:String, newname:String, depth:Number) : Void
duplicateMovieClip(target:MovieClip, newname:String, depth:Number) : Void
Crea un'istanza di un clip filmato durante la riproduzione del file SWF. L'indicatore di riproduzione nei clip filmato
duplicati parte sempre dal fotogramma 1, indipendentemente dal punto in cui si trova l'indicatore nel clip filmato
originale. Le variabili presenti nel clip filmato originale non vengono copiate nel clip filmato duplicato. Utilizzare la
funzione o il metodo removeMovieClip() per eliminare un'istanza di clip filmato creata con
duplicateMovieClip().
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Il percorso di destinazione del clip filmato da duplicare. Questo parametro può essere una stringa
(ad esempio, "my_mc") oppure un riferimento diretto all'istanza del clip filmato (ad esempio, my_mc). I parametri che
possono accettare più tipi di dati vengono indicati con il tipo Object.
newname:String - Un identificatore univoco del clip filmato duplicato.
depth:Number - Un livello di profondità univoco per il clip filmato duplicato. Il livello di profondità rappresenta
l'ordine di impilamento dei clip filmato duplicati, simile all'ordine di impilamento dei livelli nella linea temporale: i
clip filmato con un livello di profondità inferiore sono nascosti sotto i clip con un ordine di impilamento superiore.
Per evitare che i file SWF nei livelli di profondità occupati vengano sostituiti, è necessario assegnare a ciascun clip
filmato duplicato un livello di profondità univoco.
Esempio
Nell'esempio seguente viene creata l'istanza di un clip filmato trascinabile denominata img_mc. L'immagine viene
caricata nel clip filmato, quindi il clip img_mc viene copiato. Il clip duplicato viene denominato newImg_mc e spostato
sullo stage senza sovrapporlo al clip originale, quindi la stessa immagine viene caricata nel secondo clip.
this.createEmptyMovieClip("img_mc", this.getNextHighestDepth());
img_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
duplicateMovieClip(img_mc, "newImg_mc", this.getNextHighestDepth());
newImg_mc._x = 200;
newImg_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
Per rimuovere il clip filmato duplicato, è possibile utilizzare il seguente codice per il pulsante myButton_btn.
this.myButton_btn.onRelease = function(){
removeMovieClip(newImg_mc);
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 17
Elementi del linguaggio ActionScript
Vedere anche
Funzione removeMovieClip, duplicateMovieClip (metodo MovieClip.duplicateMovieClip),
removeMovieClip (metodo MovieClip.removeMovieClip)
Funzione escape
escape(expression:String) : String
Converte il parametro in stringa e lo codifica in un formato URL in cui tutti i caratteri non alfanumerici vengono
sostituiti con sequenze esadecimali %. Quando viene utilizzato in una stringa con formato di codifica URL, il simbolo
della percentuale (%) introduce i caratteri escape e non equivale all'operatore modulo (%).
Disponibilità
Flash Lite 2.0
Parametri
expression:String - L'espressione da convertire in stringa e codificare in formato URL.
Restituisce
String - Stringa con codifica URL.
Esempio
Il seguente codice produce il risultato someuser%40somedomain%2Ecom:
var email:String = "[email protected]";
trace(escape(email));
In questo esempio, il simbolo (@) è stato sostituito con %40 e il simbolo del punto (.) è stato sostituito con %2E. Si tratta
di un metodo utile quando si tenta di passare delle informazioni a un server remoto e i dati contengono dei caratteri
speciali (ad esempio, & o ?), come mostrato nel codice seguente:
var redirectUrl = "http://www.somedomain.com?loggedin=true&username=Gus";
getURL("http://www.myothersite.com?returnurl="+ escape(redirectUrl));
Vedere anche
Funzione unescape
Funzione eval
eval(expression:Object) : Objecteval(expression:String) : Object
Accede a variabili, proprietà, oggetti e clip filmato in base al nome. Se l'espressione è una variabile o una proprietà,
viene restituito il valore della variabile o della proprietà. Se l'espressione è un oggetto o un clip filmato, viene restituito
un riferimento all'oggetto o al clip filmato. Se l'elemento nominato nell'espressione non viene trovato, viene restituito
il valore undefined.
In Flash 4, eval() era utilizzata per la simulazione degli array; in Flash 5 e versioni successive, la simulazione degli
array deve essere eseguita mediante la classe Array.
In Flash 4, è anche possibile utilizzare eval() per impostare e recuperare in modo dinamico il valore di una variabile
o il nome di un'istanza. La stessa operazione può anche essere svolta mediante l'operatore di accesso agli array ([]).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 18
Elementi del linguaggio ActionScript
In Flash 5 o versioni successive, eval() non può essere utilizzata per impostare e recuperare in modo dinamico il
valore di una variabile o il nome di un'istanza, in quanto eval() non può essere utilizzata a sinistra di un'equazione.
Ad esempio, sostituire il codice
eval ("var" + i) = "first";
con:
this["var"+i] = "first"
oppure con:
set ("var" + i, "first");
Disponibilità
Flash Lite 1.0
Parametri
expression:Object - Il nome di una variabile, proprietà, oggetto o clip filmato da recuperare. Questo parametro può
essere una stringa o un riferimento diretto all'istanza dell'oggetto (vale a dire, l'uso delle virgolette (" ") è facoltativo).
Restituisce
Object - Un valore, riferimento a un oggetto o clip filmato, oppure undefined.
Esempio
L'esempio seguente utilizza la funzione eval() per impostare le proprietà dei clip filmato a cui viene assegnato un
nome dinamicamente. Questo codice ActionScript imposta la proprietà _rotation per tre clip filmato denominati
square1_mc, square2_mc e square3_mc.
for (var i = 1; i <= 3; i++) {
setProperty(eval("square"+i+"_mc"), _rotation, 5);
}
È anche possibile utilizzare il codice ActionScript seguente:
for (var i = 1; i <= 3; i++) {
this["square"+i+"_mc"]._rotation = -5;
}
Vedere anche
Array, Istruzione set variable
Funzione fscommand
fscommand(command:String, parameters:String) : Void
La funzione fscommand() consente al file SWF di comunicare con il lettore Flash Lite o con l'ambiente di un
dispositivo mobile (ad esempio un sistema operativo). I parametri definiscono il nome dell'applicazione in fase di
avvio e i parametri per arrivarci, separati da virgole.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 19
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando
Parametri
Scopo
launch
percorsoapplicazione, arg1,
arg2,..., argn
Questo comando lancia un'altra applicazione su un
dispositivo mobile. Il nome dell'applicazione e i relativi
parametri vengono passati in un unico argomento.
Nota: questa funzione dipende dal sistema operativo.
Utilizzare questo comando con attenzione in quanto può
chiedere al dispositivo host di eseguire un'operazione non
supportata. Questo tipo di utilizzo potrebbe provocare
l'arresto anomalo del dispositivo host.
Questo comando è supportato solo quando Flash Lite
Player è in esecuzione in modalità autonoma, e non
quando è in esecuzione nel contesto di un'altra
applicazione (ad esempio, come plug-in di un browser).
activateTextFiel
d
"" (ignored)
Questo comando attiva in modo asincrono il campo di
testo attualmente selezionato, rendendolo attivo per le
modifiche effettuate dall'utente. A causa del suo
funzionamento asincrono, il comando viene elaborato alla
fine del fotogramma. Viene prima eseguito il codice
ActionScript immediatamente successivo alla chiamata di
fscommand(). Se il comando viene elaborato quando
non è selezionato alcun campo di testo, non ha alcun
effetto. Questo comando assegna lo stato di attivazione a
un campo di testo precedentemente passato al metodo
Selection.setFocus() e attiva il campo per le
modifiche. Il comando ha effetto solo se il telefono
supporta la modifica inline del testo.
Può essere chiamato all'interno della funzione di callback
del listener di eventi Selection.onSetFocus(). A
seguito del comando, i campi di testo diventano attivi per
le modifiche quando vengono selezionati.
Nota: poiché la funzione fscommand() viene eseguita in
modo asincrono, il campo di testo non diventa attivo
immediatamente, bensì alla fine del fotogramma.
Disponibilità
Flash Lite 1.1
Parametri
command:String: - Una stringa trasmessa all'applicazione host per qualsiasi uso, o un comando trasmesso a Flash Lite.
parameters:String: - Una stringa trasmessa all'applicazione host per qualsiasi uso, o un valore trasmesso a Flash Lite.
Esempio
Nell'esempio seguente, la funzione fscommand() apre il sito wap.yahoo.com nel browser servizi/Web sui telefoni della
Serie 60:
on(keyPress "9") {
status = fscommand("launch", "z:\\system\apps\browser\browser.app,http://wap.yahoo.com");
}
Funzione fscommand2
fscommand2(command:String, parameter1:String,...parameterN:String) : Void
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 20
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Consente al file SWF di comunicare con il lettore Flash Lite o con un'applicazione host su un dispositivo mobile.
Per usare fscommand2() per inviare un messaggio al lettore di Flash Lite, è necessario utilizzare parametri e comandi
predefiniti. Vedete la sezione "Comandi fscommand2" in "Elementi del linguaggio ActionScript" per conoscere i valori
che possono essere specificati per i comandi e i parametri della funzione fscommand(). Questi valori controllano i file
SWF riprodotti in Flash Lite.
La funzione fscommand2() è simile alla funzione fscommand(), con le seguenti differenze:
• La funzione fscommand2() può ricevere un qualsiasi numero di argomenti. Al contrario, fscommand() può
ricevere un solo argomento.
• Flash Lite esegue fscommand2() immediatamente (vale a dire, all'interno del fotogramma), mentre fscommand()
viene eseguita alla fine del fotogramma in corso di elaborazione.
• La funzione fscommand2() restituisce un valore che può essere utilizzato per riportare la corretta esecuzione, il
fallimento o il risultato del comando.
Nota: nessuno dei comandi fscommand2() è disponibile per i lettori Web.
Disponibilità
Flash Lite 1.1
Comandi fscommand2() obsoleti
Alcuni comandi fscommand2() di Flash Lite 1.1 sono sconsigliati in Flash Lite 2.0. La seguente tabella mostra i
comandi fscommand2() obsoleti:
Comando
Sostituito da
Escape
escape Funzione globale
GetDateDay
getDate() Metodo dell'oggetto Date
GetDateMonth
getMonth() Metodo dell'oggetto Date
GetDateWeekday
getDay() Metodo dell'oggetto Date
GetDateYear
getYear() Metodo dell'oggetto Date
GetLanguage
Proprietà System.capabilities.language
GetLocaleLongDate
getLocaleLongDate() Metodo dell'oggetto Date
GetLocaleShortDate
getLocaleShortDate() Metodo dell'oggetto Date
GetLocaleTime
getLocaleTime() Metodo dell'oggetto Date
GetTimeHours
getHours() Metodo dell'oggetto Date
GetTimeMinutes
getMinutes() Metodo dell'oggetto Date
GetTimeSeconds
getSeconds() Metodo dell'oggetto Date
GetTimeZoneOffset
getTimeZoneOffset() Metodo dell'oggetto Date
SetQuality
MovieClip._quality
Unescape
unescape Funzione globale
Parametri
command:String: - Una stringa trasmessa all'applicazione host per qualsiasi uso, o un comando trasmesso a Flash Lite.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 21
Elementi del linguaggio ActionScript
parameters:String: - Una stringa trasmessa all'applicazione host per qualsiasi uso, o un valore trasmesso a Flash Lite.
Funzione getProperty
getProperty(my_mc:Object, property:Object) : Object
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sostituita dalla sintassi a punto, introdotta con Flash
Player 5.
Restituisce il valore della proprietà specificata per il clip filmato my_mc.
Disponibilità
Flash Lite 1.0
Parametri
my_mc:Object - Il nome di istanza di un clip filmato per il quale viene recuperata la proprietà.
property:Object - Una proprietà di un clip filmato.
Restituisce
Object - Il valore della proprietà specificata.
Esempio
L'esempio seguente crea il nuovo clip filmato someClip_mc e visualizza il valore alfa (_alpha) per il clip filmato
someClip_mc nel pannello Output:
this.createEmptyMovieClip("someClip_mc", 999);
trace("The alpha of "+getProperty(someClip_mc, _name)+" is: "+getProperty(someClip_mc,
_alpha));
Funzione getTimer
getTimer() : Number
Restituisce il numero di millisecondi trascorsi dall'inizio della riproduzione del file SWF.
Disponibilità
Flash Lite 1.0
Restituisce
Number - Il numero di millisecondi trascorsi dall'inizio della riproduzione del file SWF.
Esempio
Nell'esempio seguente, le funzioni getTimer() e setInterval() vengono usate per creare un timer semplice:
this.createTextField("timer_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
function updateTimer():Void {
timer_txt.text = getTimer();
}
var intervalID:Number = setInterval(updateTimer, 100);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 22
Elementi del linguaggio ActionScript
Funzione getURL
getURL(url:String [, window:String [, method:String] ]) : Void
Carica un documento da un URL specifico in una finestra, oppure trasmette le variabili a un'altra applicazione in un
URL definito. Per eseguire il test di questa funzione, accertarsi che il file da caricare si trovi nella posizione specificata.
Per utilizzare un URL assoluto (ad esempio, http://www.myserver.com), è necessario disporre di una connessione di rete.
Nota: questa funzione non è supportata dai dispositivi BREW.
Disponibilità
Flash Lite 1.0
Parametri
url:String - L'URL da cui ottenere il documento.
window:String [opzionale] - Specifica la finestra o il fotogramma HTML nel quale il documento dovrebbe essere
caricato. È possibile immettere il nome di una finestra specifica o selezionare tra i seguenti nomi riservati di
destinazioni:
•
_self indica il frame corrente nella finestra corrente.
•
_blank indica una nuova finestra.
•
_parent indica l'elemento principale del frame corrente.
•
_top specifica il frame di primo livello nella finestra corrente.
method:String [opzionale] - Un metodo GET o POST per l'invio delle variabili. Se non vi sono variabili, omettere
questo parametro. Il metodo GET aggiunge le variabili alla fine dell'URL e viene utilizzato quando il numero di variabili
è ridotto; il metodo POST invia le variabili in un'intestazione HTTP separata e viene utilizzato per l'invio di stringhe di
variabili lunghe.
Esempio
Questo esempio carica un'immagine nel clip filmato. Quando si fa clic sull'immagine, un nuovo URL viene caricato in
una nuova finestra del browser.
var listenerObject:Object = new Object();
listenerObject.onLoadInit = function(target_mc:MovieClip) {
target_mc.onRelease = function() {
getURL("http://www.macromedia.com/software/flash/flashpro/", "_blank");
};
};
var logo:MovieClipLoader = new MovieClipLoader();
logo.addListener(listenerObject);
logo.loadClip("http://www.helpexamples.com/flash/images/image1.jpg",
this.createEmptyMovieClip("macromedia_mc", this.getNextHighestDepth()));
Nell'esempio seguente getURL() viene usato per inviare un messaggio e-mail:
myBtn_btn.onRelease = function(){
getURL("mailto:[email protected]");
};
È anche possibile utilizzare GET o POST per inviare variabili. L'esempio seguente utilizza GET per aggiungere variabili a
un URL:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 23
Elementi del linguaggio ActionScript
var firstName:String = "Gus";
var lastName:String = "Richardson";
var age:Number = 92;
myBtn_btn.onRelease = function() {
getURL("http://www.macromedia.com", "_blank", "GET");
};
Il codice ActionScript seguente utilizza POST per inviare le variabili all'intestazione HTTP. Assicurarsi di provare i
documenti in una finestra del browser per evitare che le variabili vengano inviate mediante GET:
var firstName:String = "Gus";
var lastName:String = "Richardson";
var age:Number = 92;
getURL("http://www.macromedia.com", "_blank", "POST");
Vedere anche
Funzione loadVariables, send (metodo XML.send), sendAndLoad (metodo XML.sendAndLoad)
Funzione getVersion
getVersion() : String
Restituisce una stringa contenente le informazioni sulla versione di Flash Player e la piattaforma. La funzione
getVersion restituisce informazioni solo su Flash Player 5 e versioni successive.
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa contenente le informazioni sulla versione di Flash Player e la piattaforma.
Esempio
L'esempio seguente traccia il numero di versione di Flash Player in cui è in riproduzione il file SWF:
var flashVersion:String = getVersion();
trace(flashVersion); // output: WIN 8,0,1,0
trace($version); // output: WIN 8,0,1,0
trace(System.capabilities.version); // output: WIN 8,0,1,0
La stringa seguente viene restituita dalla funzione getVersion:
WIN 8,0,1,0
La stringa restituita indica che la piattaforma è Microsoft Windows e che il numero di versione principale di Flash
Player è 8 mentre quello della versione minore è 1 (8.1).
Vedere anche
os (proprietà capabilities.os), version (proprietà capabilities.version)
Funzione gotoAndPlay
gotoAndPlay( [scene:String,] frame:Object) : Void
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 24
Elementi del linguaggio ActionScript
Invia l'indicatore di riproduzione al fotogramma specificato in una scena e avvia la riproduzione da quel fotogramma.
Se non viene specificata alcuna scena, l'indicatore di riproduzione passa al fotogramma specificato nella scena
corrente. È possibile utilizzare il parametro scene solo nella linea temporale principale, non all'interno delle linee
temporali per clip filmato o altri oggetti del documento.
Disponibilità
Flash Lite 1.0
Parametri
scene:String [opzionale] - Una stringa che specifica il nome della scena a cui viene inviato l'indicatore di
riproduzione.
frame:Object - Un numero che rappresenta il numero del fotogramma, o una stringa che rappresenta l'etichetta del
fotogramma a cui viene inviato l'indicatore di riproduzione.
Esempio
Nell'esempio seguente il documento ha due scene: sceneOne e sceneTwo. La prima scena contiene un'etichetta di
fotogramma nel fotogramma 10 di nome newFrame e due pulsanti, myBtn_btn e myOtherBtn_btn. Questo codice
ActionScript viene collocato nel fotogramma 1, nella scena 1 della linea temporale principale.
stop();
myBtn_btn.onRelease = function(){
gotoAndPlay("newFrame");
};
myOtherBtn_btn.onRelease = function(){
gotoAndPlay("sceneTwo", 1);
};
Quando l'utente fa clic sui pulsanti, l'indicatore di riproduzione si sposta alla posizione specificata e continua la
riproduzione.
Vedere anche
gotoAndPlay (metodo MovieClip.gotoAndPlay), Funzione nextFrame, Funzione play, Funzione prevFrame
Funzione gotoAndStop
gotoAndStop( [scene:String,] frame:Object) : Void
Invia l'indicatore di riproduzione al fotogramma specificato in una scena e lo arresta. Se non è stata specificata nessuna
scena, l'indicatore di riproduzione viene inviato al fotogramma della scena corrente. È possibile usare il parametro
scene solo nella linea temporale principale e non nelle linee temporali per le clip filmato o altri oggetti del documento.
Disponibilità
Flash Lite 1.0
Parametri
scene:String [opzionale] - Una stringa che specifica il nome della scena a cui viene inviato l'indicatore di
riproduzione.
frame:Object - Un numero che rappresenta il numero del fotogramma, o una stringa che rappresenta l'etichetta del
fotogramma a cui viene inviato l'indicatore di riproduzione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 25
Elementi del linguaggio ActionScript
Esempio
Nell'esempio seguente il documento ha due scene: sceneOne e sceneTwo. La prima scena contiene un'etichetta di
fotogramma nel fotogramma 10 di nome newFrame e due pulsanti, myBtn_btn e myOtherBtn_btn. Questo codice
ActionScript viene collocato nel fotogramma 1, nella scena 1 della linea temporale principale:
stop();
myBtn_btn.onRelease = function(){
gotoAndStop("newFrame");
};
myOtherBtn_btn.onRelease = function(){
gotoAndStop("sceneTwo", 1);
};
Quando l'utente fa clic sui pulsanti, l'indicatore di riproduzione si sposta alla posizione specificata e arresta la
riproduzione.
Vedere anche
gotoAndStop (metodo MovieClip.gotoAndStop), Funzione stop, Funzione play, Funzione gotoAndPlay
Funzione ifFrameLoaded
ifFrameLoaded( [scene,] frame) { statement(s); }
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata. Adobe consiglia di usare la proprietà
MovieClip._framesloaded.
Verifica se il contenuto di un fotogramma specifico è disponibile localmente. Utilizzare ifFrameLoaded per avviare
la riproduzione di un'animazione semplice mentre il resto del file SWF viene scaricato nel computer locale. La
differenza tra l'utilizzo di _framesloaded e ifFrameLoaded consiste nel fatto che _framesloaded consente di
aggiungere istruzioni if o else personalizzate.
Disponibilità
Flash Lite 1.0
Parametri
scene:String [opzionale] - Una stringa che specifica il nome della scena da caricare.
frame:Object - Il numero di fotogramma o l'etichetta di fotogramma che deve essere caricata prima dell'esecuzione
dell'istruzione successiva.
statement(s):Object - Le istruzioni da eseguire se viene caricata la scena specificata o la scena con il fotogramma.
Vedere anche
addListener (metodo MovieClipLoader.addListener)
Funzione int
int(value) : Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di Math.round().
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 26
Elementi del linguaggio ActionScript
Converte un numero decimale in valore intero troncando il valore decimale. Questa funzione è equivalente a
Math.floor() se il parametro value è positivo e a Math.ceil() se il parametro value è negativo.
Disponibilità
Flash Lite 1.0
Parametri
value:Number - Un numero da arrotondare a intero.
Restituisce
Number - Il valore intero troncato.
Vedere anche
round (metodo Math.round), floor (metodo Math.floor), ceil (metodo Math.ceil)
Funzione isFinite
isFinite(expression:Object) : Boolean
Valuta expression e restituisce true se si tratta di un numero finito oppure false se si tratta di un valore infinito o
infinito negativo. La presenza di un valore infinito o infinito negativo indica una condizione di errore matematico,
come la divisione per 0.
Disponibilità
Flash Lite 2.0
Parametri
expression:Object - Valore booleano, variabile o altra espressione da valutare.
Restituisce
Boolean - Un valore booleano.
Esempio
Il seguente esempio mostra i valori restituiti da isFinite:
isFinite(56)
// returns true
isFinite(Number.POSITIVE_INFINITY)
//returns false
Funzione isNaN
isNaN(expression:Object) : Boolean
Valuta il parametro e restituisce true se il valore è NaN (not a number). Questa funzione è utile per verificare se
un'espressione matematica restituisce un numero.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 27
Elementi del linguaggio ActionScript
Parametri
expression:Object - Valore booleano, variabile o altra espressione da valutare.
Restituisce
Boolean - Un valore booleano.
Esempio
Il codice seguente mostra i valori restituiti dalla funzione isNaN():
trace( isNaN("Tree") );
// returns true
trace( isNaN(56) );
// returns false
trace( isNaN(Number.POSITIVE_INFINITY) )
// returns false
L'esempio seguente mostra il modo in cui è possibile utilizzare la funzione isNaN() per verificare se un'espressione
matematica contiene o meno un errore:
var dividend:Number;
var divisor:Number;
divisor = 1;
trace( isNaN(dividend/divisor) );
// output: true
// The output is true because the variable dividend is undefined.
// Do not use isNAN() to check for division by 0 because it will return false.
// A positive number divided by 0 equals Infinity (Number.POSITIVE_INFINITY).
// A negative number divided by 0 equals -Infinity (Number.NEGATIVE_INFINITY).
Vedere anche
Costante NaN, NaN (proprietà Number.NaN)
Funzione length
length(expression)length(variable)
Sconsigliata a partire da Flash Player 5. Questa funzione con le relative funzioni stringa è stata sconsigliata. Adobe
consiglia di usare i metodi della classe String e la proprietà String.length per eseguire le stesse operazioni.
Restituisce la lunghezza della stringa o della variabile specificata.
Disponibilità
Flash Lite 1.0
Parametri
expression:String - Una stringa.
variable:Object - Il nome di una variabile.
Restituisce
Number - La lunghezza della stringa o della variabile specificata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 28
Elementi del linguaggio ActionScript
Esempio
L'esempio seguente restituisce la lunghezza della stringa "Hello": length("Hello"); Il risultato è 5.
Vedere anche
Operatore " (delimitatore di stringa), String, length (proprietà String.length)
Funzione loadMovie
loadMovie(url:String, target:Object [, method:String]) : Void
loadMovie(url:String, target:String [, method:String]) : Void
Carica un file SWF o JPEG in Flash Player durante la riproduzione del file SWF originale. i file JPEG salvati in formato
progressivo non sono supportati.
Per verificare lo stato di avanzamento dell'operazione, utilizzare MovieClipLoader.loadClip() anziché questa
funzione.
La funzione loadMovie() consente di visualizzare diversi file SWF contemporaneamente e di passare da uno all'altro
senza caricare un altro documento HTML. Senza la funzione loadMovie(), Flash Player visualizza un unico file SWF.
Se si desidera caricare un file SWF o JPEG in un livello specifico, utilizzare loadMovieNum() anziché loadMovie().
Quando un file SWF viene caricato in un clip filmato target, è possibile utilizzare il percorso target del clip filmato per
indicare come destinazione il file SWF. Un file SWF o un'immagine caricati in un target ereditano le proprietà delle
modifiche in scala, la posizione e la rotazione del clip filmato target. L'angolo superiore sinistro dell'immagine o del
file SWF caricati viene allineato con il punto di registrazione del clip filmato target. In alternativa, se il target è la linea
temporale principale, l'angolo superiore sinistro dell'immagine o del file SWF viene allineato all'angolo superiore
sinistro dello stage.
Utilizzare unloadMovie() per rimuovere i file SWF caricato mediante loadMovie().
Disponibilità
Flash Lite 1.1
Parametri
url:String - L'URL assoluto o relativo del file SWF o JPEG da caricare. Un percorso relativo deve essere tale rispetto
al file SWF che si trova sul livello 0. Gli URL assoluti devono includere il riferimento al protocollo, ad esempio http://
o file:///.
target:Object - Un riferimento a un clip filmato o una stringa che rappresenta il percorso di un clip filmato target.
Il clip filmato target viene sostituito dal file SWF o dall'immagine caricati.
method:String [opzionale] - Specifica un metodo HTTP per l'invio di variabili. Il parametro deve essere la stringa
GET o POST. Se non vi sono variabili da inviare, omettere questo parametro. Il metodo GET aggiunge le variabili alla fine
dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione
HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
Uso 1: L'esempio seguente carica il file SWF di nome circle.swf dalla stessa directory e sostituisce il clip filmato
mySquare che è già presente sullo stage:
loadMovie("circle.swf", mySquare);
// equivalent statement (Usage 1): loadMovie("circle.swf", _level0.mySquare);
// equivalent statement (Usage 2): loadMovie("circle.swf", "mySquare");
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 29
Elementi del linguaggio ActionScript
L'esempio seguente carica il file SWF di nome circle.swf dalla stessa directory ma sostituisce il clip filmato principale
anziché mySquare:
loadMovie("circle.swf", this);
// Note that using "this" as a string for the target parameter will not work
// equivalent statement (Usage 2): loadMovie("circle.swf", "_level0");
L'istruzione loadMovie() seguente carica il file SWF di nome sub.swf dalla stessa directory in un nuovo clip filmato
di nome logo_mc creato mediante createEmptyMovieClip():
this.createEmptyMovieClip("logo_mc", 999);
loadMovie("sub.swf", logo_mc);
È possibile aggiungere il codice seguente per caricare un'immagine JPEG di nome image1.jpg dalla stessa directory del
file SWF che carica sub.swf. L'immagine JPEG viene caricata quando si fa clic sul pulsante myBtn_btn. Questo codice
carica l'immagine JPEG in logo_mc. Di conseguenza, sostituisce sub.swf con l'immagine JPEG.
myBtn_btn.onRelease = function(){
loadMovie("image1.jpg", logo_mc);
};
Uso 2: L'esempio seguente carica il file SWF di nome circle.swf dalla stessa directory e sostituisce il clip filmato
mySquare che è già presente sullo stage:
loadMovie("circle.swf", "mySquare");
Vedere anche
Proprietà _level, Funzione loadMovieNum, loadMovie (metodo MovieClip.loadMovie), loadClip (metodo
MovieClipLoader.loadClip)Funzione unloadMovie
Funzione loadMovieNum
loadMovieNum(url:String, level:Number [, method:String]) : Void
Carica un file SWF o JPEG in un livello di Flash Player durante la riproduzione del file SWF caricato originariamente.
per verificare lo stato di avanzamento dell'operazione, utilizzare MovieClipLoader.loadClip() anziché questa
funzione.
Normalmente, Flash Player si chiude dopo aver visualizzato un file SWF. L'azione loadMovieNum() consente di
visualizzare diversi file SWF contemporaneamente e di passare da uno all'altro senza caricare un altro documento HTML.
Se si desidera specificare un target invece di un livello, utilizzare loadMovie() anziché loadMovieNum().
Flash Player dispone di un ordine di impilamento dei livelli a partire dal livello 0. Questi livelli sono paragonabili a
fogli in acetato in quanto sono completamente trasparenti a eccezione degli oggetti su ciascun livello. Quando si
utilizza loadMovieNum(), è necessario specificare un livello di Flash Player in cui caricare il file SWF. Quando un file
SWF viene caricato in un livello, è possibile utilizzare la sintassi _levelN, dove N è il numero del livello, per indicare
come destinazione il file SWF.
Quando si carica un file SWF, è possibile specificare un numero di livello qualsiasi e caricare i file in un livello in cui è
già presente un file SWF. Se si procede in questo modo, il nuovo file SWF sostituisce il file SWF esistente. Se si carica
un file SWF nel livello 0, vengono scaricati tutti i livelli presenti in Flash Player e il livello 0 viene sostituito con il nuovo
file. Il file SWF nel livello 0 imposta la frequenza dei fotogrammi, il colore di sfondo e le dimensioni dei fotogrammi
per tutti i file SWF caricati.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 30
Elementi del linguaggio ActionScript
L'azione loadMovieNum() consente anche di caricare file JPEG in un file SWF durante la riproduzione di quest'ultimo.
Nel caso delle immagini e dei file SWF, l'angolo superiore sinistro dell'immagine viene allineato con l'angolo superiore
sinistro dello stage durante il caricamento del file; inoltre, il file caricato eredita la rotazione e le modifiche in scala, e
il contenuto originale viene sovrascritto nel livello specificato.
Nota: i file JPEG salvati in formato progressivo non sono supportati.
Utilizzare unloadMovieNum() per rimuovere i file SWF caricato mediante loadMovieNum().
Disponibilità
Flash Lite 1.1
Parametri
url:String - L'URL assoluto o relativo del file SWF o JPEG da caricare. Un percorso relativo deve essere tale rispetto
al file SWF nel livello 0. Per l'uso con il player standalone Flash Player o per la verifica in modalità di prova
nell'applicazione di creazione Flash, tutti i file SWF devono essere archiviati nella stessa cartella e i nomi file non
devono contenere specifiche relative alla cartella o all'unità disco.
level:Number - Un numero intero che specifica il livello di Flash Player in cui viene caricato il file SWF.
method:String [opzionale] - Specifica un metodo HTTP per l'invio di variabili. Il parametro deve essere la stringa
GET o POST. Se non vi sono variabili da inviare, omettere questo parametro. Il metodo GET aggiunge le variabili alla fine
dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione
HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
L'esempio seguente carica l'immagine JPEG di nome tim.jpg nel secondo livello di Flash Player:
loadMovieNum("http://www.helpexamples.com/flash/images/image1.jpg", 2);
Vedere anche
Funzione unloadMovieNum, Funzione loadMovie, loadClip (metodo MovieClipLoader.loadClip),
Proprietà _level
Funzione loadVariables
loadVariables(url:String, target:Object [, method:String]) : Void
Legge i dati da un file esterno, ad esempio un file di testo o un testo generato da ColdFusion, uno script CGI, ASP
(Active Server Pages), PHP o Perl, e imposta i valori delle variabili in un clip filmato target. Questa azione può essere
utilizzata anche per aggiornare le variabili del file SWF attivo con nuovi valori.
Il testo nell'URL specificato deve essere nel formato MIME standard application/x-www-form-urlencoded (formato
standard utilizzato dagli script CGI). È possibile specificare un numero di variabili qualsiasi. L'espressione seguente
definisce diverse variabili:
company=Macromedia&address=600+Townsend&city=San+Francisco&zip=94103
Nei file SWF eseguiti in una versione di Flash Player precedente alla 7, l'url deve trovarsi nello stesso superdominio del
file SWF che emette la chiamata. Per identificare il superdominio, rimuovere la parte più a sinistra dell'URL di un file.
Ad esempio, un file SWF che si trova in www.someDomain.com può caricare dati da un'origine situata in
store.someDomain.com in quanto entrambi i file si trovano nel superdominio someDomain.com.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 31
Elementi del linguaggio ActionScript
Nei file SWF di qualunque versione eseguiti in Flash Player 7 o versione superiore, l'url deve essere esattamente nello
stesso sottodominio del file SWF che emette la chiamata (vedere "Funzionalità di sicurezza" in Uso di ActionScript in
Flash). Ad esempio, un file SWF che si trova nel sito www.someDomain.com può caricare dati solo da altre origini
presenti nel sito www.someDomain.com. Per caricare dati da un dominio diverso, è possibile collocare un file di criteri
dei domini sul server che ospita il file SWF al quale si sta accedendo. Per ulteriori informazioni, vedere "Come
consentire il caricamento di dati tra domini diversi" in Uso di ActionScript in Flash.
Per caricare variabili in un livello specifico, utilizzare loadVariablesNum() anziché loadVariables().
Disponibilità
Flash Lite 1.1
Parametri
url:String - URL assoluto o relativo in cui si trovano le variabili. Se il file SWF che emette la chiamata viene eseguito
in un browser Web, l'url deve trovarsi nello stesso dominio del file SWF; per informazioni dettagliate, consultare la
sezione Descrizione.
target:Object - Il percorso target di un clip filmato che riceve le variabili caricate.
method:String [opzionale] - Specifica un metodo HTTP per l'invio di variabili. Il parametro deve essere la stringa
GET o POST. Se non vi sono variabili da inviare, omettere questo parametro. Il metodo GET aggiunge le variabili alla fine
dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione
HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
L'esempio seguente carica le informazioni dal file di testo params.txt nel clip filmato target_mc creato mediante
createEmptyMovieClip(). La funzione setInterval() viene utilizzata per controllare l'avanzamento. Lo script
cerca una variabile denominata done nel file params.txt.
this.createEmptyMovieClip("target_mc", this.getNextHighestDepth());
loadVariables("params.txt", target_mc);
function checkParamsLoaded() {
if (target_mc.done == undefined) {
trace("not yet.");
} else {
trace("finished loading. killing interval.");
trace("-------------");
for (i in target_mc) {
trace(i+": "+target_mc[i]);
}
trace("-------------");
clearInterval(param_interval);
}
}
var param_interval = setInterval(checkParamsLoaded, 100);
Il file esterno params.txt include il testo seguente:
var1="hello"&var2="goodbye"&done="done"
Vedere anche
Funzione loadVariablesNum, Funzione loadMovie, Funzione loadMovieNum, Funzione getURL, loadMovie
(metodo MovieClip.loadMovie)loadVariables (metodo MovieClip.loadVariables), load (metodo
LoadVars.load)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 32
Elementi del linguaggio ActionScript
Funzione loadVariablesNum
loadVariablesNum(url:String, level:Number [, method:String]) : Void
Legge i dati da un file esterno, ad esempio un file di testo o un testo generato da ColdFusion, uno script CGI, ASP
(Active Server Pages), PHP o Perl, e imposta i valori delle variabili in un livello di FlashPlayer. Questa funzione può
essere utilizzata anche per aggiornare le variabili del file SWF attivo con nuovi valori.
Il testo nell'URL specificato deve essere nel formato MIME standard application/x-www-form-urlencoded (formato
standard utilizzato dagli script CGI). È possibile specificare un numero di variabili qualsiasi. L'espressione seguente
definisce diverse variabili:
company=Macromedia&address=601+Townsend&city=San+Francisco&zip=94103
Nei file SWF eseguiti in una versione di Flash Player precedente alla 7, l'url deve trovarsi nello stesso superdominio del
file SWF che emette la chiamata. Per identificare il superdominio, rimuovere la parte più a sinistra dell'URL di un file.
Ad esempio, un file SWF che si trova in www.someDomain.com può caricare dati da un'origine situata in
store.someDomain.com in quanto entrambi i file si trovano nel superdominio someDomain.com.
Nei file SWF di qualunque versione eseguiti in Flash Player 7 o versione superiore, l'url deve essere esattamente nello
stesso sottodominio del file SWF che emette la chiamata (vedere "Funzionalità di sicurezza" in Uso di ActionScript in
Flash). Ad esempio, un file SWF che si trova nel sito www.someDomain.com può caricare dati solo da altre origini
presenti nel sito www.someDomain.com. Per caricare dati da un dominio diverso, è possibile collocare un file di criteri
dei domini sul server che ospita il file SWF. Per ulteriori informazioni, vedere "Come consentire il caricamento di dati
tra domini diversi" in Uso di ActionScript in Flash.
Per caricare variabili in un livello specifico, utilizzare loadVariables() anziché loadVariablesNum().
Disponibilità
Flash Lite 1.1
Parametri
url:String - URL assoluto o relativo in cui si trovano le variabili. Se il file SWF che emette la chiamata viene eseguito
in un browser Web, l'url deve trovarsi nello stesso dominio del file SWF; per informazioni dettagliate, consultare la
sezione Descrizione.
level:Number - Un numero intero che specifica il livello di Flash Player in cui ricevere le variabili.
method:String [opzionale] - Specifica un metodo HTTP per l'invio di variabili. Il parametro deve essere la stringa
GET o POST. Se non vi sono variabili da inviare, omettere questo parametro. Il metodo GET aggiunge le variabili alla fine
dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione
HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
L'esempio seguente carica le informazioni dal file di testo params.txt nella linea temporale principale del file SWF al
secondo livello in Flash Player. I nomi delle variabili dei campi di testo devono corrispondere ai nomi delle variabili
presenti nel file params.txt. La funzione setInterval() viene utilizzata per verificare l'avanzamento dei dati che
vengono caricati nel file SWF. Lo script cerca una variabile denominata done nel file params.txt.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 33
Elementi del linguaggio ActionScript
loadVariablesNum("params.txt", 2);
function checkParamsLoaded() {
if (_level2.done == undefined) {
trace("not yet.");
} else {
trace("finished loading. killing interval.");
trace("-------------");
for (i in _level2) {
trace(i+": "+_level2[i]);
}
trace("-------------");
clearInterval(param_interval);
}
}
var param_interval = setInterval(checkParamsLoaded, 100);
// Params.txt includes the following text
var1="hello"&var2="goodbye"&done="done"
Vedere anche
Funzione getURL, Funzione loadMovie, Funzione loadMovieNum, Funzione loadVariables, loadMovie
(metodo MovieClip.loadMovie)loadVariables (metodo MovieClip.loadVariables), load (metodo
LoadVars.load)
Funzione mbchr
mbchr(number)
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore del metodo
String.fromCharCode().
Converte un numero di codice ASCII in un carattere multibyte.
Disponibilità
Flash Lite 1.0
Parametri
number:Number - Il numero da convertire in carattere multibyte.
Vedere anche
fromCharCode (metodo String.fromCharCode)
Funzione mblength
mblength(string) : Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore della proprietà String.length.
Restituisce la lunghezza della stringa a caratteri multibyte.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 34
Elementi del linguaggio ActionScript
Parametri
string:String - La stringa da misurare.
Restituisce
Number - La lunghezza della stringa a caratteri multibyte.
Vedere anche
String, length (proprietà String.length)
Funzione mbord
mbord(character) : Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di String.charCodeAt().
Converte il carattere specificato in un numero multibyte.
Disponibilità
Flash Lite 1.0
Parametri
character:String - Il carattere da convertire in numero multibyte.
Restituisce
Number - Il carattere convertito.
Vedere anche
charCodeAt (metodo String.charCodeAt)
Funzione mbsubstring
mbsubstring(value, index, count) : String
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di String.substr().
Estrae una nuova stringa a caratteri multibyte da una stringa a caratteri multibyte.
Disponibilità
Flash Lite 1.0
Parametri
value:String - La stringa multibyte da cui deve essere estratta una nuova stringa multibyte.
index:Number - Il numero del primo carattere da estrarre.
count:Number - Il numero di caratteri da includere nella stringa estratta, escluso il carattere index.
Restituisce
String - La stringa estratta dalla stringa a caratteri multibyte.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 35
Elementi del linguaggio ActionScript
Vedere anche
substr (metodo String.substr)
Funzione nextFrame
nextFrame() : Void
Invia l'indicatore di riproduzione al fotogramma successivo.
Disponibilità
Flash Lite 1.0
Esempio
Nell'esempio seguente, quando l'utente preme il tasto freccia destra o giù, l'indicatore di riproduzione si sposta al
fotogramma successivo e si arresta. Se l'utente preme il tasto freccia sinistro o su, l'indicatore di riproduzione si sposta
al fotogramma precedente e si arresta. Il listener viene inizializzato affinché attenda la pressione del tasto freccia, e
viene utilizzata la variabile init per impedire che il listener venga ridefinito se l'indicatore di riproduzione ritorna al
fotogramma 1.
stop();
if (init == undefined) {
someListener = new Object();
someListener.onKeyDown = function() {
if (Key.isDown(Key.LEFT) || Key.isDown(Key.UP)) {
_level0.prevFrame();
} else if (Key.isDown(Key.RIGHT) || Key.isDown(Key.DOWN)) {
_level0.nextFrame();
}
};
Key.addListener(someListener);
init = 1;
}
Vedere anche
Funzione prevFrame
Funzione nextScene
nextScene() : Void
Invia l'indicatore di riproduzione al fotogramma 1 della scena successiva.
Disponibilità
Flash Lite 1.0
Esempio
Nell'esempio seguente, quando l'utente fa clic sul pulsante creato in fase di runtime, l'indicatore di riproduzione viene
inviato al fotogramma 1 della scena successiva. Creare due scene, quindi immettere il codice ActionScript seguente nel
fotogramma 1 della scena 1.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 36
Elementi del linguaggio ActionScript
stop();
if (init == undefined) {
this.createEmptyMovieClip("nextscene_mc", this.getNextHighestDepth());
nextscene_mc.createTextField("nextscene_txt", this.getNextHighestDepth(), 200, 0, 100,
22);
nextscene_mc.nextscene_txt.autoSize = true;
nextscene_mc.nextscene_txt.border = true;
nextscene_mc.nextscene_txt.text = "Next Scene";
this.createEmptyMovieClip("prevscene_mc", this.getNextHighestDepth());
prevscene_mc.createTextField("prevscene_txt", this.getNextHighestDepth(), 00, 0, 100, 22);
prevscene_mc.prevscene_txt.autoSize = true;
prevscene_mc.prevscene_txt.border = true;
prevscene_mc.prevscene_txt.text = "Prev Scene";
nextscene_mc.onRelease = function() {
nextScene();
};
prevscene_mc.onRelease = function() {
prevScene();
};
init = true;
}
Assicurarsi di specificare l'azione stop() per il fotogramma 1 della scena.
Vedere anche
Funzione prevScene
Funzione Number
Number(expression) : Number
Converte il parametro expression in numero e restituisce un valore come descritto nell'elenco seguente:
• Se expression è un numero, il valore restituito è expression.
• Se expression è un valore booleano, viene restituito il valore 1 se expression è true, 0 o se expression è false.
• Se expression è una stringa, la funzione cerca di analizzare expression come numero decimale con un esponente
finale opzionale, vale a dire 1.57505e-3.
• Se expression è NaN, il valore restituito è NaN.
• Se expression è undefined, viene restituito il seguente valore:
• - Nei file pubblicati per Flash Player 6 o versione precedente, il risultato è 0.
•
Nei file pubblicati per Flash Player 7 o versione successiva, il risultato è NaN.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 37
Elementi del linguaggio ActionScript
Parametri
expression:Object - Un'espressione che consente di convertire in numero. I numeri o le stringhe che iniziano con
0x vengono interpretati come valori esadecimali. I numeri o le stringhe che iniziano con 0 vengono interpretati come
valori ottali.
Restituisce
Number - Un numero o NaN (not a number).
Esempio
Nell'esempio seguente, viene creato un campo di testo sullo stage in fase di runtime:
this.createTextField("counter_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
counter_txt.autoSize = true;
counter_txt.text = 0;
function incrementInterval():Void {
var counter:Number = counter_txt.text;
// Without the Number() function, Flash would concatenate the value instead
// of adding values. You could also use "counter_txt.text++;"
counter_txt.text = Number(counter) + 1;
}
var intervalID:Number = setInterval(incrementInterval, 1000);
Vedere anche
Costante NaN, Number, Funzione parseInt, Funzione parseFloat
Funzione Object
Object( [value] ) : Object
Crea un nuovo oggetto vuoto o converte in oggetto il numero, la stringa o il valore booleano specificati. Questo
comando equivale alla creazione di un oggetto mediante la funzione di costruzione dell'oggetto (vedere "Funzione di
costruzione per la classe Object").
Disponibilità
Flash Lite 2.0
Parametri
value:Object [opzionale] - Un numero, una stringa o un valore booleano.
Restituisce
Object - Un oggetto.
Esempio
Nell'esempio seguente viene creato un nuovo oggetto vuoto, che viene successivamente riempito con dei valori:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 38
Elementi del linguaggio ActionScript
var company:Object = new Object();
company.name = "Macromedia, Inc.";
company.address = "600 Townsend Street";
company.city = "San Francisco";
company.state = "CA";
company.postal = "94103";
for (var i in company) {
trace("company."+i+" = "+company[i]);
}
Vedere anche
Object
Gestore on
on(mouseEvent:Object) { // your statements here }
Specifica l'evento associato al mouse o la pressione di un tasto che attiva un'azione.
Disponibilità
Flash Lite 2.0
Parametri
mouseEvent:Object - Un mouseEvent è un trigger chiamato evento. Quando si verifica l'evento, vengono eseguite le
istruzioni che lo seguono racchiuse tra parentesi graffe ({ }). Per il parametro mouseEvent possono essere specificati i
valori seguenti:
•
press Il pulsante del mouse viene premuto quando il puntatore si trova sopra il pulsante.
•
release Il pulsante del mouse viene rilasciato quando il puntatore si trova sopra il pulsante.
•
releaseOutside Quando il puntatore si trova sopra il pulsante, il pulsante del mouse viene premuto, il puntatore
esce dall'area del pulsante e il pulsante viene rilasciato. Gli eventi press e dragOut precedono sempre un evento
releaseOutside. Questo evento è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
•
rollOutIl puntatore esce dall'area del pulsante. Questo evento è supportato in Flash Lite solo se
System.capabilities.hasMouse è true o System.capabilities.hasStylus è true.
•
rollOver Il puntatore del mouse scorre sopra il pulsante.
•
dragOut Quando il puntatore si trova sopra il pulsante, il pulsante del mouse viene premuto, quindi il puntatore
esce dall'area del pulsante.
•
dragOver Quando il puntatore si trova sopra il pulsante, il pulsante del mouse viene premuto, il puntatore esce
dall'area del pulsante, quindi torna sopra il pulsante.
•
keyPress "<key> " Viene premuto il tasto specificato. Per la porzione key (tasto) del parametro, specificare una
costante della classe key, come indicato nei suggerimenti sul codice del pannello Azioni. È possibile utilizzare
questo parametro per intercettare la pressione di un tasto, vale a dire per ignorare qualsiasi comportamento
incorporato relativo al tasto specificato. Il pulsante può trovarsi in qualsiasi punto dell'applicazione, nello stage o
fuori dallo stage. L'unica limitazione a questa tecnica è il fatto che non è possibile applicare il gestore on() in fase
di runtime; questa operazione va eseguita in fase di creazione. Selezionare sempre Controllo > Disattiva scelte
rapide da tastiera. In caso contrario, i tasti con comportamento incorporato non vengono ignorati quando si esegue
una verifica dell'applicazione mediante il comando Controllo > Prova filmato.
Per un elenco delle costanti key, vedere la classe Key.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 39
Elementi del linguaggio ActionScript
Esempio
Nello script seguente la funzione startDrag() viene eseguita quando si preme il pulsante del mouse, e viene eseguito
lo script condizionale quando si rilascia il pulsante del mouse e l'oggetto viene rilasciato:
on (press) {
startDrag(this);
}
on (release) {
trace("X:"+this._x);
trace("Y:"+this._y);
stopDrag();
}
Vedere anche
Gestore onClipEvent(), Key
Gestore onClipEvent()
onClipEvent(movieEvent:Object) { // your statements here }
Attiva le azioni definite per un'istanza specifica di un clip filmato.
Disponibilità
Flash Lite 2.0
Parametri
mouseEvent:Object - Un movieEvent è un trigger chiamato evento. Quando si verifica l'evento, vengono eseguite le
istruzioni che lo seguono racchiuse tra parentesi graffe ({ }). Per il parametro movieEvent possono essere specificati i
valori seguenti:
•
load L'azione viene avviata nel momento in cui viene creata l'istanza del clip filmato e
questo appare nella linea temporale.
•
unload L'azione viene avviata nel primo fotogramma dopo che il clip filmato è stato rimosso dalla linea temporale.
Le azioni associate all'evento Unload del clip filmato vengono elaborate prima che qualsiasi azione venga associata
al fotogramma interessato.
•
enterFrame L'azione viene attivata in modo continuo alla stessa frequenza dei fotogrammi del clip filmato. Le
azioni associate all'evento enterFrame del clip filmato vengono elaborate prima che qualsiasi azione fotogramma
venga associata ai fotogrammi interessati.
•
mouseMove L'azione viene avviata ogni volta che il mouse viene spostato. Utilizzare le proprietà _xmouse e _ymouse
per determinare la posizione corrente del mouse. Questo evento è supportato in Flash Lite solo se
System.capabilities.hasMouse è true.
•
mouseDown L'azione viene avviata quando si preme il pulsante sinistro del mouse. Questo evento è supportato in
Flash Lite solo se System.capabilities.hasMouse è true o System.capabilities.hasStylus è true.
•
mouseUp L'azione viene avviata quando si rilascia il pulsante sinistro del mouse. Questo evento è supportato in
Flash Lite solo se System.capabilities.hasMouse è true o System.capabilities.hasStylus è true.
•
keyDown L'azione viene avviata quando si preme un tasto. Utilizzare Key.getCode() per recuperare le
informazioni sull'ultimo tasto premuto.
•
keyUp L'azione viene avviata quando si rilascia un tasto. Utilizzare il metodo Key.getCode() per recuperare le
informazioni sull'ultimo tasto premuto.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 40
Elementi del linguaggio ActionScript
•
data L'azione viene avviata quando l'azione loadVariables() o loadMovie() riceve i dati. Quando viene
specificato con un'azione loadVariables(), l'evento data si verifica una sola volta, al momento del caricamento
dell'ultima variabile. Quando viene specificato mediante un'azioneloadMovie(), l'evento data si verifica
ripetutamente a ogni sezione di dati recuperata.
Esempio
L'esempio seguente utilizza onClipEvent() con l'evento di filmato keyDown ed è progettato per essere associato a un
clip filmato o a un pulsante. L'evento di filmatokeyDown viene generalmente utilizzato con uno o più metodi e
proprietà dell'oggetto Key. Lo script seguente utilizza Key.getCode() per identificare il tasto premuto dall'utente; se
il tasto premuto corrisponde alla proprietà Key.RIGHT, l'indicatore di riproduzione viene inviato al fotogramma
successivo; se il tasto premuto corrisponde alla proprietà Key.LEFT, l'indicatore di riproduzione viene inviato al
fotogramma precedente.
onClipEvent (keyDown) {
if (Key.getCode() == Key.RIGHT) {
this._parent.nextFrame();
} else if (Key.getCode() == Key.LEFT) {
this._parent.prevFrame();
}
}
Il seguente esempio utilizza onClipEvent() con gli eventi di filmato load e mouseMove. Le proprietà _xmouse e
_ymouse rilevano la posizione del mouse ogni volta che quest'ultimo viene spostato, e la visualizzano nel campo di
testo che è stato creato in fase di runtime.
onClipEvent (load) {
this.createTextField("coords_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
coords_txt.autoSize = true;
coords_txt.selectable = false;
}
onClipEvent (mouseMove) {
coords_txt.text = "X:"+_root._xmouse+",Y:"+_root._ymouse;
}
Vedere anche
Key, _xmouse (proprietà MovieClip._xmouse), _ymouse (proprietà MovieClip._ymouse), Costanti
Funzione ord
ord(character) : Number
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sostituita dai metodi e dalle proprietà della classe
String.
Converte i caratteri in numeri di codice ASCII.
Disponibilità
Flash Lite 1.0
Parametri
character:String - Il carattere da convertire in numero di codice ASCII.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 41
Elementi del linguaggio ActionScript
Restituisce
Number - Il numero di codice ASCII del carattere specificato.
Vedere anche
String, charCodeAt (metodo String.charCodeAt)
Funzione parseFloat
parseFloat(string:String) : Number
Converte una stringa in un numero a virgola mobile. La funzione legge, o analizza, e restituisce i numeri in una stringa
finché non trova un carattere che non fa parte del numero iniziale. Se la stringa non inizia con un numero che può
essere analizzato, parseFloat() restituisce NaN. Lo spazio bianco che precede i numeri interi validi viene ignorato,
allo stesso modo dei caratteri non numerici finali.
Disponibilità
Flash Lite 2.0
Parametri
string:String - La stringa da leggere e convertire in numero a virgola mobile.
Restituisce
Number - Un numero o NaN (not a number).
Esempio
Gli esempi seguenti utilizzano la funzione parseFloat() per valutare vari tipi di numero:
trace(parseFloat("-2")); // output: -2
trace(parseFloat("2.5")); // output: 2.5
trace(parseFloat(" 2.5")); // output: 2.5
trace(parseFloat("3.5e6")); // output: 3500000
trace(parseFloat("foobar")); // output: NaN
trace(parseFloat("3.75math")); // output: 3.75
trace(parseFloat("0garbage")); // output: 0
Vedere anche
Costante NaN, Funzione parseInt
Funzione parseInt
parseInt(expression:String [, radix:Number]) : Number
Converte una stringa in un numero intero. Se la stringa specificata nei parametri non può essere convertita in numero,
la funzione restituisce NaN. Le stringhe che iniziano con 0x vengono interpretate come numeri esadecimali. I numeri
interi che iniziano con 0 o che specificano una radice di 8 vengono interpretati come numeri ottali. Lo spazio bianco
che precede i numeri interi validi viene ignorato, allo stesso modo dei caratteri non numerici finali.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 42
Elementi del linguaggio ActionScript
Parametri
expression:String - Una stringa da convertire in numero intero.
radix:Number [opzionale] - Un numero intero che rappresenta la radice (base) del numero da analizzare. I valori
accettabili sono quelli compresi tra 2 e 36.
Restituisce
Number - Un numero o NaN (not a number).
Esempio
Gli esempi in questa sezione utilizzano la funzione parseInt() per valutare vari tipi di numeri.
L'esempio seguente restituisce 3:
parseInt("3.5")
L'esempio seguente restituisce NaN:
parseInt("bar")
L'esempio seguente restituisce 4:
parseInt("4foo")
L'esempio seguente mostra una conversione esadecimale che restituisce 1016:
parseInt("0x3F8")
L'esempio seguente mostra una conversione esadecimale che utilizza il parametro opzionale radix e che restituisce 1000:
parseInt("3E8", 16)
L'esempio seguente mostra una conversione binaria e restituisce 10, che è la rappresentazione decimale del valore
binario 1010:
parseInt("1010", 2)
L'esempio seguente mostra l'analisi sintattica di un numero ottale e restituisce 511, che è la rappresentazione decimale
del valore ottale 777:
parseInt("0777")
parseInt("777", 8)
Vedere anche
Costante NaN, Funzione parseFloat
Funzione play
play() : Void
Sposta l'indicatore di riproduzione più avanti nella linea temporale.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 43
Elementi del linguaggio ActionScript
Esempio
Nell'esempio seguente, le due istanze di clip filmato stop_mc e play_mc sono presenti nello stage. Il codice
ActionScript interrompe la riproduzione del file SWF quando si fa clic sull'istanza di clip filmato stop_mc. La
riproduzione viene riavviata quando si fa clic sull'istanza play_mc.
this.stop_mc.onRelease = function() {
stop();
};
this.play_mc.onRelease = function() {
play();
};
trace("frame 1");
Vedere anche
Funzione gotoAndPlay, gotoAndPlay (metodo MovieClip.gotoAndPlay)
Funzione prevFrame
prevFrame() : Void
Invia l'indicatore di riproduzione al fotogramma precedente. Se il fotogramma corrente è il fotogramma 1, l'indicatore
di riproduzione non si sposta.
Disponibilità
Flash Lite 1.0
Esempio
Quando l'utente fa clic sul pulsante myBtn_btn e per tale pulsante viene collocato il codice ActionScript seguente su
un fotogramma nella linea temporale, l'indicatore di riproduzione viene inviato al fotogramma precedente:
stop();
this.myBtn_btn.onRelease = function(){
prevFrame();
};
Vedere anche
Funzione nextFrame, prevFrame (metodo MovieClip.prevFrame)
Funzione prevScene
prevScene() : Void
Invia l'indicatore di riproduzione al fotogramma 1 della scena precedente.
Disponibilità
Flash Lite 1.0
Vedere anche
Funzione nextScene
Funzione random
random(value) : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 44
Elementi del linguaggio ActionScript
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di Math.random().
Restituisce un numero intero casuale compreso tra 0 e un valore inferiore al numero intero specificato nel parametro
value.
Disponibilità
Flash Lite 1.1
Parametri
value:Number - Un numero intero.
Restituisce
Number - Un numero intero casuale.
Esempio
L'utilizzo seguente di random() restituisce il valore 0, 1, 2, 3 o 4: random(5);
Vedere anche
random (metodo Math.random)
Funzione removeMovieClip
removeMovieClip(target:Object)
Elimina il clip filmato specificato.
Disponibilità
Flash Lite 1.0
Parametri
target:Object - Il percorso di destinazione di un'istanza di clip filmato creata con duplicateMovieClip() o il
nome dell'istanza di un clip filmato creata con MovieClip.attachMovie(), MovieClip.duplicateMovieClip() o
MovieClip.createEmptyMovieClip().
Esempio
L'esempio seguente crea un nuovo clip filmato di nome myClip_mc e duplica il clip filmato. Al secondo filmato viene
assegnato il nome newClip_mc. Le immagini vengono caricate in entrambi i clip filmato. Quando viene premuto il
pulsante button_mc, il clip filmato duplicato viene rimosso dallo stage.
this.createEmptyMovieClip("myClip_mc", this.getNextHighestDepth());
myClip_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
duplicateMovieClip(this.myClip_mc, "newClip_mc", this.getNextHighestDepth());
newClip_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
newClip_mc._x = 200;
this.button_mc.onRelease = function() {
removeMovieClip(this._parent.newClip_mc);
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 45
Elementi del linguaggio ActionScript
Vedere anche
Funzione duplicateMovieClip, duplicateMovieClip (metodo MovieClip.duplicateMovieClip),
attachMovie (metodo MovieClip.attachMovie), removeMovieClip (metodo
MovieClip.removeMovieClip)createEmptyMovieClip (metodo MovieClip.createEmptyMovieClip)
Funzione setInterval
setInterval(functionName:Object, interval:Number [, param1:Object, param2, ..., paramN]) :
Number
setInterval(objectName:Object, methodName:String, interval:Number [, param1:Object, param2,
..., paramN]) : Number
Chiama una funzione, un metodo o un oggetto a intervalli regolari durante la riproduzione di un file SWF. È possibile
utilizzare una funzione di intervallo per aggiornare le variabili da un database o la visualizzazione del tempo di
riproduzione.
Se interval è superiore alla frequenza dei fotogrammi del file SWF, la funzione di intervallo viene chiamata soltanto
ogni volta che l'indicatore di riproduzione accede a un fotogramma. In questo modo si riduce al minimo l'impatto dei
singoli aggiornamenti dello schermo.
Nota: in Flash Lite 2.0, l'intervallo passato in questo metodo viene ignorato se è inferiore alla frequenza di fotogrammi
del file SWF e la funzione di intervallo viene chiamata solo sull'intervallo della frequenza di fotogrammi SWF. Se
l'intervallo è superiore alla frequenza di fotogrammi del file, l'evento viene chiamato sul fotogramma successivo dopo
che l'intervallo è terminato.
Disponibilità
Flash Lite 2.0
Parametri
functionName:Object - Un nome di funzione o un riferimento a una funzione anonima.
interval:Number - Il tempo (espresso in millisecondi) che intercorre tra le chiamate ai parametri functionName o
methodName.
param:Object [opzionale] - Parametri passanti ai parametri functionName o methodName. Nel caso di più parametri,
separarli mediante virgole: param1,param2, ...,paramN.
objectName:Object - Un oggetto contenente il metodo methodName.
methodName:String - Un metodo di objectName.
Restituisce
Number - Un numero intero identificativo che può essere trasmesso a clearInteval() per annullare l'intervallo.
Esempio
Uso 1: l'esempio seguente chiama una funzione anonima ogni 1000 millisecondi (1 secondo).
setInterval( function(){ trace("interval called"); }, 1000 );
Uso 2: l'esempio seguente definisce due gestori di eventi e chiama ciascuno di essi. La prima chiamata a
setInterval() chiama la funzione callback() che contiene un'istruzione trace(). La seconda chiamata a
setInterval() passa la stringa "interval called" alla funzione callback2() sotto forma di parametro.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 46
Elementi del linguaggio ActionScript
function callback1() {
trace("interval called");
}
function callback2(arg) {
trace(arg);
}
setInterval( callback1, 1000 );
setInterval( callback2, 1000, "interval called" );
Uso 3: questo esempio utilizza un metodo di un oggetto. Utilizzare questa sintassi per chiamare un metodo che viene
definito per un oggetto.
obj = new Object();
obj.interval = function() {
trace("interval function called");
}
setInterval( obj, "interval", 1000 );
obj2 = new Object();
obj2.interval = function(s) {
trace(s);
}
setInterval( obj2, "interval", 1000, "interval function called" );
Utilizzare la seconda forma della sintassi di setInterval() per chiamare un metodo di un oggetto, come illustrato
nell'esempio seguente:
setInterval( obj2, "interval", 1000, "interval function called" );
Quando si utilizza questa funzione, è opportuno fare attenzione alla memoria usata in un file SWF. Ad esempio,
quando si rimuove un clip filmato da un file SWF, non viene rimossa un'eventuale funzione setInterval() in
esecuzione al suo interno. Rimuovere sempre la funzione setInterval() mediante clearInterval() quando se ne
è concluso l'utilizzo, come mostrato nell'esempio seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 47
Elementi del linguaggio ActionScript
// create an event listener object for our MovieClipLoader instance
var listenerObjectbject = new Object();
listenerObject.onLoadInit = function(target_mc:MovieClip) {
trace("start interval");
/* after the target movie clip loaded, create a callback which executes
about every 1000 ms (1 second) and calls the intervalFunc function. */
target_mc.myInterval = setInterval(intervalFunc, 1000, target_mc);
};
function intervalFunc(target_mc) {
// display a trivial message which displays the instance name and arbitrary text.
trace(target_mc+" has been loaded for "+getTimer()/1000+" seconds.");
/* when the target movie clip is clicked (and released) you clear the interval
and remove the movie clip. If you don't clear the interval before deleting
the movie clip, the function still calls itself every second even though the
movie clip instance is no longer present. */
target_mc.onRelease = function() {
trace("clear interval");
clearInterval(this.myInterval);
// delete the target movie clip
removeMovieClip(this);
};
}
var jpeg_mcl:MovieClipLoader = new MovieClipLoader();
jpeg_mcl.addListener(listenerObject);
jpeg_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg",
this.createEmptyMovieClip("jpeg_mc", this.getNextHighestDepth()));
Se si utilizza setInterval() all'interno delle classi, assicurarsi di utilizzare la parola chiave this quando si chiama la
funzione. La funzione setInterval() non ha accesso ai membri delle classi se non si utilizza la parola chiave. Questo
comportamento viene illustrato nell'esempio seguente. Per un file FLA dotato di un pulsante di nome
deleteUser_btn, aggiungere il seguente codice ActionScript al fotogramma 1:
var me:User = new User("Gary");
this.deleteUser_btn.onRelease = function() {
trace("Goodbye, "+me.username);
clearInterval(me.intervalID);
delete me;
};
Quindi, creare un file di nome User.as nella stessa directory del file FLA. Immettere il codice ActionScript seguente:
class User {
var intervalID:Number;
var username:String;
function User(param_username:String) {
trace("Welcome, "+param_username);
this.username = param_username;
this.intervalID = setInterval(this, "traceUsername", 1000, this.username);
}
function traceUsername(str:String) {
trace(this.username+" is "+getTimer()/1000+" seconds old, happy birthday.");
}
}
Vedere anche
Funzione clearInterval
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 48
Elementi del linguaggio ActionScript
Funzione setProperty
setProperty(target:Object, property:Object, expression:Object) : Void
Modifica un valore di proprietà di un clip filmato durante la riproduzione del clip filmato.
Disponibilità
Flash Lite 1.0
Parametri
target:Object - Il percorso del nome dell'istanza del clip filmato di cui si sta impostando la proprietà.
property:Object - La proprietà da impostare.
expression:Object - Il nuovo valore letterale della proprietà o un'equazione che restituisce il nuovo valore della
proprietà.
Esempio
Il codice ActionScript seguente crea un nuovo clip filmato e vi carica un'immagine. Le coordinate _x e _y per il clip
vengono impostate con setProperty(). Quando si seleziona il pulsante right_btn, la coordinata _x del clip filmato
di nome params_mc viene incrementata di 20 pixel.
this.createEmptyMovieClip("params_mc", 999);
params_mc.loadMovie("http://www.helpexamples.com/flash/images/image1.jpg");
setProperty(this.params_mc, _y, 20);
setProperty(this.params_mc, _x, 20);
this.right_btn.onRelease = function() {
setProperty(params_mc, _x, getProperty(params_mc, _x)+20);
};
Vedere anche
Funzione getProperty
Funzione startDrag
startDrag(target:Object [, lock:Boolean, left:Number, top:Number, right:Number,
bottom:Number]) : Void
Rende trascinabile il clip filmato target durante la riproduzione del filmato. È possibile trascinare solo un clip filmato
alla volta. Dopo l'esecuzione di un'operazione startDrag(), il clip filmato rimane trascinabile finché non viene
esplicitamente arrestato da stopDrag() oppure finché non viene chiamata un'azione startDrag() per un altro clip
filmato.
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Il percorso di destinazione del clip filmato da trascinare.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 49
Elementi del linguaggio ActionScript
lock:Boolean [opzionale] - Valore booleano che specifica che il clip filmato trascinabile è bloccato al centro della
posizione del mouse (true) oppure bloccato nel punto in cui l'utente aveva fatto clic sul clip filmato la prima volta
(false).
left,top,right,bottom:Number [opzionale] - Valori relativi alle coordinate del clip filmato principale, che
indicano un rettangolo di delimitazione per il clip filmato.
Esempio
L'esempio seguente crea in fase di runtime il clip filmato pic_mc, che può essere trascinato da un utente in qualsiasi
posizione associando le azioni startDrag() e stopDrag() al clip filmato. Un'immagine viene caricata in pic_mc
mediante la classe MovieClipLoader.
var pic_mcl:MovieClipLoader = new MovieClipLoader();
pic_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg",
this.createEmptyMovieClip("pic_mc", this.getNextHighestDepth()));
var listenerObject:Object = new Object();
listenerObject.onLoadInit = function(target_mc) {
target_mc.onPress = function() {
startDrag(this);
};
target_mc.onRelease = function() {
stopDrag();
};
};
pic_mcl.addListener(listenerObject);
Vedere anche
Funzione stopDrag, _droptarget (MovieClip._droptarget, proprietà), startDrag (metodo
MovieClip.startDrag)
Funzione stop
stop() : Void
Arresta il file SWF in esecuzione. Questa azione viene comunemente utilizzata per controllare i clip filmato mediante
i pulsanti.
Disponibilità
Flash Lite 1.0
Vedere anche
Funzione gotoAndStop, gotoAndStop (metodo MovieClip.gotoAndStop)
Funzione stopAllSounds
stopAllSounds() : Void
Interrompe tutti i suoni attualmente riprodotti in un file SWF senza arrestare l'indicatore di riproduzione. La
riproduzione dei suoni impostati per la ripetizione riprende quando l'indicatore di riproduzione arriva nei
fotogrammi in cui si trovano tali suoni.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 50
Elementi del linguaggio ActionScript
Esempio
Il codice seguente crea un campo di testo che visualizza le informazioni ID3 del brano. Viene creata una nuova istanza
di oggetto Sound e il file MP3 viene caricato nel file SWF. Le informazioni ID3 vengono estratte dal file audio. Quando
l'utente seleziona stop_mc la riproduzione dell'audio viene messa in pausa. Quando l'utente seleziona play_mc la
riproduzione del brano riprende dal punto in cui era stata messa in pausa.
this.createTextField("songinfo_txt", this.getNextHighestDepth, 0, 0, Stage.width, 22);
var bg_sound:Sound = new Sound();
bg_sound.loadSound("yourSong.mp3", true);
bg_sound.onID3 = function() {
songinfo_txt.text = "(" + this.id3.artist + ") " + this.id3.album + " - " + this.id3.track
+ " - "
+ this.id3.songname;
for (prop in this.id3) {
trace(prop+" = "+this.id3[prop]);
}
trace("ID3 loaded.");
};
this.play_mc.onRelease = function() {
/* get the current offset. if you stop all sounds and click the play button, the MP3
continues from
where it was stopped, instead of restarting from the beginning. */
var numSecondsOffset:Number = (bg_sound.position/1000);
bg_sound.start(numSecondsOffset);
};
this.stop_mc.onRelease = function() {
stopAllSounds();
};
Vedere anche
Sound
Funzione stopDrag
stopDrag() : Void
Interrompe l'operazione di trascinamento corrente.
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Il codice seguente, collocato nella linea temporale principale, interrompe l'azione di trascinamento eseguita sull'istanza
di clip filmato my_mc quando l'utente rilascia il pulsante del mouse:
my_mc.onPress = function () {
startDrag(this);
}
my_mc.onRelease = function() {
stopDrag();
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 51
Elementi del linguaggio ActionScript
Vedere anche
Funzione startDrag, _droptarget (MovieClip._droptarget, proprietà), startDrag (metodo
MovieClip.startDrag)stopDrag (metodo MovieClip.stopDrag)
Funzione String
String(expression:Object) : String
Restituisce una rappresentazione sotto forma di stringa del parametro specificato, come descritto nell'elenco seguente:
• Se expression è un numero, la stringa restituita è la rappresentazione sotto forma di testo del numero.
• Se expression è una stringa, viene restituita la stringa expression.
• Se expression è un oggetto, il valore restituito è una rappresentazione sotto forma di stringa dell'oggetto generato
chiamando la proprietà stringa dell'oggetto o chiamando Object.toString() se questa proprietà non esiste.
• Se expression è un valore booleano, la stringa restituita è "true" o "false".
• Se expression è un clip filmato, viene restituito il percorso target del clip filmato mediante notazione a barra (/).
Se expression è undefined, vengono restituiti i seguenti valori:
• Nei file pubblicati per Flash Player 6 o versione precedente, il valore è una stringa vuota ("").
• Nei file pubblicati per Flash Player 7 o versione successiva, il risultato è undefined.
Nota: la notazione a barra non è supportata in ActionScript 2.0.
Disponibilità
Flash Lite 1.0
Parametri
expression:Object - Un'espressione che consente di convertire in stringa.
Restituisce
String - Una stringa.
Esempio
Nell'esempio seguente, il codice ActionScript viene utilizzato per convertire in stringa le espressioni specificate:
var string1:String = String("3");
var string2:String = String("9");
trace(string1+string2); // output: 39
Dal momento che entrambi i parametri sono costituiti da stringhe, i valori non vengono aggiunti bensì concatenati.
Vedere anche
toString (metodo Number.toString), toString (metodo Object.toString), String, Operatore "
(delimitatore di stringa)
Funzione substring
substring("string", index, count) : String
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di String.substr().
Estrae parte di una stringa. Questa funzione è a base uno, mentre i metodi dell'oggetto String sono a base zero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 52
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.0
Parametri
string:String - La stringa da cui estrarre la nuova stringa.
index:Number - Il numero del primo carattere da estrarre.
count:Number - Il numero di caratteri da includere nella stringa estratta, escluso il carattere index.
Restituisce
String - La sottostringa estratta.
Vedere anche
substr (metodo String.substr)
Funzione targetPath
targetpath(targetObject:Object) : String
Restituisce una stringa che contiene il percorso di destinazione di un oggetto MovieClip, Button o TextField. Il
percorso target viene restituito mediante notazione del punto (.); per recuperare il percorso target sotto forma di
notazione a barra (/), utilizzare la proprietà _target.
Disponibilità
Flash Lite 2.0
Parametri
targetObject:Object - Un riferimento (ad esempio _root o _parent) all'oggetto del quale si sta recuperando il
percorso target. Può essere un oggetto MovieClip, Button o TextField.
Restituisce
String - Una stringa contenente il percorso target del clip filmato specificato.
Esempio
Nell'esempio seguente viene tracciato il percorso di destinazione di un clip filmato non appena viene caricato:
this.createEmptyMovieClip("myClip_mc", this.getNextHighestDepth());
trace(targetPath(myClip_mc)); // _level0.myClip_mc
Vedere anche
Funzione eval
Funzione tellTarget
tellTarget("target") { statement(s); }
Sconsigliata a partire da Flash Player 5. Adobe consiglia di utilizzare la notazione del punto (.) e l'istruzione with.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 53
Elementi del linguaggio ActionScript
Applica le istruzioni specificate nel parametro statements alla linea temporale specificata nel parametro target. L'azione
tellTarget è utile per i controlli di navigazione. Assegnare tellTarget ai pulsanti che arrestano o avviano i clip
filmato in qualche altro punto dello stage. Inoltre, è possibile fare in modo che i clip filmato si spostino in un
fotogramma particolare della clip. Ad esempio è possibile assegnare tellTarget a pulsanti che arrestano o avviano
clip filmato sullo stage o che richiedano ai clip filmato di passare a un fotogramma particolare.
In Flash 5 o versioni successive, è possibile utilizzare la notazione (.) anziché l'azione tellTarget. È possibile utilizzare
l'azione with per eseguire più azioni sulla stessa linea temporale. È possibile utilizzare l'azione with in modo che venga
applicata a qualunque oggetto, mentre l'azione tellTarget può essere applicata solo ai clip filmato.
Disponibilità
Flash Lite 1.0
Parametri
target:String - Una stringa che specifica il percorso di destinazione della linea temporale da controllare.
statement(s):Object - Le istruzioni da eseguire se la condizione restituisce true.
Esempio
Questa istruzione tellTarget controlla l'istanza di clip filmato denominata ball sulla linea temporale principale. Il
fotogramma 1 dell'istanza di ball è vuoto e su di esso è presente un'azione stop() in modo che non sia visibile sullo stage.
Quando si fa clic sul pulsante con l'azione seguente, tellTarget indica all'indicatore di riproduzione presente in ball di
passare al fotogramma 2, che è il punto in cui inizia l'animazione:
on(release) {
tellTarget("_parent.ball") {
gotoAndPlay(2);
}
}
L'esempio seguente utilizza la notazione del punto (.) per ottenere lo stesso risultato:
on(release) {
_parent.ball.gotoAndPlay(2);
}
Se è necessario eseguire più comandi per l'istanza di ball, è possibile utilizzare l'azione with, come mostrato
nell'istruzione seguente:
on(release) {
with(_parent.ball) {
gotoAndPlay(2);
_alpha = 15;
_xscale = 50;
_yscale = 50;
}
}
Vedere anche
Istruzione with
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 54
Elementi del linguaggio ActionScript
Funzione toggleHighQuality
toggleHighQuality()
Sconsigliata a partire da Flash Player 5. Questa funzione è stata sconsigliata a favore di _quality.
Attiva e disattiva l'antialiasing in Flash Player. L'antialiasing smussa i bordi degli oggetti e rallenta la riproduzione dei
file SWF. L'azione agisce su tutti i file SWF in Flash Player.
Disponibilità
Flash Lite 1.0
Esempio
Ad esempio, il codice seguente può essere applicato a un pulsante che, una volta premuto, attiva e disattiva
l'antialiasing:
on(release) {
toggleHighQuality();
}
Vedere anche
Proprietà _highquality, Proprietà _quality
Funzione trace
trace(expression:Object)
È possibile utilizzare Flash Debug Player per acquisire l'output della funzione trace() e scriverlo nel file di registro.
Istruzione; valuta l'espressione e visualizza il risultato nel pannello Output nella modalità di prova.
Utilizzare questa istruzione per registrare le note di programmazione o visualizzare i messaggi nel pannello Output
durante la prova di un file SWF. Utilizzare il parametro expression per verificare l'esistenza di una condizione o per
visualizzare i valori nel pannello Output. L'istruzione trace() è simile alla funzione alert di JavaScript.
Il comando Ometti azioni Trace nella finestra di dialogo Impostazioni pubblicazione consente di rimuovere le azioni
trace() dal file SWF esportato.
Disponibilità
Flash Lite 1.0
Parametri
expression:Object - Un'espressione da valutare. Quando un file SWF viene aperto nello strumento di creazione
Flash (mediante il comando Prova filmato), il valore del parametro expression viene visualizzato nel pannello Output.
Esempio
L'esempio seguente utilizza un'istruzione trace() per visualizzare nel pannello Output i metodi e le proprietà del
campo di testo error_txt che è stato creato dinamicamente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 55
Elementi del linguaggio ActionScript
this.createTextField("error_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
for (var i in error_txt) {
trace("error_txt."+i+" = "+error_txt[i]);
}
/* output:
error_txt.styleSheet = undefined
error_txt.mouseWheelEnabled = true
error_txt.condenseWhite = false
...
error_txt.maxscroll = 1
error_txt.scroll = 1
*/
Funzione unescape
unescape(x:String) : String
Valuta il parametro x come stringa, decodifica la stringa dal formato URL (convertendo tutte le sequenze esadecimali
in caratteri ASCII) e restituisce la stringa.
Disponibilità
Flash Lite 1.1
Parametri
string:String - Una stringa con sequenze esadecimali da decodificare mediante escape.
Restituisce
String - Una stringa decodificata di un parametro in formato URL.
Esempio
L'esempio seguente mostra il processo di conversione da escape a unescape:
var email:String = "[email protected]";
trace(email);
var escapedEmail:String = escape(email);
trace(escapedEmail);
var unescapedEmail:String = unescape(escapedEmail);
trace(unescapedEmail);
Il risultato seguente viene visualizzato nel pannello Output.
[email protected]
user%40somedomain%2Ecom
[email protected]
Funzione unloadMovie
unloadMovie(target:MovieClip) : Void
unloadMovie(target:String) : Void
Rimuove un clip filmato caricato mediante loadMovie() da Flash Player. Per scaricare un clip filmato caricato tramite
loadMovieNum(), usare unloadMovieNum() anziché unloadMovie().
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 56
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.1
Parametri
target - Il percorso target di un clip filmato. Questo parametro può essere una stringa (ad esempio, "my_mc") oppure
un riferimento diretto all'istanza del clip filmato (ad esempio, my_mc). I parametri che possono accettare più tipi di
dati vengono indicati con il tipo Object.
Esempio
L'esempio seguente crea un nuovo clip filmato di nome pic_mc e carica un'immagine nel clip. Viene caricato mediante
la classe MovieClipLoader. Quando si fa clic sull'immagine, il clip filmato viene scaricato dal file SWF:
var pic_mcl:MovieClipLoader = new MovieClipLoader();
pic_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg",
this.createEmptyMovieClip("pic_mc", this.getNextHighestDepth()));
var listenerObject:Object = new Object();
listenerObject.onLoadInit = function(target_mc) {
target_mc.onRelease = function() {
unloadMovie(pic_mc);
/* or you could use the following, which refers to the movie clip referenced by 'target_mc'.
*/
//unloadMovie(this);
};
};
pic_mcl.addListener(listenerObject);
Vedere anche
loadMovie (metodo MovieClip.loadMovie), unloadClip (metodo MovieClipLoader.unloadClip)
Funzione unloadMovieNum
unloadMovieNum(level:Number) : Void
Rimuove un file SWF o un'immagine caricati da Flash Player mediante loadMovieNum(). Per scaricare un file SWF o
un'immagine caricata tramite MovieClip.loadMovieNum(), usare unloadMovie() anziché unloadMovieNum().
Disponibilità
Flash Lite 1.1
Parametri
level:Number - Il livello (_level N ) di un filmato caricato.
Esempio
L'esempio seguente carica un'immagine in un file SWF. Quando si seleziona unload_btn, il contenuto caricato viene
rimosso.
loadMovieNum("yourimage.jpg", 1);
unload_btn.onRelease = function() {
unloadMovieNum(1);
}
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 57
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Vedere anche
Funzione loadMovieNum, Funzione unloadMovie, loadMovie (metodo MovieClip.loadMovie)
Proprietà globali
Le proprietà globali sono disponibili in tutti gli script e visibili a tutte le linee temporali e aree di validità del
documento. Ad esempio, le proprietà globali consentono l'accesso alle linee temporali di altri clip filmato caricati, sia
relative (_parent) che assolute (_root). Inoltre, consentono di limitare (this) o espandere (super) l'area di validità.
È possibile utilizzare le proprietà globali per modificare le impostazioni di runtime quali l'accessibilità da parte degli
screen reader, la qualità di riproduzione e le dimensioni del buffer audio.
Riepilogo delle proprietà globali
Modificatori
Proprietà
Descrizione
$version
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.version.
Contiene il numero di versione di Flash Lite.
_cap4WayKeyAS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.has4WayKeyAS.
Indica se Flash Lite esegue le espressioni ActionScript associate
ai gestori di eventi di tastiera associati ai tasti freccia Su, Giù, Pag
su e Pag giù.
_capCompoundSound
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasCompoundSound.
Indica se Flash Lite può elaborare i dati audio composti.
_capEmail
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasEmail.
Indica se il client Flash Lite può inviare messaggi e-mail
mediante il comando GetURL() di ActionScript.
_capLoadData
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasDataLoading.
Indica se l'applicazione host può caricare dinamicamente dati
aggiuntivi mediante delle chiamate alle funzioni
loadMovie(), loadMovieNum(), loadVariables() e
loadVariablesNum().
_capMFi
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasMFi.
Indica se il dispositivo è in grado di riprodurre i dati audio nel
formato audio MFi (Melody Format per imode).
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 58
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Proprietà
Descrizione
_capMIDI
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasMIDI.
Indica se il dispositivo è in grado di riprodurre i dati audio nel
formato audio MIDI (Musical Instrument Digital Interface).
_capMMS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasMMS.
Indica se Flash Lite è in grado di inviare messaggi MMS
(Multimedia Messaging Service) mediante il comando
GetURL() di ActionScript. In tal caso, questa variabile è definita
e ha il valore 1; in caso contrario, è undefined.
_capSMAF
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasSMAF.
Indica se il dispositivo è in grado di riprodurre i file multimediali
in formato SMAF (Synthetic Music Mobile Application Format).
In tal caso, questa variabile è definita e ha il valore 1; in caso
contrario, è undefined.
_capSMS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasSMS.
Indica se Flash Lite è in grado di inviare messaggi SMS (Short
Message Service) mediante il comando GetURL() di
ActionScript.
_capStreamSound
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è
stata sconsigliata a favore della proprietà
System.capabilities.hasStreamingAudio.
Indica se il dispositivo può riprodurre audio in streaming
(sincronizzato).
_focusrect
Proprietà (globale); specifica se un rettangolo giallo viene
visualizzato attorno al pulsante o al clip filmato che viene
attivato mediante tastiera.
_forceframerate
Indica al lettore di Flash Lite di eseguire il rendering alla
frequenza di fotogrammi specificata.
_global
Un riferimento all'oggetto globale che contiene le classi
ActionScript principali, quali String, Object, Math e Array.
_highquality
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata
sconsigliata a favore di _quality.
Specifica il livello di antialiasing applicato al file SWF corrente.
_level
Un riferimento alla linea temporale principale di _levelN.
maxscroll
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata
sconsigliata a favore di TextField.maxscroll.
Indica il numero della prima riga in alto del testo visibile
all'interno di un campo di testo in cui è visibile anche l'ultima
riga in basso.
_parent
Specifica o restituisce un riferimento al clip filmato o all'oggetto
che contiene il clip filmato o l'oggetto corrente.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 59
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Modificatori
Proprietà
Descrizione
_quality
Imposta o recupera la qualità di rendering utilizzata per un clip
filmato.
_root
Specifica o restituisce un riferimento alla linea temporale
principale del clip filmato.
scroll
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata
sconsigliata a favore di TextField.scroll.
Controlla la visualizzazione delle informazioni in un campo di
testo associato a una variabile.
_soundbuftime
Stabilisce il numero di secondi dell'audio in streaming da
inserire nel buffer.
this
Fa riferimento a un oggetto o all'istanza di un clip filmato.
Proprietà $version
$version
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.version.
Variabile stringa; contiene il numero di versione di Flash Lite. Sono indicati un numero di versione principale, un
numero di versione minore, il numero della build e un numero di build interno, che generalmente è 0 in tutte le
versioni rilasciate al pubblico. Il numero di versione principale riportato per tutti i prodotti Flash Lite 1.x è 5. Flash
Lite 1.0 ha il numero di versione minore 1; Flash Lite 1.1 ha il numero di versione minore 2.
Disponibilità
Flash Lite 1.1
Esempio
In Flash Lite Player 1.1, il codice seguente imposta il valore di myVersion su "5, 2, 12, 0":
myVersion = $version;
Vedere anche
version (proprietà capabilities.version)
Proprietà _cap4WayKeyAS
_cap4WayKeyAS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.has4WayKeyAS.
Variabile numerica; indica se Flash Lite esegue le espressioni ActionScript associate ai gestori di eventi di tastiera
associati ai tasti freccia Su, Giù, Pag su e Pag giù. Questa variabile è definita e ha un valore 1 solo quando l'applicazione
host utilizza la modalità di navigazione a quattro direzioni per spostarsi tra i controlli di Flash (pulsanti e campi di testo
di input). In caso contrario, questa variabile è undefined.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 60
Elementi del linguaggio ActionScript
Quando uno dei tasti a quattro direzioni viene premuto, se il valore della variabile _cap4WayKeyAS è 1, Flash Lite cerca
innanzi tutto il gestore per il tasto. Se non ne viene trovato nessuno, viene utilizzata la navigazione mediante i controlli
di Flash. Tuttavia, se viene trovato un gestore di eventi, per il tasto non viene eseguita alcuna azione di navigazione.
Ad esempio, se viene trovato un gestore relativo alla pressione del tasto freccia Giù, l'utente non può navigare.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta canUse4Way su 1 in Flash Lite 1.1, ma non lo definisce in Flash Lite 1.0 (tuttavia, non tutti
i telefoni dotati di Flash Lite 1.1 supportano i tasti a quattro direzioni, pertanto questo codice dipende sempre
dall'apparecchio):
canUse4Way = _cap4WayKeyAS;
if (canUse4Way == 1) {
msg = "Use your directional joypad to navigate this application";
} else {
msg = "Please use the 2 key to scroll up, the 6 key to scroll right,
the 8 key to scroll down, and the 4 key to scroll left.";
}
Vedere anche
capabilities (System.capabilities)
Proprietà _capCompoundSound
_capCompoundSound
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasCompoundSound.
Variabile numerica: indica se Flash Lite può elaborare i dati audio composti. In tal caso, questa variabile è definita e ha
il valore 1; in caso contrario, è undefined. Ad esempio, un file Flash singolo può contenere lo stesso suono
rappresentato in formato sia MIDI che MFi. Il lettore riproduce i dati nel formato appropriato in base al formato
supportato dal dispositivo. Questa variabile definisce se Flash Lite Player supporta questa funzione per il microtelefono
corrente.
Disponibilità
Flash Lite 1.1
Esempio
Nell'esempio seguente, useCompoundSound viene impostato su 1 in Flash Lite 1.1, ma non viene definito in Flash Lite 1.0:
useCompoundSound = _capCompoundSound;
if (useCompoundSound == 1) {
gotoAndPlay("withSound");
} else {
gotoAndPlay("withoutSound");
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 61
Elementi del linguaggio ActionScript
Vedere anche
capabilities (System.capabilities)
Proprietà _capEmail
_capEmail
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasEmail.
Variabile numerica; indica se il client Flash Lite può inviare messaggi e-mail mediante il comando GetURL() di
ActionScript. In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
Se l'applicazione host è in grado di inviare messaggi e-mail mediante il comando GetURL() di ActionScript, l'esempio
seguente imposta canEmail su 1:
canEmail = _capEmail;
if (canEmail == 1) {
getURL("mailto:[email protected]?subject=foo&body=bar");
}
Vedere anche
capabilities (System.capabilities)
Proprietà _capLoadData
_capLoadData
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasDataLoading.
Variabile numerica; indica se l'applicazione host può caricare dinamicamente dati aggiuntivi mediante delle chiamate
alle funzioni loadMovie(), loadMovieNum(), loadVariables() e loadVariablesNum(). In tal caso, questa
variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
Se l'applicazione host è in grado di effettuare il caricamento dinamico di filmati e variabili, l'esempio seguente imposta
CanLoad su 1:
canLoad = _capLoadData;
if (canLoad == 1) {
loadVariables("http://www.somewhere.com/myVars.php", GET);
} else {
trace ("client does not support loading dynamic data");
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 62
Elementi del linguaggio ActionScript
Vedere anche
capabilities (System.capabilities)
Proprietà _capMFi
_capMFi
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasMFi.
Variabile numerica; indica se il dispositivo è in grado di riprodurre i dati audio nel formato audio MFi (Melody Format
per imode). In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
Se il dispositivo è in grado di riprodurre i dati audio MFi, l'esempio seguente imposta canMFi su 1:
canMFi = _capMFi;
if (canMFi == 1) {
// send movieclip buttons to frame with buttons that trigger events
sounds
tellTarget("buttons") {
gotoAndPlay(2);
}
}
Vedere anche
hasMFI (proprietà capabilities.hasMFI)
Proprietà _capMIDI
_capMIDI
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasMIDI.
Variabile numerica; indica se il dispositivo è in grado di riprodurre i dati audio nel formato audio MIDI (Musical
Instrument Digital Interface). In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
Se il dispositivo è in grado di riprodurre i dati audio MIDI, l'esempio seguente imposta _capMIDI su 1:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 63
Elementi del linguaggio ActionScript
canMIDI = _capMIDI;
if (canMIDI == 1) {
// send movieclip buttons to frame with buttons that trigger events
sounds
tellTarget("buttons") {
gotoAndPlay(2);
}
}
Vedere anche
capabilities (System.capabilities)
Proprietà _capMMS
_capMMS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasMMS.
Variabile numerica; indica se Flash Lite è in grado di inviare messaggi MMS (Multimedia Messaging Service) mediante
il comando GetURL() di ActionScript. In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è
undefined.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta canMMS su 1 in Flash Lite 1.1, ma non lo definisce in Flash Lite 1.0 (tuttavia, non tutti i
telefoni dotati di Flash Lite 1.1 supportano l'invio di messaggi MMS, pertanto questo codice dipende sempre
dall'apparecchio):
on(release) {
canMMS = _capMMS;
if (canMMS == 1) {
// send an MMS
myMessage = "mms:4156095555?body=sample mms message";
} else {
// send an SMS
myMessage = "sms:4156095555?body=sample sms message";
}
getURL(myMessage);
}
Vedere anche
capabilities (System.capabilities)
Proprietà _capSMAF
_capSMAF
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasSMAF.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 64
Elementi del linguaggio ActionScript
Variabile numerica; indica se il dispositivo è in grado di riprodurre i file multimediali in formato SMAF (Synthetic
Music Mobile Application Format). In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è
undefined.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta canSMAF su 1 in Flash Lite 1.1, ma non lo definisce in Flash Lite 1.0 (tuttavia, non tutti i
telefoni dotati di Flash Lite 1.1 supportano l'invio di messaggi SMAF, pertanto questo codice dipende sempre
dall'apparecchio):
canSMAF = _capSMAF;
if (canSMAF) {
// send movieclip buttons to frame with buttons that trigger events
sounds
tellTarget("buttons") {
gotoAndPlay(2);
}
}
Vedere anche
capabilities (System.capabilities)
Proprietà _capSMS
_capSMS
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasSMS.
Indica se Flash Lite è in grado di inviare messaggi SMS (Short Message Service) mediante il comando GetURL() di
ActionScript. In tal caso, questa variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta canSMS su 1 in Flash Lite 1.1, ma non lo definisce in Flash Lite 1.0 (tuttavia, non tutti i
telefoni dotati di Flash Lite 1.1 supportano l'invio di messaggi SMS, pertanto questo codice dipende sempre
dall'apparecchio):
on(release) {
canSMS = _capSMS;
if (canSMS) {
// send an SMS
myMessage = "sms:4156095555?body=sample sms message";
getURL(myMessage);
}
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 65
Elementi del linguaggio ActionScript
Vedere anche
capabilities (System.capabilities)
Proprietà _capStreamSound
_capStreamSound
Sconsigliata a partire da Flash Lite Player 2.0. Questa azione è stata sconsigliata a favore della proprietà
System.capabilities.hasStreamingAudio.
Variabile numerica; indica se il dispositivo può riprodurre audio in streaming (sincronizzato). In tal caso, questa
variabile è definita e ha il valore 1; in caso contrario, è undefined.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente riproduce l'audio in streaming se canStreamSound è abilitato:
on(press) {
canStreamSound = _capStreamSound;
if (canStreamSound) {
// play a streaming sound in a movieclip with this button
tellTarget("music") {
gotoAndPlay(2);
}
}
}
Vedere anche
capabilities (System.capabilities)
Proprietà _focusrect
_focusrect = Boolean;
Specifica se attorno al pulsante o al clip filmato che viene attivato mediante tastiera viene visualizzato un rettangolo
giallo. Se _focusrect è impostata sul valore predefinito true, un rettangolo giallo viene visualizzato attorno al
pulsante o clip filmato corrente nel momento in cui l'utente preme il tasto di tabulazione per passare da un oggetto
all'altro in un file SWF. Specificare false per fare in modo che il rettangolo giallo non venga visualizzato. Questa
proprietà può essere sostituita per istanze specifiche.
Se la proprietà _focusrect globale è impostata su false, il comportamento predefinito per tutti i pulsanti e i clip
filmato prevede che la navigazione mediante tastiera sia limitata al tasto Tab. Tutti gli altri tasti vengono ignorati,
compresi Invio e i tasti freccia. Per ripristinare la navigazione mediante tutta la tastiera, è necessario impostare
_focusrect su true. Per ripristinare la completa funzionalità da tastiera per un pulsante o un clip filmato specifico,
è possibile sostituire questa proprietà globale mediante Button._focusrect o MovieClip._focusrect.
Nota: se si utilizza un componente, FocusManager ha la priorità sulla gestione dell'attivazione di Flash Player,
compresa questa proprietà globale.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 66
Elementi del linguaggio ActionScript
Nota: nel lettore di Flash Lite 2.0, quando la proprietà _focusrect è disabilitata (ad esempio, Button.focusRect =
false o MovieClip.focusRect = false), il pulsante o il clip filmato ricevono comunque tutti gli eventi. Questo
comportamento è diverso rispetto al lettore di Flash, dove, se la proprietà _focusrect è disabilitata, il pulsante o il clip
filmato ricevono gli eventi rollOver e rollOut ma non gli eventi press e release.
Inoltre, in Flash Lite 2.0, è possibile modificare il colore del rettangolo di attivazione mediante il comando
SetFocusRectColor. Al contrario, in Flash Player, il rettangolo di attivazione può essere solo di colore giallo.
Disponibilità
Flash Lite 1.0
Esempio
L'esempio seguente mostra come nascondere il rettangolo giallo attorno a tutte le istanze di un file SWF quando queste
sono state attivate mediante tastiera in una finestra del browser. Creare alcuni pulsanti o clip filmato e aggiungere il
codice ActionScript seguente nel fotogramma 1 della linea temporale:
_focusrect = false;
Vedere anche
_focusrect (proprietà Button._focusrect), _focusrect (proprietà MovieClip._focusrect)
Proprietà _forceframerate
_forceframerate
Se impostata su true questa proprietà indica al lettore di Flash Lite di eseguire il rendering alla frequenza di
fotogrammi specificata. Se nel contenuto è presente audio per dispositivi, questa proprietà può essere utilizzata per
audio pseudo-sincronizzato. L'impostazione predefinita è false che indica a Flash Lite di eseguire il rendering
normalmente. Se impostata su true, il lettore Flash Lite potrebbe non eseguire il rendering di alcuni fotogrammi al
fine di mantenere la frequenza di fotogrammi.
Disponibilità
Flash Lite 2.0
Proprietà _global
_global.identifier
Un riferimento all'oggetto globale che contiene le classi ActionScript principali, quali String, Object, Math e Array. Ad
esempio, è possibile creare una libreria che sia visibile come un oggetto ActionScript globale, simile agli oggetti Math
e Date. A differenza delle variabili e funzioni dichiarate localmente o nella linea temporale, le variabili e funzioni
globali sono visibili in tutte le linee temporali e aree di validità del file SWF, a condizione che non siano oscurate da
identificatori con nomi uguali nelle aree di validità interne.
Nota: durante l'impostazione del valore di una variabile globale, è necessario utilizzare il nome completo della
variabile, ad esempio _global.variableName. In caso contrario verrebbe creata una variabile locale con lo stesso nome
che oscurerebbe quella globale che si sta cercando di impostare.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 67
Elementi del linguaggio ActionScript
Restituisce
Un riferimento all'oggetto globale che contiene le classi ActionScript principali, quali String, Object, Math e Array.
Esempio
L'esempio seguente crea la funzione di primo livello factorial() disponibile per ogni linea temporale e area di
validità in un file SWF:
_global.factorial = function(n:Number) {
if (n&lt;=1) {
return 1;
} else {
return n*factorial(n-1);
}
}
// Note: factorial 4 == 4*3*2*1 == 24
trace(factorial(4)); // output: 24
L'esempio seguente mostra il modo in cui il mancato utilizzo del nome completo di una variabile quando si imposta il
valore di quest'ultima porta a risultati imprevisti:
_global.myVar = "global";
trace("_global.myVar: " + _global.myVar); // _global.myVar: global
trace("myVar: " + myVar); // myVar: global
myVar = "local";
trace("_global.myVar: " + _global.myVar); // _global.myVar: global
trace("myVar: " + myVar); // myVar: local
Vedere anche
Istruzione set variable
Proprietà _highquality
_highquality
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata sconsigliata a favore di _quality.
Specifica il livello di antialiasing applicato al file SWF corrente. Specificare 2 (migliore qualità) per applicare la qualità
migliore. Specificare 1 (alta qualità) per applicare l'antialiasing. Specificare 0 (bassa qualità) per impedire l'antialiasing.
Disponibilità
Flash Lite 1.0
Esempio
Il codice ActionScript seguente viene collocato nella linea temporale principale e imposta la proprietà quality globale
in modo che venga applicato l'antialiasing. _highquality = 1;
Vedere anche
Proprietà _quality
Proprietà _level
_levelN
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 68
Elementi del linguaggio ActionScript
Un riferimento alla linea temporale principale di _levelN. Utilizzare loadMovieNum() per caricare i file SWF in Flash
Player prima di indicarli come destinazione mediante la proprietà _level. È anche possibile servirsi di _levelN per
indicare come destinazione un file SWF al livello assegnato da N.
Il file SWF inizialmente caricato in un'istanza di Flash Player viene automaticamente caricato in _level0. Il file SWF
in _level0 imposta la frequenza dei fotogrammi, il colore di sfondo e le dimensioni dei fotogrammi per tutti i file SWF
che vengono caricati successivamente. I file vengono quindi ordinati nei livelli con numeri più alti, sopra il file SWF
in _level0.
È necessario assegnare un livello a ciascun file SWF che viene caricato in Flash Player mediante loadMovieNum(). I
livelli possono essere assegnati in qualsiasi ordine. Se si assegna un livello che contiene già un file SWF (compreso
_level0), il file che si trova in quel livello viene scaricato e sostituito dal nuovo file SWF.
Disponibilità
Flash Lite 1.0
Esempio
L'esempio seguente arresta l'indicatore di riproduzione nella linea temporale principale del file SWF sub.swf che viene
caricato in _level9. Il file sub.swf contiene l'animazione e si trova nella stessa directory del documento che contiene
il seguente codice ActionScript:
loadMovieNum("sub.swf", 9);
myBtn_btn.onRelease = function() {
_level9.stop();
};
È possibile sostituire _level9.stop dell'esempio precedente con il codice seguente:
_level9.gotoAndStop(5);
Questa azione, anziché arrestare l'indicatore di riproduzione della linea temporale principale del file SWF in
_level9(), lo invia al fotogramma 5.
Vedere anche
Funzione loadMovie, swapDepths (metodo MovieClip.swapDepths)
Proprietà maxscroll
variable_name.maxscroll
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata sconsigliata a favore di TextField.maxscroll.
Indica il numero della prima riga in alto del testo visibile all'interno di un campo di testo in cui è visibile anche l'ultima
riga in basso. La proprietà maxscroll agisce in combinazione con la proprietà scroll per controllare il modo in cui
vengono visualizzate le informazioni in un campo di testo. La proprietà può essere recuperata, ma non modificata.
Disponibilità
Flash Lite 1.1
Vedere anche
maxscroll (proprietà TextField.maxscroll), scroll (proprietà TextField.scroll)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 69
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Proprietà _parent
_parent.property
_parent._parent.property
Specifica o restituisce un riferimento al clip filmato o all'oggetto che contiene il clip filmato o l'oggetto corrente.
L'oggetto corrente è l'oggetto che contiene il codice ActionScript che fa riferimento a _parent. Utilizzare _parent per
specificare un percorso relativo dei clip filmati oppure oggetti che si trovano sopra il clip filmato oppure l'oggetto
corrente.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, sullo stage è presente un clip filmato con il nome di istanza square_mc. All'interno del clip
filmato si trova un altro clip filmato con il nome di istanza circle_mc. Il codice ActionScript seguente consente di
modificare l'istanza circle_mc principale (square_mc) quando si fa clic sul cerchio. Quando si utilizza il sistema di
indirizzi relativi (ovvero, quando si utilizza _parent anziché _root), può risultare più semplice usare come prima cosa
il pulsante Inserisci percorso target nel pannello Azioni.
this.square_mc.circle_mc.onRelease = function() {
this._parent._alpha -= 5;
};
Vedere anche
Proprietà _root, Funzione targetPath
Proprietà _quality
_quality:String
Imposta o recupera la qualità di rendering utilizzata per un clip filmato. I caratteri del dispositivo sono sottoposti ad
aliasing e pertanto non vengono modificati dalla proprietà _quality.
La proprietà _quality può essere impostata sui valori seguenti:
Valore
Descrizione
Antialiasing personalizzato
Smussatura delle bitmap
"LOW"
Qualità di rendering bassa.
Alle funzioni non viene applicata
la funzione di antialiasing.
le bitmap non vengono
smussate.
"MEDIUM"
Qualità di rendering media. Si
Le immagini vengono sottoposte le bitmap non vengono
tratta di un'impostazione adatta ad antialiasing utilizzando una
smussate.
per i filmati che non contengono griglia di 2 x 2 pixel.
testo.
"HIGH"
Qualità di rendering alta. È
l'impostazione predefinita
utilizzata da Flash per la qualità
di rendering.
Le immagini vengono sottoposte le bitmap non vengono
ad antialiasing utilizzando una
smussate.
griglia di 4 x 4 pixel.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta la qualità di rendering su LOW (bassa):
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 70
Elementi del linguaggio ActionScript
_quality = "LOW";
Proprietà _root
_root.movieClip
_root.action
_root.property
Specifica o restituisce un riferimento alla linea temporale principale del clip filmato. Se un clip filmato ha più livelli, la
linea temporale principale si trova nel livello che contiene lo script in esecuzione. Ad esempio, se uno script nel livello
1 valuta _root, viene restituito _level1.
La specifica di _root equivale all'uso della notazione a barra (/) sconsigliata per specificare un percorso assoluto nel
livello corrente.
Nota: se un clip filmato contenente _root viene caricato in un altro clip filmato, _root si riferisce alla linea temporale
del clip filmato in fase di caricamento e non alla linea temporale che contiene _root. Per fare in modo che _root faccia
riferimento alla linea temporale del clip filmato caricato anche se questo viene caricato in un altro clip filmato,
utilizzare MovieClip._lockroot.
Disponibilità
Flash Lite 2.0
Parametri
movieClipInstance:String - Il nome dell'istanza di un clip filmato.
action:String - Un'azione o un campo.
property:String - Una proprietà dell'oggetto MovieClip.
Esempio
L'esempio seguente arresta la linea temporale del livello che contiene lo script in corso di esecuzione:
_root.stop();
L'esempio seguente traccia le variabili e le istanze presenti nell'area di validità di _root:
for (prop in _root) {
trace("_root."+prop+" = "+_root[prop]);
}
Vedere anche
_lockroot (proprietà MovieClip._lockroot), Proprietà _parent, Funzione targetPath
Proprietà scroll
textFieldVariableName.scroll = x
Sconsigliata a partire da Flash Player 5. Questa proprietà è stata sconsigliata a favore di TextField.scroll.
Controlla la visualizzazione delle informazioni in un campo di testo associato a una variabile. La proprietà scroll
definisce il punto in cui il campo di testo inizia la visualizzazione del contenuto; una volta impostata, Flash Player la
aggiorna man mano che l'utente scorre il campo di testo. La proprietà scroll è utile per indirizzare gli utenti verso un
paragrafo specifico all'interno di un brano lungo o per creare campi di testo a scorrimento. La proprietà può essere
recuperata e modificata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 71
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.1
Esempio
Il codice seguente viene associato a un pulsante Up (Su) che scorre il campo di testo myText:
on (release) {
myText.scroll = myText.scroll + 1;
}
Vedere anche
maxscroll (proprietà TextField.maxscroll), scroll (proprietà TextField.scroll)
Proprietà _soundbuftime
_soundbuftime:Number = integer
Stabilisce il numero di secondi dell'audio in streaming da inserire nel buffer. Il valore predefinito è 5 secondi.
Disponibilità
Flash Lite 2.0
Parametri
integer:Number - Il numero di secondi prima che cominci l'esecuzione in streaming del file SWF.
Esempio
L'esempio seguente riproduce in streaming un file MP3 ed esegue la bufferizzazione dell'audio prima che venga
riprodotto per l'utente. In fase di runtime vengono creati due campi di testo che contengono un timer e le informazioni
di debug. La proprietà _soundbuftime è impostata in modo da bufferizzare il file MP3 per 10 secondi. Per il file MP3
viene creata l'istanza di un nuovo oggetto Sound.
// create text fields to hold debug information.
this.createTextField("counter_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
this.createTextField("debug_txt", this.getNextHighestDepth(), 0, 20, 100, 22);
// set the sound buffer to 10 seconds.
_soundbuftime = 10;
// create the new sound object instance.
var bg_sound:Sound = new Sound();
// load the MP3 sound file and set streaming to true.
bg_sound.loadSound("yourSound.mp3", true);
// function is triggered when the song finishes loading.
bg_sound.onLoad = function() {
debug_txt.text = "sound loaded";
};
debug_txt.text = "sound init";
function updateCounter() {
counter_txt.text++;
}
counter_txt.text = 0;
setInterval(updateCounter, 1000);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 72
Elementi del linguaggio ActionScript
Proprietà this
this
Fa riferimento a un oggetto o all'istanza di un clip filmato. Durante l'esecuzione di uno script, this fa riferimento
all'istanza del clip filmato che contiene lo script. Quando viene chiamato un campo, this contiene un riferimento
all'oggetto contenente tale campo.
All'interno di un gestore di eventi on() associato a un pulsante, this fa riferimento alla linea temporale che contiene
il pulsante. All'interno di un gestore di eventi onClipEvent() associato a un clip filmato, this fa riferimento alla linea
temporale che contiene il clip filmato.
Poiché this viene valutato nel contesto dello script che lo contiene, non è possibile utilizzare this in uno script per
fare riferimento alla variabile definita in un file di classe. Creare ApplyThis.as e immettere il codice seguente:
class ApplyThis {
var str:String = "Defined in ApplyThis.as";
function conctStr(x:String):String {
return x+x;
}
function addStr():String {
return str;
}
}
Quindi, in un file FLA o AS, aggiungere l'ActionScript seguente:
var obj:ApplyThis = new ApplyThis();
var abj:ApplyThis = new ApplyThis();
abj.str = "defined in FLA or AS";
trace(obj.addStr.call(abj, null)); //output: defined in FLA or AS
trace(obj.addStr.call(this, null)); //output: undefined
trace(obj.addStr.call(obj, null)); //output: Defined in applyThis.as
Allo stesso modo, per chiamare un funzione definita in una classe dinamica, utilizzare this per chiamare la funzione
nell'area di validità appropriata:
// incorrect version of Simple.as
/*
dynamic class Simple {
function callfunc() {
trace(func());
}
}
*/
// correct version of Simple.as
dynamic class simple {
function callfunc() {
trace(this.func());
}
}
Nel file FLA o AS, aggiungere l'ActionScript seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 73
Elementi del linguaggio ActionScript
var obj:Simple = new Simple();
obj.num = 0;
obj.func = function() {
return true;
};
obj.callfunc();
// output: true
Se si utilizza la versione non corretta di Simple.as, viene segnalato un errore di sintassi.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, la parola chiave this fa riferimento all'oggetto Circle:
function Circle(radius:Number):Void {
this.radius = radius;
this.area = Math.PI*Math.pow(radius, 2);
}
var myCircle = new Circle(4);
trace(myCircle.area);
Nell'istruzione seguente associata a un fotogramma all'interno di un clip filmato, la parola chiave this fa riferimento
al clip filmato corrente.
// sets the alpha property of the current movie clip to 20
this._alpha = 20;
Nell'istruzione corrente contenuta in un gestore MovieClip.onPress, la parola chiave this fa riferimento al clip filmato
corrente:
this.square_mc.onPress = function() {
startDrag(this);
};
this.square_mc.onRelease = function() {
stopDrag();
};
Vedere anche
Costanti, Gestore onClipEvent()
Operatori
Gli operatori simbolici sono caratteri che specificano la modalità di combinazione, confronto o modifica dei valori di
un'espressione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 74
Elementi del linguaggio ActionScript
Riepilogo degli operatori
Operatore
Descrizione
+ (addizione)
Somma le espressioni numeriche o concatena (unisce) le stringhe.
+= (assegnazione
addizione)
Assegna a expression1 il valore di expression1 + expression2.
[] (accesso array)
Inizializza un nuovo array o un array multidimensionale con gli elementi specificati (a0
e così via) oppure accede agli elementi di un array.
= (assegnazione)
Assegna il valore di expression2 (il parametro sulla destra) alla variabile,
all'elemento di array o alla proprietà in expression1.
& (AND bit a bit)
Converte expression1 e expression2 in numeri interi senza segno a 32 bit ed
esegue un'operazione AND booleana su ogni bit dei parametri convertiti in numeri
interi.
&= (assegnazione AND
bit a bit)
Assegna a expression1 il valore di expression1& expression2.
<< (spostamento a
sinistra bit a bit)
Converte expression1 e expression2 in numeri interi a 32 bit e sposta tutti i bit in
expression1 a sinistra per il numero di posti specificato dal numero intero risultante
dalla conversione di expression2.
<<= (spostamento a
Questo operatore esegue un'operazione di spostamento bit a bit verso sinistra (<<) e
memorizza il contenuto sotto forma di risultato in expression1.
sinistra bit a bit e
assegnazione)
~ (NOT bit a bit)
Noto anche come operatore del complemento a uno o operatore del complemento
bit a bit.
| (OR bit a bit)
Converte expression1 e expression2 in numeri interi senza segno a 32 bit e
restituisce un 1 in ogni posizione di bit nella quale i bit corrispondenti expression1
o expression2 sono 1.
|= (assegnazione OR bit a
Assegna a expression1 il valore di expression1 | expression2.
bit)
>> (spostamento a destra
bit a bit)
Converte expression1 e expression2 in numeri interi a 32 bit e sposta tutti i bit in
expression1 a destra per il numero di posti specificato dal numero intero risultante
dalla conversione di expression2.
>>= (spostamento a
Questo operatore esegue un'operazione di spostamento bit a bit verso destra e
memorizza il contenuto sotto forma di risultato in expression1.
destra bit a bit e
assegnazione)
>>> (spostamento a
destra bit a bit senza
segno)
Uguale all'operatore di spostamento a destra (>>) ad eccezione del fatto che non
conserva il segno dell'originale espressione poiché nei bit a sinistra vengono inseriti dei
valori 0. I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i
decimali.
>>>= (spostamento a
Esegue un'operazione di spostamento bit a bit verso destra senza segno e memorizza
destra bit a bit senza segno il contenuto sotto forma di risultato in expression1.
e assegnazione)
^ (XOR bit a bit)
Converte expression1 e expression2 in numeri interi senza segno a 32 bit e restituisce
un 1 in ogni posizione di bit nella quale i bit corrispondenti in expression1 o
expression2, ma non in entrambi, sono 1.
^= (assegnazione XOR bit
a bit)
Assegna a expression1 il valore di expression1 ^ expression2.
/* (delimitatore
Indica una o più righe di commento di script.
commenti a blocchi)
, (virgola)
Valuta expression1 quindi expression2 e così via.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 75
Elementi del linguaggio ActionScript
Operatore
Descrizione
add (concatenazione
(stringhe))
Sconsigliata a partire da Flash Player 5. Adobe consiglia di utilizzare l'operatore di
addizione (+) quando si crea contenuto per Flash Player 5 o versioni successive.
Nota: anche in Flash Lite 2.0 è sconsigliato l'operatore add a favore dell'operatore di
addizione (+).
Concatena due o più stringhe.
?: (condizionale)
Indica a Flash di valutare expression1 e, se il valore di expression1 è true, restituisce il
valore di expression2; altrimenti restituisce il valore di expression3.
-- (decremento)
Operatore unario di pre-decremento e post-decremento, che sottrae 1 da expression.
/ (divisione)
Divide expression1 per expression2.
/= (assegnazione
divisione)
Assegna a expression1 il valore di expression1 / expression2.
. (punto)
Utilizzato per spostarsi nelle gerarchie dei clip filmato e accedere ai clip filmato
nidificati (secondari), alle variabili e alle proprietà.
== (uguaglianza)
Confronta due espressioni per verificarne l'uguaglianza.
eq (uguaglianza
(stringhe))
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore == (uguaglianza).
Restituisce true se la rappresentazione sotto forma di stringa di expression1 è uguale
alla rappresentazione sotto forma di stringa di expression2; in caso contrario,
restituisce false.
> (maggiore di)
Esegue un confronto tra due espressioni e determina se expression1 è maggiore di
expression2; in caso affermativo, l'operatore restituisce true.
gt (maggiore di
(stringhe))
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore > (maggiore di).
Esegue un confronto tra la rappresentazione sotto forma di stringa di expression1 e la
rappresentazione sotto forma di stringa di expression2 e restituisce true se
expression1 è maggiore di expression2; in caso contrario, restituisce false.
>= (maggiore di o uguale
a)
Esegue un confronto tra due espressioni e determina se expression1 è maggiore di o
uguale a expression2 (true) o se expression1 è minore di expression2 (false)
ge (maggiore di o uguale Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
a (stringhe))
dell'operatore >= (maggiore di o uguale a).
Restituisce true se expression1 è maggiore di o uguale a expression2, in caso contrario
restituisce false.
++ (incremento)
Operatore unario di pre-incremento e post-incremento che aggiunge 1 a expression.
!= (diseguaglianza)
Prova l'esatto opposto dell'operatore di uguaglianza (==).
<> (diseguaglianza)
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato. Adobe
consiglia di utilizzare l'operatore != (diseguaglianza).
Prova l'esatto opposto dell'operatore di uguaglianza (==).
instanceof
Prova se object è un'istanza di classConstructor o una sottoclasse di
classConstructor.
< (minore di)
Esegue un confronto tra due espressioni e determina se expression1 è minore di
expression2; in caso affermativo, l'operatore restituisce true.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 76
Elementi del linguaggio ActionScript
Operatore
Descrizione
lt (minore di (stringhe)) Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore < (minore di).
Restituisce true se expression1 è minore di expression2; in caso contrario, restituisce
false.
<= (minore di o uguale a) Esegue un confronto tra due espressioni e determina se expression1 è minore di o
uguale a expression2; in caso affermativo, l'operatore restituisce true.
le (minore di o uguale a
(stringhe))
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato in Flash
5 a favore dell'operatore <= (minore di o uguale a).
Restituisce true se expression1 è minore di o uguale a expression2, in caso contrario
restituisce false.
// (delimitatore riga
commenti)
Indica l'inizio di un commento di script.
&& (AND logico)
Esegue un'operazione booleana sui valori di una delle due espressioni o di entrambe.
e (AND logico)
Sconsigliata a partire da Flash Player 5. Adobe consiglia di utilizzare l'operatore logico
AND (&&).
Esegue un'operazione logica AND (&& in Flash Player 4.
! (NOT logico)
Inverte il valore booleano di una variabile o espressione.
not (NOT logico)
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore ! (NOT logico).
Esegue un'operazione NOT logica (!) in Flash Player 4.
|| (OR logico)
Valuta expression1 (l'espressione a sinistra dell'operatore) e restituisce true se
l'espressione equivale a true.
oppure (OR logico)
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore || (OR logico).
Valuta condition1 e condition2 e, se una delle espressioni è true, l'intera espressione
è true.
% (modulo)
Calcola il resto di expression1 diviso per expression2.
%= (assegnazione
modulo)
Assegna a expression1 il valore di expression1 % expression2.
* (moltiplicazione)
Moltiplica due espressioni numeriche.
*= (assegnazione
moltiplicazione)
Assegna a expression1 il valore di expression1 * expression2.
new
Crea un nuovo oggetto, inizialmente anonimo, e chiama la funzione identificata dal
parametro constructor.
ne (non uguale
(stringhe))
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore
dell'operatore != (diseguaglianza).
Restituisce true se expression1 non è uguale a expression2, in caso contrario
restituisce false.
{} (inizializzatore di
oggetto)
Crea un nuovo oggetto e lo inizializza con le coppie di proprietà name e value
specificate.
() (parentesi)
Esegue un'operazione di raggruppamento su uno o più parametri, esegue una
valutazione sequenziale delle espressioni, oppure racchiude uno o più parametri e li
trasmette come tali a una funzione fuori delle parentesi.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 77
Elementi del linguaggio ActionScript
Operatore
Descrizione
=== (uguaglianza
rigorosa)
Confronta due espressioni per verificarne l'uguaglianza. L'operatore di uguaglianza
rigorosa (===) si comporta come l'operatore di uguaglianza (==), ma non converte i
tipi di dati.
!== (diseguaglianza
rigorosa)
Prova l'esatto opposto dell'operatore di uguaglianza rigorosa (===).
" (delimitatore di
stringa)
Se utilizzate prima e dopo i caratteri, le virgolette (") indicano che tali caratteri hanno
un valore letterale e devono essere considerati come una stringa, non una variabile, un
valore numerico o un altro elemento di ActionScript.
- (sottrazione)
Utilizzato per negare o sottrarre.
-= (assegnazione
sottrazione)
Assegna a expression1 il valore di expression1 - expression2.
: (tipo)
Utilizzato per la tipizzazione forte dei dati; specifica i tipi di variabili, i tipi di funzioni
restituite o i tipi di parametri funzione.
typeof
L'operatore typeof valuta l'espressione e restituisce una stringa che specifica se è
un valore String, MovieClip, Object, Function, Number o Boolean.
void
L'operatore void valuta un'espressione, quindi ne scarta il valore e restituisce
undefined.
Operatore + (addizione)
expression1 + expression2
Somma le espressioni numeriche o concatena (unisce) le stringhe. Se un'espressione è una stringa, tutte le altre
espressioni vengono convertite in stringhe e concatenate. Se entrambe le espressioni sono numeri interi, la somma è
un numero intero; se almeno una delle due espressioni è un numero a virgola mobile, la somma è un numero a virgola
mobile.
Nota: Flash Lite 2.0 supporta l'operatore di addizione (+) per l'addizione delle espressioni numeriche e la
concatenazione delle stringhe. Flash Lite 1.x supporta l'operatore di addizione (+) per l'addizione delle espressioni
numeriche (quali var1 = 1 + 2 // output: 3). In Flash Lite 1.x, utilizzare l'operatore add per concatenare le
stringhe.
Disponibilità
Flash Lite 2.0
Operandi
expression1 - Un numero o una stringa.
expression2 - Un numero o una stringa.
Restituisce
Object - Una stringa, un numero intero o un numero a virgola mobile.
Esempio
Uso 1: l'esempio seguente concatena due stringhe e visualizza il risultato nel pannello Output.
var name:String = "Cola";
var instrument:String = "Drums";
trace(name + " plays " + instrument); // output: Cola plays Drums
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 78
Elementi del linguaggio ActionScript
Nota: Flash Lite 1.x non supporta l'operatore di addizione (+) per la concatenazione delle stringhe. In Flash Lite 1.x,
utilizzare l'operatore add per concatenare le stringhe.
Uso 2: questa istruzione somma gli interi 2 e 3 e visualizza il numero intero risultante (5) nel pannello Output:
trace(2 + 3); // output: 5
Questa istruzione somma i numeri a virgola mobile 2,5 e 3,25 e visualizza il numero a virgola mobile risultante (5,75)
nel pannello Output:
trace(2.5 + 3.25); // output: 5.75
Uso 3: per le variabili associate ai campi di testo dinamici e di input il tipo di dati è String. Nell'esempio seguente, la
variabile deposit è un campo di testo di input sullo stage. Dopo che un utente ha immesso una cifra di deposito, lo
script tenta di aggiungere deposit a oldBalance. Tuttavia, poiché deposit è un tipo di dati String, lo script
concatena (ovvero, combina per formare un'unica stringa) i valori delle variabili anziché sommarli.
var oldBalance:Number = 1345.23;
var currentBalance = deposit_txt.text + oldBalance;
trace(currentBalance);
Ad esempio, se un utente immette 475 nel campo di testo deposit, la funzione trace() invia il valore 4751345.23 al
pannello Output. Per correggere questo inconveniente, utilizzare la funzione Number() per convertire la stringa in
numero, come nell'esempio seguente:
var oldBalance:Number = 1345.23;
var currentBalance:Number = Number(deposit_txt.text) + oldBalance;
trace(currentBalance);
L'esempio seguente mostra come le somme numeriche a destra di un'espressione stringa non vengano calcolate:
var a:String
trace(a); //
var b:String
trace(b); //
= 3 + 10 + "asdf";
13asdf
= "asdf" + 3 + 10;
asdf310
Operatore += (assegnazione addizione)
expression1 += expression2
Assegna a expression1 il valore di expression1 + expression2. Ad esempio, le due istruzioni seguenti danno lo stesso
risultato:
x += y;
x = x + y;
Questo operatore esegue anche la concatenazione delle stringhe. Tutte le regole dell'operatore di addizione (+) si
applicano anche all'operatore di assegnazione addizione (+=).
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o una stringa.
expression2 : Number - Un numero o una stringa.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 79
Elementi del linguaggio ActionScript
Restituisce
Number - Il risultato dell'addizione.
Esempio
Uso 1: questo esempio utilizza l'operatore += con un'espressione stringa e invia la frase "My name is Gilbert" al pannello
Output.
var x1:String = "My name is ";
x1 += "Gilbert";
trace(x1); // output: My name is Gilbert
Uso 2: l'esempio seguente mostra l'uso numerico dell'operatore di assegnazione addizione (+=):
var x:Number = 5;
var y:Number = 10;
x += y;
trace(x); // output: 15
Vedere anche
Operatore + (addizione)
Operatore [] (accesso array)
myArray = [ a0, a1,...aN ]
myArray[ i ] = value
myObject [ propertyName ]
Inizializza un nuovo array o un array multidimensionale con gli elementi specificati (a0 e così via) oppure accede agli
elementi di un array. L'operatore di accesso agli array consente di impostare e recuperare in modo dinamico nomi di
istanza, variabili e oggetti, e di accedere alle proprietà dell'oggetto.
Uso 1: un array è un oggetto le cui proprietà sono definite elementi, ciascuno identificato mediante un numero
chiamato indice. Quando si crea un array, gli elementi vengono racchiusi tra gli operatori di accesso all'array ([])
(parentesi quadre). Un array può contenere elementi di vari tipi; ad esempio, l'array seguente, denominato employee,
ha tre elementi: il primo è un numero, e il secondo e il terzo sono stringhe (racchiuse tra virgolette):
var employee:Array = [15, "Barbara", "Jay"];
Per simulare array multidimensionali, è possibile nidificare più parentesi quadre, fino a una profondità di 256 livelli.
Il codice seguente consente di creare un array chiamato ticTacToe con tre elementi; ognuno di questi è a sua volta un
array composto da tre elementi:
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; // Select Debug > List Variables in
test mode
// to see a list of the array elements.
Uso 2: consente di racchiudere l'indice di ogni elemento tra parentesi quadre ([]) per accedervi direttamente; è
possibile aggiungere un nuovo elemento a un array, oppure cambiare o recuperare il valore di un elemento esistente.
Il primo indice di un array è sempre 0, come nell'esempio seguente:
var my_array:Array = new Array();
my_array[0] = 15;
my_array[1] = "Hello";
my_array[2] = true;
È possibile utilizzare le parentesi quadre ([]) per aggiungere un quarto elemento, come nell'esempio seguente:
my_array[3] = "George";
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 80
Elementi del linguaggio ActionScript
Le parentesi quadre ([]) consentono anche di accedere a un elemento in un array multidimensionale. Il primo set di
parentesi quadre identifica l'elemento dell'array originale, il secondo set indica l'elemento dell'array nidificato. Le righe
di codice seguenti inviano il numero 6 al pannello Output.
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];
trace(ticTacToe[1][2]);// output: 6
Uso 3: è possibile utilizzare l'operatore di accesso all'array ([]) invece della funzione eval() per impostare e recuperare
in modo dinamico i valori dei nomi dei clip filmato o altre proprietà di un oggetto. La riga di codice seguente imposta
il nome del clip filmato determinata concatenando la stringa "mc" con il valore della variabile i a “left_corner”.
name["mc" + i] = "left_corner";
Disponibilità
Flash Lite 2.0
Operandi
myArray : Object - Il nome di un array.
a0, a1,...aN : Object - Elementi di un array, qualsiasi istanza di oggetto o tipo nativo, compresi gli array nidificati.
i : Number - Un indice a numeri interi superiore o uguale a 0.
myObject : Object - Il nome di un oggetto.
propertyName : String - Una stringa che dà il nome a una proprietà dell'oggetto.
Restituisce
Object -
Uso 1: un riferimento a un array.
Uso 2: un valore dell'array; un'istanza di oggetto o tipo nativo (comprese le istanze di array).
Uso 3: una proprietà dell'oggetto; un'istanza di oggetto o tipo nativo (comprese le istanze di array).
Esempio
L'esempio seguente mostra due modi per creare un nuovo oggetto Array vuoto; la prima riga utilizza le parentesi
quadre ([]):
var my_array:Array = [];
var my_array:Array = new Array();
L'esempio seguente crea un array di nome employee_array e utilizza l'istruzione trace() per inviare gli elementi al
pannello Output. Nella quarta riga, un elemento nell'array viene modificato, mentre la quinta riga invia l'array appena
modificato al pannello Output:
var employee_array = ["Barbara", "George", "Mary"];
trace(employee_array); // output: Barbara,George,Mary
employee_array[2] = "Sam";
trace(employee_array); // output: Barbara,George,Sam
Nell'esempio seguente, viene valutata l'espressione contenuta tra parentesi quadre ("piece" + i) e il risultato viene
utilizzato come nome della variabile da recuperare dal clip filmato my_mc. In questo esempio, la variabile i deve
trovarsi nella stessa linea temporale del pulsante. Se ad esempio la variabile i è uguale a 5, il valore della variabile
piece5 nel clip filmato my_mc viene visualizzato nel pannello Output:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 81
Elementi del linguaggio ActionScript
myBtn_btn.onRelease = function() {
x = my_mc["piece"+i];
trace(x);
};
Nell'esempio seguente, viene valutata l'espressione contenuta tra parentesi quadre e il risultato viene utilizzato come
nome della variabile da recuperare dal clip name_mc:
name_mc["A" + i];
Se si ha dimestichezza con la sintassi della barra ActionScript di Flash 4, è possibile utilizzare la funzione eval() per
ottenere lo stesso risultato:
eval("name_mc.A" & i);
È possibile utilizzare il codice ActionScript seguente per eseguire un ciclo relativo a tutti gli oggetti nell'area di validità
di _root, un'operazione molto utile per le operazioni di debug:
for (i in _root) {
trace(i+": "+_root[i]);
}
Inoltre, è possibile utilizzare l'operatore di accesso agli array ([]) sul lato sinistro di un'istruzione di assegnazione per
impostare dinamicamente i nomi delle istanze, delle variabili e degli oggetti:
employee_array[2] = "Sam";
Vedere anche
Array, Object, Funzione eval
Operatore = (assegnazione)
expression1 = expression2
Assegna il valore di expression2 (il parametro sulla destra) alla variabile, all'elemento di array o alla proprietà in
expression1. L'assegnazione può avvenire in base al valore o al riferimento. L'assegnazione in base al valore copia il
valore effettivo di expression2 e lo memorizza in expression1 e viene utilizzata quando a una variabile viene assegnato
un numero o un carattere letterale per la stringa. L'assegnazione in base al riferimento memorizza un riferimento
expression2 in expression1. e viene comunemente utilizzata con l'operatore new. L'uso dell'operatore new crea un
oggetto nella memoria e assegna a una variabile un riferimento a quella posizione nella memoria.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Una variabile, un elemento di array o la proprietà di un oggetto.
expression2 : Object - Un valore di qualsiasi tipo.
Restituisce
Object - Il valore assegnato, expression2.
Esempio
L'esempio seguente utilizza l'assegnazione in base al valore per assegnare il valore 5 alla variabile x.
var x:Number = 5;
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 82
Elementi del linguaggio ActionScript
L'esempio seguente utilizza l'assegnazione in base al valore per assegnare il valore "hello" alla variabile x:
var x:String;x = " hello ";
L'esempio seguente utilizza l'assegnazione in base al riferimento per creare la variabile moonsOfJupiter, che contiene
un riferimento a un oggetto Array appena creato. L'assegnazione in base al valore viene quindi utilizzata per copiare il
valore "Callisto" nel primo elemento dell'array a cui fa riferimento la variabile moonsOfJupiter:
var moonsOfJupiter:Array = new Array();moonsOfJupiter[0] = "Callisto";
L'esempio seguente utilizza l'assegnazione in base al riferimento per creare un nuovo oggetto e per assegnare alla
variabile mercury un riferimento a tale oggetto. Quindi, viene utilizzata l'assegnazione in base al valore per assegnare
il valore 3030 alla proprietà diameter dell'oggetto mercury:
var mercury:Object = new Object(); mercury.diameter = 3030; // in miles trace
(mercury.diameter); // output: 3030
L'esempio seguente riprende l'esempio precedente e crea una variabile di nome merkur (il termine tedesco per
mercurio) e lo assegna al valore di mercury. In questo modo vengono create due variabili che fanno riferimento allo
stesso oggetto in memoria: pertanto, è possibile utilizzare indistintamente una delle due variabili per accedere alle
proprietà dell'oggetto. A questo punto, è possibile modificare la proprietà diameter in modo che utilizzi i chilometri
anziché le miglia:
var merkur:Object = mercury; merkur.diameter = 4878; // in kilometers trace (mercury.diameter);
// output: 4878
Vedere anche
Operatore == (uguaglianza)
Operatore & (AND bit a bit)
expression1 & expression2
Converte expression1 e expression2 in numeri interi senza segno a 32 bit ed esegue un'operazione AND booleana su
ogni bit dei parametri convertiti in numeri interi. I numeri a virgola mobile vengono convertiti in numeri interi
scartando tutti i decimali. Il risultato è un nuovo numero intero a 32 bit.
I numeri interi positivi vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295
o 0xFFFFFFFF; per i valori maggiori del valore massimo vengono scartate le cifre più significative al momento della
conversione, in modo che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore
esadecimale senza segno, tramite la notazione del complemento a due, con il minimo pari a -2147483648 o
0x800000000. I numeri minori del minimo vengono convertiti nel complemento a due con maggiore precisione e
anche per questi numeri vengono scartate le cifre più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo che venga restituito un numero
intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero.
expression2 : Number - Un numero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 83
Elementi del linguaggio ActionScript
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente confronta la rappresentazione sotto forma di bit dei numeri e restituisce 1 solo se entrambi i bit
nella stessa posizione sono 1. Nel codice ActionScript seguente, vengono aggiunti 13 (1101 binario) e 11 (1011 binario)
e viene restituito 1 solo nella posizione in cui entrambi i numero hanno un 1.
var insert:Number = 13;
var update:Number = 11;
trace(insert & update); // output : 9 (or 1001 binary)
Nei numeri 13 e 11 il risultato è 9 poiché solo nella prima e ultima posizione di entrambi i numeri è presente il numero 1.
L'esempio seguente mostra il comportamento della conversione del valore restituito:
trace(0xFFFFFFFF);
trace(0xFFFFFFFF &
trace(0xFFFFFFFF &
trace(4294967295 &
trace(4294967295 &
// 4294967295
0xFFFFFFFF); // -1
-1); // -1
-1); // -1
4294967295); // -1
Vedere anche
Operatore &= (assegnazione AND bit a bit), Operatore ^ (XOR bit a bit), Operatore ^= (assegnazione
XOR bit a bit), Operatore | (OR bit a bit), Operatore |= (assegnazione OR bit a bit), Operatore
~ (NOT bit a bit)
Operatore &= (assegnazione AND bit a bit)
expression1 &= expression2
Assegna a expression1 il valore di expression1 & expression2. Ad esempio, le due espressioni seguenti sono equivalenti:
x &= y;
x = x & y;
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero.
expression2 : Number - Un numero.
Restituisce
Number - Il valore di expression1 & expression2.
Esempio
L'esempio seguente assegna il valore 9 a x:
var x:Number = 15;
var y:Number = 9;
trace(x &= y); // output: 9
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 84
Elementi del linguaggio ActionScript
Vedere anche
Operatore & (AND bit a bit), Operatore ^ (XOR bit a bit), Operatore ^= (assegnazione XOR bit a
bit), Operatore | (OR bit a bit)Operatore |= (assegnazione OR bit a bit), Operatore ~ (NOT bit
a bit)
Operatore << (spostamento a sinistra bit a bit)
expression1 << expression2
Converte expression1 e expression2 in numeri interi a 32 bit e sposta tutti i bit in expression1 a sinistra per il numero di
posti specificato dal numero intero risultante dalla conversione di expression2. Le posizioni di bit che vengono svuotate
in seguito a questa operazione vengono riempite con 0 e i bit spostati oltre l'estremità sinistra vengono scartati. Lo
spostamento di un valore verso sinistra di una posizione equivale a moltiplicarlo per 2.
I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i decimali. I numeri interi positivi
vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; per i
valori maggiori del valore massimo vengono scartate le cifre più significative al momento della conversione, in modo
che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore esadecimale senza segno tramite
la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000. I numeri minori del minimo
vengono convertiti nel complemento a due con maggiore precisione; anche per questi numeri vengono scartate le cifre
più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo da ottenere come valore restituito
un numero intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a sinistra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
Nell'esempio seguente, il numero intero 1 viene spostato di 10 bit verso sinistra: x = 1 << 10 Il risultato
dell'operazione è x = 1024. perché 1 decimale equivale a 1 binario, 1 binario spostato verso sinistra di 10 è
10000000000 binario, e 10000000000 binario è 1024 decimale. Nell'esempio seguente, il numero intero 7 viene spostato
di 8 bit verso sinistra: x = 7 << 8 Il risultato dell'operazione è x = 1792. perché 7 decimale equivale a 111 binario,
111 binario spostato verso sinistra di 8 bit è 11100000000 binario, e 11100000000 binario è 1792 decimale. Se si applica
l'esempio seguente, è possibile notare che i bit sono stati spostati di due spazi verso sinistra:
// 2 binary == 0010
// 8 binary == 1000
trace(2 << 2); // output: 8
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 85
Elementi del linguaggio ActionScript
Vedere anche
Operatore >>= (spostamento a destra bit a bit e assegnazione), Operatore >> (spostamento a
destra bit a bit), Operatore <<= (spostamento a sinistra bit a bit e assegnazione)Operatore >>>
(spostamento a destra bit a bit senza segno), Operatore >>>= (spostamento a destra bit a bit
senza segno e assegnazione)
Operatore <<= (spostamento a sinistra bit a bit e assegnazione)
expression1 <<= expression2
Questo operatore esegue un'operazione di spostamento bit a bit verso sinistra (<<) e memorizza il contenuto sotto
forma di risultato in expression1. Le due espressioni seguenti sono equivalenti:
A <<= BA = (A << B)
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a sinistra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
Nell'esempio seguente viene utilizzato l'operatore spostamento a sinistra bit a bit e assegnazione (<<=) per spostare
tutti i bit di uno spazio verso sinistra:
var x:Number = 4;
// shift all bits one slot to the left.
x <<= 1;
trace(x); // output: 8
// 4 decimal = 0100 binary
// 8 decimal = 1000 binary
Vedere anche
Operatore << (spostamento a sinistra bit a bit), Operatore >>= (spostamento a destra bit a bit
e assegnazione), Operatore >> (spostamento a destra bit a bit)
Operatore ~ (NOT bit a bit)
~expression
Noto anche come operatore del complemento a uno o operatore del complemento bit a bit. Converte l'espressione in
un numero intero con segno a 32 bit, quindi applica un complemento a uno bit a bit. In altre parole, nel risultato, ogni
bit 0 viene impostato su 1 e ogni bit 1 viene impostato su 0. Il risultato è un numero intero a 32 bit con segno.
Ad esempio, il valore esadecimale 0x7777 è rappresentato da questo numero binario: 0111011101110111
La negazione bit a bit di quel valore esadecimale, ~0x7777, è questo numero binario: 1000100010001000
In formato esadecimale, questo è 0x8888. Pertanto ~0x7777 è 0x8888.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 86
Elementi del linguaggio ActionScript
Gli operatori bit a bit vengono più comunemente utilizzati per rappresentare i flag bit (valori booleani compressi in 1
bit ciascuno).
I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i decimali. I numeri interi positivi
vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; per i
valori maggiori del valore massimo vengono scartate le cifre più significative al momento della conversione, in modo
che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore esadecimale senza segno tramite
la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000. I numeri minori del minimo
vengono convertiti nel complemento a due con maggiore precisione; anche per questi numeri vengono scartate le cifre
più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo che il valore restituito sia un
numero intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Operandi
espressione : Number - Un numero.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente mostra un utilizzo possibile dell'operatore NOT bit a bit (~) con i flag bit:
var ReadOnlyFlag:Number = 0x0001; // defines bit 0 as the read-only flag
var flags:Number = 0;
trace(flags);
/* To set the read-only flag in the flags variable,
the following code uses the bitwise OR:
*/
flags |= ReadOnlyFlag;
trace(flags);
/* To clear the read-only flag in the flags variable,
first construct a mask by using bitwise NOT on ReadOnlyFlag.
In the mask, every bit is a 1 except for the read-only flag.
Then, use bitwise AND with the mask to clear the read-only flag.
The following code constructs the mask and performs the bitwise AND:
*/
flags &= ~ReadOnlyFlag;
trace(flags);
// output: 0 1 0
Vedere anche
Operatore & (AND bit a bit), Operatore &= (assegnazione AND bit a bit), Operatore ^ (XOR bit a
bit), Operatore ^= (assegnazione XOR bit a bit), Operatore | (OR bit a bit), Operatore |=
(assegnazione OR bit a bit)
Operatore | (OR bit a bit)
expression1 | expression2
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 87
Elementi del linguaggio ActionScript
Converte expression1 e expression2 in numeri interi senza segno a 32-bit e restituisce un 1 in ogni posizione di bit nella
quale i bit corrispondenti di expression1 o expression2 sono 1. I numeri a virgola mobile vengono convertiti in numeri
interi scartando tutti i decimali. Il risultato è un nuovo numero intero a 32 bit.
I numeri interi positivi vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295
o 0xFFFFFFFF; per i valori maggiori del valore massimo vengono scartate le cifre più significative al momento della
conversione, in modo che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore
esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o
0x800000000. I numeri minori del minimo vengono convertiti nel complemento a due con maggiore precisione; anche
per questi numeri vengono scartate le cifre più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo da ottenere come valore restituito
un numero intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero.
expression2 : Number - Un numero.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
Di seguito è riportato un esempio di operazione OR bit a bit (|):
// 15 decimal = 1111 binary
var x:Number = 15;
// 9 decimal = 1001 binary
var y:Number = 9;
// 1111 | 1001 = 1111
trace(x | y); // returns 15 decimal (1111 binary)
Fare attenzione a non confondere | (OR bit a bit ) con || (OR logico).
Vedere anche
Operatore & (AND bit a bit), Operatore &= (assegnazione AND bit a bit), Operatore ^ (XOR bit a
bit), Operatore ^= (assegnazione XOR bit a bit), Operatore |= (assegnazione OR bit a bit),
Operatore ~ (NOT bit a bit)
Operatore |= (assegnazione OR bit a bit)
expression1 |= expression2
Assegna a expression1 il valore di expression1 | expression2. Ad esempio, le due istruzioni seguenti sono equivalenti:
x |= y; and x = x | y;
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 88
Elementi del linguaggio ActionScript
Operandi
expression1 : Number - Un numero o variabile.
expression2 : Number - Un numero o variabile.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente utilizza l'operatore assegnazione OR bit a bit (|=):
// 15 decimal = 1111 binary
var x:Number = 15;
// 9 decimal = 1001 binary
var y:Number = 9;
// 1111 |= 1001 = 1111
trace(x |= y); // returns 15 decimal (1111 binary)
Vedere anche
Operatore & (AND bit a bit), Operatore &= (assegnazione AND bit a bit), Operatore ^ (XOR bit a
bit), Operatore ^= (assegnazione XOR bit a bit)Operatore | (OR bit a bit), Operatore ~ (NOT bit
a bit)
Operatore >> (spostamento a destra bit a bit)
expression1 >> expression2
Converte expression1 e expression2 in numeri interi a 32 bit e sposta tutti i bit in expression1 a destra per il numero di
posti specificato dal numero intero risultante dalla conversione di expression2. I bit che vengono spostati oltre
l'estremità destra vengono scartati. Per conservare il segno dell'originale espressione, i bit a sinistra vengono sostituiti
con 0 se il bit più significativo (ovvero quello all'estrema sinistra) di expression1 è 0, oppure con 1 se il bit più
significativo è 1. Spostare un valore verso destra di una posizione equivale a dividere per 2 e scartare il resto.
I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i decimali. I numeri interi positivi
vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; per i
valori maggiori del valore massimo vengono scartate le cifre più significative al momento della conversione, in modo
che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore esadecimale senza segno tramite
la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000. I numeri minori del minimo
vengono convertiti nel complemento a due con maggiore precisione; anche per questi numeri vengono scartate le cifre
più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo da ottenere come valore restituito
un numero intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a destra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 89
Elementi del linguaggio ActionScript
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente converte 65535 in un numero intero a 32 bit e lo sposta di 8 bit verso destra:
var x:Number = 65535 >> 8;
trace(x); // outputs 255
L'esempio seguente mostra il risultato dell'esempio precedente:
var x:Number = 255;
65535 decimale equivale a 1111111111111111 binario (sedici volte 1), 1111111111111111 binario spostato verso destra
di 8 bit è 11111111 binario, e 11111111 binario è 255 decimale. Il bit più significativo è 0 dal momento che gli interi
sono a 32 bit, pertanto il bit di riempimento è 0.
L'esempio seguente converte -1 in un numero intero a 32 bit e lo sposta di 1 bit verso destra:
var x:Number = -1 >> 1;
trace(x); // outputs -1
L'esempio seguente mostra il risultato dell'esempio precedente:
var x:Number = -1;
-1 decimale equivale a 11111111111111111111111111111111 binario (trentadue volte 1); se si sposta verso destra di
un bit, il bit meno significativo (ovvero quello all'estrema destra) viene scartato e quello più significativo viene riempito
con 1. Il risultato è 11111111111111111111111111111111 (trentadue volte 1) binario che rappresenta il numero intero
-1 a 32 bit.
Vedere anche
Operatore >>= (spostamento a destra bit a bit e assegnazione)
Operatore >>= (spostamento a destra bit a bit e assegnazione)
expression1 >>= expression2
Questo operatore esegue un'operazione di spostamento bit a bit verso destra (<<) e memorizza il contenuto sotto
forma di risultato in expression1.
Le due istruzioni seguenti sono equivalenti:
A >>= B; and A = (A >> B);
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a destra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 90
Elementi del linguaggio ActionScript
Esempio
Il codice impostato come commento seguente utilizza l'operatore spostamento a destra bit a bit e assegnazione (>>=).
function convertToBinary(numberToConvert:Number):String {
var result:String = "";
for (var i = 0; i<32; i++) {
// Extract least significant bit using bitwise AND
var lsb:Number = numberToConvert & 1;
// Add this bit to the result
string result = (lsb ? "1" : "0")+result;
// Shift numberToConvert right by one bit, to see next bit
numberToConvert >>= 1;
}
return result;
}
trace(convertToBinary(479));
// Returns the string 00000000000000000000000111011111
// This string is the binary representation of the decimal
// number 479
Vedere anche
Operatore >> (spostamento a destra bit a bit)
Operatore >>> (spostamento a destra bit a bit senza segno)
expression1 >>> expression2
Uguale all'operatore di spostamento a destra (>>) ad eccezione del fatto che non conserva il segno dell'originale
espressione poiché nei bit a sinistra vengono inseriti dei valori 0.
I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i decimali. I numeri interi positivi
vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; per i
valori maggiori del valore massimo vengono scartate le cifre più significative al momento della conversione, in modo
che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore esadecimale senza segno tramite
la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000. I numeri minori del minimo
vengono convertiti nel complemento a due con maggiore precisione; anche per questi numeri vengono scartate le cifre
più significative.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a destra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente converte -1 in un numero intero a 32 bit e lo sposta di 1 bit verso destra:
var x:Number = -1 >>> 1;
trace(x); // output: 2147483647
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 91
Elementi del linguaggio ActionScript
-1 decimale è 11111111111111111111111111111111 binario (trentadue volte 1), e quando si sposta verso destra (senza
segno) di 1 bit, il bit meno significativo (ovvero quello all'estrema destra) viene scartato mentre quello più significativo
(ovvero quello all'estrema sinistra) viene riempito con uno 0. Il risultato è 01111111111111111111111111111111
binario che rappresenta il numero intero a 2147483647 a 32 bit.
Vedere anche
Operatore >>= (spostamento a destra bit a bit e assegnazione)
Operatore >>>= (spostamento a destra bit a bit senza segno e assegnazione)
expression1 >>>= expression2
Esegue un'operazione di spostamento bit a bit verso destra senza segno e memorizza il contenuto sotto forma di
risultato in expression1. Le due istruzioni seguenti sono equivalenti:
A >>>= B; and A = (A >>> B);
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Un numero o un'espressione da spostare a destra.
expression2 : Number - Un numero o un'espressione convertibile in un numero intero compreso tra 0 e 31.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Vedere anche
Operatore >>> (spostamento a destra bit a bit senza segno), Operatore >>= (spostamento a destra
bit a bit e assegnazione)
Operatore ^ (XOR bit a bit)
expression1 ^ expression2
Converte expression1 e expression2 in numeri interi senza segno a 32 bit e restituisce un 1 in ogni posizione di bit nella
quale i bit corrispondenti in expression1 o expression2, ma non in entrambi, sono 1. I numeri a virgola mobile vengono
convertiti in numeri interi scartando tutti i decimali. Il risultato è un nuovo numero intero a 32 bit.
I numeri interi positivi vengono convertiti in un valore esadecimale senza segno con un valore massimo di 4294967295
o 0xFFFFFFFF; per i valori maggiori del valore massimo vengono scartate le cifre più significative al momento della
conversione, in modo che il valore sia comunque a 32 bit. I numeri negativi vengono convertiti in un valore
esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o
0x800000000. I numeri minori del minimo vengono convertiti nel complemento a due con maggiore precisione; anche
per questi numeri vengono scartate le cifre più significative.
Il valore restituito viene interpretato come complemento a due con segno, in modo da ottenere come valore restituito
un numero intero compreso tra -2147483648 e 2147483647.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 92
Elementi del linguaggio ActionScript
Operandi
expression1 : Number - Un numero.
expression2 : Number - Un numero.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente utilizza l'operatore XOR bit a bit sui decimali 15 e 9, e assegna il risultato alla variabile x:
// 15 decimal = 1111 binary
// 9 decimal = 1001 binary
var x:Number = 15 ^ 9;
trace(x);
// 1111 ^ 1001 = 0110
// returns 6 decimal (0110 binary)
Vedere anche
Operatore & (AND bit a bit), Operatore &= (assegnazione AND bit a bit), Operatore ^= (assegnazione
XOR bit a bit), Operatore | (OR bit a bit), Operatore |= (assegnazione OR bit a bit), Operatore
~ (NOT bit a bit)
Operatore ^= (assegnazione XOR bit a bit)
expression1 ^= expression2
Assegna a expression1 il valore di expression1 ^ expression2. Ad esempio, le due istruzioni seguenti sono equivalenti:
x ^= y x = x ^ y
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Number - Numeri interi e variabili.
expression2 : Number - Numeri interi e variabili.
Restituisce
Number - Il risultato dell'operazione bit a bit.
Esempio
L'esempio seguente mostra un'operazione assegnazione XOR bit a bit (^=):
// 15 decimal = 1111 binary
var x:Number = 15;
// 9 decimal = 1001 binary
var y:Number = 9;
trace(x ^= y); // returns 6 decimal (0110 binary)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 93
Elementi del linguaggio ActionScript
Vedere anche
Operatore & (AND bit a bit), Operatore &= (assegnazione AND bit a bit), Operatore ^ (XOR bit a
bit), Operatore | (OR bit a bit)Operatore |= (assegnazione OR bit a bit), Operatore ~ (NOT bit
a bit)
Operatore /* (delimitatore commenti)
/* comment */
/* comment
comment */
Indica una o più righe di commento di script. Tutti i caratteri racchiusi tra il tag di inizio commento (/*) e il tag di fine
commento (*/) vengono considerati come un commento e ignorati dall'interprete di ActionScript. Utilizzare il
delimitatore commenti // per identificare i commenti su una sola riga. Utilizzare il delimitatore commenti /* per
identificare i commenti su più righe successive. Quando si utilizza questo formato di delimitazione, se si omette il tag
di fine commento (*/) o si cerca di nidificare i commenti, viene restituito un messaggio di errore. Dopo che è stato
utilizzato un tag di inizio commento (/*), il primo tag di fine commento (*/) determina la fine del commento,
indipendentemente dal numero di tag di inizio commento (/*) situati tra il primo tag di inizio e il tag di fine.
Disponibilità
Flash Lite 1.0
Operandi
comment - Qualsiasi carattere.
Esempio
Lo script seguente utilizza i delimitatori commenti all'inizio dello script:
/* records the X and Y positions of
the ball and bat movie clips */
var ballX:Number = ball_mc._x;
var ballY:Number = ball_mc._y;
var batX:Number = bat_mc._x;
var batY:Number = bat_mc._y;
Il seguente tentativo di nidificare i commenti genera un messaggio di errore:
/* this is an attempt to nest comments.
/* But the first closing tag will be paired
with the first opening tag */
and this text will not be interpreted as a comment */
Vedere anche
Operatore // (delimitatore commenti)
Operatore , (virgola)
(expression1 , expression2 [, expressionN... ])
Valuta expression1 quindi expression2 e così via. Questo operatore viene utilizzato principalmente nelle istruzioni
cicliche for spesso assieme all'operatore parentesi ().
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 94
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un'espressione da valutare.
expression2 : Number - Un'espressione da valutare.
expressionN : Number - Un numero qualsiasi di espressioni aggiuntive da valutare.
Restituisce
Object - Il valore di expression1, expression2, e così via.
Esempio
L'esempio seguente utilizza l'operatore virgola (,) in un ciclo for:
for (i = 0, j = 0; i < 3 && j < 3; i++, j+=2) {
trace("i = " + i + ", j = " + j);
}
// Output:
// i = 0, j = 0
// i = 1, j = 2
L'esempio seguente utilizza l'operatore virgola (,) senza l'operatore parentesi () e mostra come l'operatore virgola
restituisce solo il valore della prima espressione senza l'operatore parentesi ():
var v:Number = 0;
v = 4, 5, 6;
trace(v); // output: 4
L'esempio seguente utilizza l'operatore virgola (,) con l'operatore parentesi () e mostra come l'operatore virgola
restituisce il valore dell'ultima espressione se utilizzato con l'operatore parentesi ():
var v:Number = 0;
v = (4, 5, 6);
trace(v); // output: 6
L'esempio seguente utilizza l'operatore virgola (,) senza l'operatore parentesi () e mostra come l'operatore virgola
valuta in sequenza tutte le espressioni ma restituisce il valore della prima espressione. La seconda espressione, z++,
viene valutata e z viene incrementato di uno.
var v:Number = 0;
var z:Number = 0;
v = v + 4 , z++, v + 6;
trace(v); // output: 4
trace(z); // output: 1
L'esempio seguente è identico all'esempio precedente a eccezione dell'aggiunta dell'operatore parentesi () e mostra
nuovamente come l'operatore virgola (,), se utilizzato con l'operatore parentesi (), restituisce il valore dell'ultima
espressione nella serie:
var v:Number = 0;
var z:Number = 0;
v = (v + 4, z++, v + 6);
trace(v); // output: 6
trace(z); // output: 1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 95
Elementi del linguaggio ActionScript
Vedere anche
Operatore () (parentesi)
Operatore add (concatenazione stringhe)
string1 add string2
Sconsigliata a partire da Flash Player 5. Adobe consiglia di utilizzare l'operatore di addizione (+) quando si crea
contenuto per Flash Player 5 o versioni successive.
Nota: anche in Flash Lite 2.0 è sconsigliato l'operatore add a favore dell'operatore di addizione (+).
Concatena due o più stringhe. L'operatore add sostituisce l'operatore & di Flash 4; quando vengono utilizzati
nell'ambiente di creazione Flash 5 o versione successiva, i file di Flash Player 4 che utilizzano l'operatore & vengono
automaticamente convertiti per utilizzare l'operatore add (+) per la concatenazione delle stringhe. Utilizzare
l'operatore add (+) per concatenare le stringhe se si crea contenuto per Flash Player 4 o versioni precedenti.
Disponibilità
Flash Lite 1.0
Operandi
string1 : String - Una stringa.
string2 : String - Una stringa.
Restituisce
String - La stringa concatenata.
Vedere anche
Operatore + (addizione)
Operatore condizionale ?
expression1 ? expression2 : expression3
Indica a Flash di valutare expression1 e, se il valore di expression1 è true, restituisce il valore di expression2; altrimenti
restituisce il valore di expression3.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Espressione che restituisce un valore booleano; solitamente un'espressione di confronto,
come x < 5.
expression2 : Object - Valori di qualsiasi tipo.
expression3 : Object - Valori di qualsiasi tipo.
Restituisce
Object - Il valore di expression2 o expression3.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 96
Elementi del linguaggio ActionScript
Esempio
L'istruzione seguente assegna il valore della variabile x alla variabile z, poiché expression1 restituisce true:
var x:Number = 5;
var y:Number = 10;
var z = (x < 6) ? x: y;
trace (z); // returns 5
L'esempio seguente mostra un'istruzione condizionale in forma abbreviata:
var timecode:String = (new Date().getHours() < 11) ? "AM" : "PM";
trace(timecode);
La stessa istruzione condizionale può essere scritta anche per esteso, come nell'esempio seguente:
if (new Date().getHours() < 11) {
var timecode:String = "AM";
} else {
var timecode:String = "PM";
} trace(timecode);
Operatore -- (decremento)
--expression
expression--
Operatore unario di pre-decremento e post-decremento, che sottrae 1 da expression. Il valore di expression può essere
una variabile, un elemento di un array o la proprietà di un oggetto. Il formato pre-decremento dell'operatore (-expression) sottrae 1 da expression e restituisce il risultato. Il formato di decremento dopo l'operazione (expression--)
sottrae 1 da expression e restituisce il valore iniziale di expression (il valore prima della sottrazione).
Disponibilità
Flash Lite 1.0
Operandi
espressione : Number - Un numero o una variabile che restituisce un numero.
Restituisce
Number - Il risultato del valore decrementato.
Esempio
Il formato pre-decremento dell'operatore decrementa x a 2 (x - 1 = 2) e restituisce il risultato come y:
var x:Number = 3;
var y:Number = --x; //y is equal to 2
Il formato post-decremento dell'operatore decrementa x a 2 (x - 1 = 2) e restituisce il valore originale di x come
risultato y:
var x:Number = 3;
var y:Number = x--; //y is equal to 3
L'esempio seguente ripete da 10 a 1, e ogni iterazione del ciclo decrementa la variabile counter i di 1.
for (var i = 10; i>0; i--) {
trace(i);
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 97
Elementi del linguaggio ActionScript
Operatore / (divisione)
expression1 / expression2
Divide expression1 per expression2. Il risultato della divisione corrisponde a un numero a virgola mobile e doppia
precisione.
Disponibilità
Flash Lite 1.0
Operandi
espressione : Number - Un numero o una variabile che restituisce un numero.
Restituisce
Number - Il risultato a virgola mobile dell'operazione.
Esempio
L'istruzione seguente divide la larghezza e l'altezza correnti dello stage, quindi visualizza il risultato nel pannello
Output.
trace(Stage.width/2);
trace(Stage.height/2);
Per una larghezza e un'altezza predefinite dello stage di 550 x 400, l'output è 275 e 150.
Vedere anche
Operatore % (modulo)
Operatore /= (assegnazione divisione)
expression1 /= expression2
Assegna a expression1 il valore di expression1 / expression2. Ad esempio, le due istruzioni seguenti sono equivalenti:
x /= y; and x = x / y;
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o una variabile che restituisce un numero.
expression2 : Number - Un numero o una variabile che restituisce un numero.
Restituisce
Number - Un numero.
Esempio
Il codice seguente illustra l'uso dell'operatore assegnazione divisione (/=) con variabili e numeri:
var x:Number = 10;
var y:Number = 2;
x /= y; trace(x); // output: 5
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 98
Elementi del linguaggio ActionScript
Vedere anche
Operatore / (divisione)
Operatore punto .
object.property_or_method
instancename.variable
instancename.childinstance
instancename.childinstance.variable
Utilizzato per spostarsi nelle gerarchie dei clip filmato e accedere ai clip filmato nidificati (secondari), alle variabili e
alle proprietà. L'operatore punto è anche utilizzato per provare o impostare le proprietà di un oggetto o classe di livello
principale, eseguire un metodo di un oggetto o classe di livello principale, o creare una struttura di dati.
Disponibilità
Flash Lite 1.0
Operandi
object : Object - Un'istanza di una classe. L'oggetto può essere un'istanza di una qualsiasi delle classi incorporate
in ActionScript o di una classe personalizzata. Questo parametro si trova sempre a sinistra dell'operatore punto (.).
property_or_method - Il nome di una proprietà o di un metodo associati ad un oggetto. Tutti i metodi e le proprietà
validi per le classi incorporate sono elencati nelle tabelle di riepilogo di proprietà e metodi della relativa classe. Questo
parametro si trova sempre a destra dell'operatore punto (.).
instancename : MovieClip - Il nome dell'istanza di un clip filmato.
variable — Il nome dell'istanza a sinistra dell'operatore punto (.) può anche rappresentare una variabile nella linea
temporale del clip filmato.
childinstance : MovieClip - Un'istanza di clip filmato secondario, o nidificato, rispetto a un altro clip filmato.
Restituisce
Object - Il metodo, la proprietà o il clip filmato menzionati a destra del punto.
Esempio
L'esempio seguente identifica il valore corrente della variabile hairColor nel clip filmato person_mc:
person_mc.hairColor
L'ambiente di creazione Flash 4 non supportava la sintassi del punto, tuttavia i file di Flash MX 2004 pubblicati per
Flash Player 4 possono utilizzare l'operatore punto. L'esempio precedente è equivalente alla sintassi di Flash 4
(obsoleta) seguente:
/person_mc:hairColor
L'esempio seguente crea un nuovo clip filmato all'interno dell'area di validità di _root. All'interno del clip filmato
viene successivamente creato un campo di testo di nome container_mc. La proprietà autoSize del campo di testo
viene impostata su true e successivamente viene inserita la data corrente.
this.createEmptyMovieClip("container_mc", this.getNextHighestDepth());
this.container_mc.createTextField("date_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
this.container_mc.date_txt.autoSize = true;
this.container_mc.date_txt.text = new Date();
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 99
Elementi del linguaggio ActionScript
L'operatore punto (.) viene utilizzato quando si specificano le istanze all'interno del file SWF e quando è necessario
impostare le proprietà e i valori per tali istanze.
Operatore == (uguaglianza)
expression1 == expression2
Confronta due espressioni per verificarne l'uguaglianza. Il risultato è true se le espressioni sono uguali.
La definizione di uguale dipende dal tipo di dati del parametro:
• I numeri e i valori booleani vengono confrontati in base al valore e sono considerati uguali se hanno lo stesso valore.
• Le espressioni stringa sono uguali se hanno lo stesso numero di caratteri e questi sono identici.
• Le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni
di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non
vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
Nel confronto in base al valore, se expression1 e expression2 sono tipi di dati diversi, ActionScript cerca di convertire
il tipo di dati di expression2 in modo che corrisponda al tipo di dati di expression1.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
expression2 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
L'esempio seguente utilizza l'operatore uguaglianza (==) con un'istruzione if:
var a:String = "David", b:String = "David";
if (a == b) {
trace("David is David");
}
Gli esempi seguenti mostrano i risultati delle operazioni che confrontano tipi misti:
var x:Number = 5;
var y:String = "5";
trace(x == y); // output: true
var x:String = "5";
var y:String = "66";
trace(x == y); // output: false
var x:String = "chris";
var y:String = "steve";
trace(x == y); // output: false
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 100
Elementi del linguaggio ActionScript
Gli esempi seguenti mostrano il confronto in base al riferimento. Il primo confronta due array con lunghezza ed
elementi identici. L'operatore uguaglianza restituisce false per i due array. Benché gli array appaiano uguali, il
confronto in base al riferimento richiede che entrambi facciano riferimento allo stesso array. Il secondo esempio crea
la variabile thirdArray, che punta allo stesso array della variabile firstArray. L'operatore uguaglianza restituisce true
per questi due array, poiché le due variabili fanno riferimento allo stesso array.
var firstArray:Array = new Array("one", "two", "three");
var secondArray:Array = new Array("one", "two", "three");
trace(firstArray == secondArray);
// will output false
// Arrays are only considered equal
// if the variables refer to the same array.
var thirdArray:Array = firstArray;
trace(firstArray == thirdArray); // will output true
Vedere anche
Operatore ! NOT logico, Operatore != (diseguaglianza), Operatore !== (diseguaglianza rigorosa),
Operatore && (AND logico)Operatore || (OR logico), Operatore === (uguaglianza rigorosa)
Operatore eq (uguaglianza stringhe)
expression1 eq expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore ==
(uguaglianza).
Esegue un confronto tra due espressioni per verificarne l'uguaglianza e restituisce true se la rappresentazione sotto
forma di stringa di expression1 è uguale alla rappresentazione sotto forma di stringa di expression2; in caso contrario,
restituisce false.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Restituisce
Boolean - Il risultato del confronto.
Vedere anche
Operatore == (uguaglianza)
Operatore > (maggiore di)
expression1 > expression2
Esegue un confronto tra due espressioni e determina se expression1 è maggiore di expression2; in caso affermativo,
l'operatore restituisce true. Se expression1 è minore di o uguale aexpression2, l'operatore restituisce false. Le
espressioni stringa vengono valutate in base all'ordine alfabetico; tutte le lettere maiuscole vengono prima delle
minuscole.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 101
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Un numero o una stringa.
expression2 : Object - Un numero o una stringa.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
Nell'esempio seguente, l'operatore maggiore di (>) viene utilizzato per determinare se il valore del campo di testo
score_txt è maggiore di 90:
if (score_txt.text>90) {
trace("Congratulations, you win!");
} else {
trace("sorry, try again");
}
Operatore gt (maggiore di) (stringhe)
expression1 gt expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore > (maggiore di).
Esegue un confronto tra la rappresentazione sotto forma di stringa di expression1 e la rappresentazione sotto forma di
stringa di expression2 e restituisce true se expression1 è maggiore di expression2; in caso contrario, restituisce false.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Restituisce
Boolean - Il risultato booleano del confronto.
Vedere anche
Operatore > (maggiore di)
Operatore >= (maggiore o uguale a)
expression1 >= expression2
Esegue un confronto tra due espressioni e determina se expression1 è maggiore di o uguale a expression2 (true) o se
expression1 è minore di expression2 (false)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 102
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Una stringa, un numero intero o un numero a virgola mobile.
expression2 : Object - Una stringa, un numero intero o un numero a virgola mobile.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
Nell'esempio seguente, l'operatore maggiore o uguale a (>=) viene utilizzato per determinare se l'ora corrente è
maggiore o uguale a 12:
if (new Date().getHours() >= 12) {
trace("good afternoon");
} else {
trace("good morning");
}
Operatore ge (maggiore o uguale a) (stringhe)
expression1 ge expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore >= (maggiore di
o uguale a).
Esegue un confronto tra la rappresentazione sotto forma di stringa di expression1 e la rappresentazione sotto forma di
stringa di expression2 e restituisce true se expression1 è maggiore di o uguale a expression2; in caso contrario,
restituisce false.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Restituisce
Boolean - Il risultato del confronto.
Vedere anche
Operatore >= (maggiore o uguale a)
Operatore ++ (incremento)
++expression
expression++
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 103
Elementi del linguaggio ActionScript
Operatore unario di pre-incremento e post-incremento che aggiunge 1 a expression. Il valore di expression può essere
una variabile, un elemento di un array o la proprietà di un oggetto. Il formato pre-incremento dell'operatore
(++expression) aggiunge 1 a expression e restituisce il risultato. Il formato di incremento dopo l'operazione
(expression++) aggiunge 1 a expression e restituisce il valore iniziale di expression (il valore prima dell'addizione).
Il formato pre-incremento dell'operatore incrementa x a 2 (x + 1 = 2) e restituisce il risultato come y:
var x:Number =
var y:Number =
trace("x:"+x);
trace("y:"+y);
1;
++x;
//traces x:2
//traces y:2
Il formato post-incremento dell'operatore incrementa x a 2 (x + 1 = 2) e restituisce il valore originale di x come
risultato y:
var x:Number =
var y:Number =
trace("x:"+x);
trace("y:"+y);
1;
x++;
//traces x:2
//traces y:1
Disponibilità
Flash Lite 1.0
Operandi
espressione : Number - Un numero o una variabile che restituisce un numero.
Restituisce
Number - Il risultato dell'incremento.
Esempio
L'esempio seguente utilizza ++ come operatore di incremento dopo l'operazione per far eseguire cinque volte un ciclo
while:
var i:Number = 0;
while (i++ < 5) {
trace("this is execution " + i);
}
/* output:
this is execution 1
this is execution 2
this is execution 3
this is execution 4
this is execution 5
*/
L'esempio seguente utilizza ++ come operatore di pre-incremento:
var a:Array = new Array();
var i:Number = 0;
while (i < 10) {
a.push(++i);
}
trace(a.toString()); //traces: 1,2,3,4,5,6,7,8,9,10
Anche l'esempio utilizza ++ come operatore di pre-incremento:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 104
Elementi del linguaggio ActionScript
var a:Array = [];
for (var i = 1; i <= 10; ++i) {
a.push(i);
}
trace(a.toString()); //traces: 1,2,3,4,5,6,7,8,9,10
Questo script mostra il risultato seguente nel pannello Output 1,2,3,4,5,6,7,8,9,10
L'esempio seguente utilizza ++ come operatore di post-incremento in un ciclo while:
// using a while loop
var a:Array = new Array();
var i:Number = 0;
while (i < 10) {
a.push(i++);
}
trace(a.toString()); //traces 0,1,2,3,4,5,6,7,8,9
L'esempio seguente utilizza ++ come operatore di post-incremento in un ciclo for:
// using a for loop
var a:Array = new Array();
for (var i = 0; i < 10; i++) {
a.push(i);
}
trace(a.toString()); //traces 0,1,2,3,4,5,6,7,8,9
Questo script mostra il risultato seguente nel pannello Output:
0,1,2,3,4,5,6,7,8,9
Operatore != (diseguaglianza)
expression1 != expression2
Prova l'esatto opposto dell'operatore di uguaglianza (==). Se expression1 è uguale a expression2, il risultato è false.
Come nel caso dell'operatore di uguaglianza (==), la definizione di uguale dipende dai tipi di dati confrontati, come
nell'elenco seguente:
• Numeri, stringhe e valori booleani vengono confrontati in base al valore.
• Oggetti, array e funzioni vengono confrontati in base ai riferimenti.
• Una variabile viene confrontata in base al valore o al riferimento, a seconda del suo tipo.
Un confronto in base al valore significa quello che più comunemente si intende per "uguaglianza", vale a dire, che due
espressioni hanno lo stesso valore. Ad esempio, l'espressione (2 + 3) equivale all'espressione (1 + 4) se le due espressioni
vengono confrontate in base al valore.
Il confronto in base al riferimento significa invece che due espressioni sono equivalenti solo se entrambe si riferiscono
allo stesso oggetto, array o funzione. I valori all'interno dell'oggetto, dell'array o della funzione non vengono
confrontati.
Nel confronto in base al valore, se expression1 e expression2 sono tipi di dati diversi, ActionScript cerca di convertire
il tipo di dati di expression2 in modo che corrisponda al tipo di dati di expression1.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 105
Elementi del linguaggio ActionScript
Operandi
expression1 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
expression2 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
L'esempio seguente mostra il risultato dell'operatore diseguaglianza (!=):
trace(5 != 8); // returns true
trace(5 != 5); //returns false
L'esempio seguente mostra l'utilizzo dell'operatore di diseguaglianza (!=) in un'istruzione if:
var a:String = "David";
var b:String = "Fool";
if (a != b) {
trace("David is not a fool");
}
L'esempio seguente mostra il confronto in base al riferimento di due funzioni:
var a:Function = function() { trace("foo"); };
var b:Function = function() { trace("foo"); };
a(); // foo
b(); // foo
trace(a != b); // true
a = b;
a(); // foo
b(); // foo
trace(a != b); // false
// trace statement output: foo foo true foo foo false
L'esempio seguente mostra il confronto in base al riferimento di due array:
var a:Array = [ 1, 2, 3 ];
var b:Array = [ 1, 2, 3 ];
trace(a); // 1, 2, 3
trace(b); // 1, 2, 3
trace(a!=b); // true
a = b;
trace(a); // 1, 2, 3
trace(b); // 1, 2, 3
trace(a != b); // false
// trace statement output: 1,2,3 1,2,3 true 1,2,3 1,2,3 false
Vedere anche
Operatore ! NOT logico, Operatore !== (diseguaglianza rigorosa), Operatore && (AND logico),
Operatore || (OR logico), Operatore == (uguaglianza), Operatore === (uguaglianza rigorosa)
Operatore <> (diseguaglianza)
expression1 <> expression2
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 106
Elementi del linguaggio ActionScript
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato. Adobe consiglia di utilizzare l'operatore
!= (diseguaglianza).
Prova l'esatto opposto dell'operatore di uguaglianza (==). Se expression1 è uguale a expression2, il risultato è false.
Come nel caso dell'operatore di uguaglianza (==), la definizione di uguale dipende dai tipi di dati confrontati:
• Numeri, stringhe e valori booleani vengono confrontati in base al valore.
• Oggetti, array e funzioni vengono confrontati in base ai riferimenti.
• Le variabili vengono confrontate in base al valore o al riferimento, a seconda del tipo.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
expression2 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
Restituisce
Boolean - Il risultato booleano del confronto.
Vedere anche
Operatore != (diseguaglianza)
Operatore instanceof
object instanceof classConstructor
Prova se object è un'istanza di classConstructor o una sottoclasse di classConstructor. L'operatore
instanceof non converte i tipi di base in oggetti wrapper. Ad esempio, il codice seguente restituisce true:
new String("Hello") instanceof String;
Mentre il codice seguente restituisce false:
"Hello" instanceof String;
Disponibilità
Flash Lite 2.0
Operandi
object : Object - Un oggetto ActionScript.
classConstructor : Function - Un riferimento a una funzione di costruzione ActionScript, come String o Date.
Restituisce
Boolean - Se object è un'istanza di una sottoclasse di classConstructor, instanceof restituisce true; in caso
contrario restituisce false. Anche _global instanceof Object restituisce false.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 107
Elementi del linguaggio ActionScript
Vedere anche
Operatore typeof
Operatore < (minore di)
expression1 < expression2
Esegue un confronto tra due espressioni e determina se expression1 è minore di expression2; in caso affermativo,
l'operatore restituisce true. Se expression1 è minore o uguale a expression2, l'operatore restituisce false. Le
espressioni stringa vengono valutate in base all'ordine alfabetico; tutte le lettere maiuscole vengono prima delle
minuscole.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o una stringa.
expression2 : Number - Un numero o una stringa.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
Gli esempi seguenti mostrano i risultati true e false sia per i confronti numerici che per quelli di stringa:
trace(3 < 10); // true
trace(10 < 3); // false
trace("Allen" < "Jack"); // true
trace("Jack" < "Allen"); //false
trace("11" < "3"); // true
trace("11" < 3); // false (numeric comparison)
trace("C" < "abc"); // true
trace("A" < "a"); // true
Operatore lt (minore di) (stringhe)
expression1 lt expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore < (minore di).
Esegue il confronto tra expression1 e expression2 e restituisce true se expression1 è minore di expression2; in caso
contrario, restituisce false.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 108
Elementi del linguaggio ActionScript
Restituisce
Boolean - Il risultato del confronto.
Vedere anche
Operatore < (minore di)
Operatore <= (minore o uguale a)
expression1 <= expression2
Esegue un confronto tra due espressioni e determina se expression1 è minore di o uguale a expression2; in caso
affermativo, l'operatore restituisce true. Se expression1 è maggiore di expression2, l'operatore restituisce false. Le
espressioni stringa vengono valutate in base all'ordine alfabetico; tutte le lettere maiuscole vengono prima delle
minuscole.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Un numero o una stringa.
expression2 : Object - Un numero o una stringa.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
Gli esempi seguenti mostrano i risultati true e false sia per i confronti numerici che per quelli di stringa:
trace(5 <= 10); // true
trace(2 <= 2); // true
trace(10 <= 3); // false
trace("Allen" <= "Jack"); // true
trace("Jack" <= "Allen"); // false
trace("11" <= "3"); // true
trace("11" <= 3); // false (numeric comparison)
trace("C" <= "abc"); // true
trace("A" <= a); // true
Operatore le (minore o uguale a) (stringhe)
expression1 le expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato in Flash 5 a favore dell'operatore <=
(minore di o uguale a).
Esegue il confronto tra expression1 e expression2 e restituisce true se expression1 è minore o uguale a expression2; in
caso contrario, restituisce false.
Disponibilità
Flash Lite 1.0
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 109
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Restituisce
Boolean - Il risultato del confronto.
Vedere anche
Operatore <= (minore o uguale a)
Operatore // (delimitatore commenti)
// comment
Indica l'inizio di un commento di script. Tutti i caratteri racchiusi tra il delimitatore (//) e il carattere di fine riga
vengono considerati commenti e ignorati dall'interprete di ActionScript.
Disponibilità
Flash Lite 1.0
Operandi
comment - Qualsiasi carattere.
Esempio
Lo script seguente utilizza i delimitatori commenti per identificare la prima, terza, quinta e settima riga come
commenti:
// record the X position of the
var ballX:Number = ball_mc._x;
// record the Y position of the
var ballY:Number = ball_mc._y;
// record the X position of the
var batX:Number = bat_mc._x;
// record the Y position of the
var batY:Number = bat_mc._y;
ball movie clip
ball movie clip
bat movie clip
ball movie clip
Vedere anche
Operatore /* (delimitatore commenti)
Operatore && (AND logico)
expression1 && expression2
Esegue un'operazione booleana sui valori di una delle due espressioni o di entrambe. Valuta expression1 (l'espressione
a sinistra dell'operatore) e restituisce false se l'espressione equivale a false. Se expression1 restituisce true, viene
valutata expression2 (l'espressione a destra dell'operatore). Se expression2 restituisce true, il risultato finale è true; in
caso contrario, è false. L'espressione viene valutata come segue: true&&true a true, true&&false a false,
false&&false a false e false&&true a false.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 110
Elementi del linguaggio ActionScript
Operandi
expression1 : Number - Un valore booleano o un'espressione convertibile in un valore booleano.
expression2 : Number - Un valore booleano o un'espressione convertibile in un valore booleano.
Restituisce
Boolean - Un risultato booleano dell'operazione logica.
Esempio
L'esempio seguente utilizza l'operatore AND logico (&&) per eseguire una prova che determini se un giocatore ha vinto
il gioco. La variabile turns e la variabile score vengono aggiornate quando un giocatore comincia il proprio turno o
realizza dei punti durante il gioco. Lo script mostra la scritta "You Win the Game!" nel pannello Output quando il
punteggio del giocatore raggiunge 75 o più punti in 3 o meno turni.
var turns:Number = 2;
var score:Number = 77;
if ((turns <= 3) && (score >= 75)) {
trace("You Win the Game!");
} else {
trace("Try Again!");
}
// output: You Win the Game!
Vedere anche
Operatore ! NOT logico, Operatore != (diseguaglianza), Operatore !== (diseguaglianza rigorosa),
Operatore || (OR logico)Operatore == (uguaglianza), Operatore === (uguaglianza rigorosa)
Operatore and (AND logico)
condition1 and condition2
Sconsigliata a partire da Flash Player 5. Adobe consiglia di utilizzare l'operatore logico AND (&&).
Esegue un'operazione AND logico (&&) in Flash Player 4. Se entrambe le espressioni restituiscono true, l'intera
espressione è true.
Disponibilità
Flash Lite 1.0
Operandi
condition1 : Boolean - Condizione o espressione che restituisce true o false.
condition2 : Boolean - Condizione o espressione che restituisce true o false.
Restituisce
Boolean - Un risultato booleano dell'operazione logica.
Vedere anche
Operatore && (AND logico)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 111
Elementi del linguaggio ActionScript
Operatore ! NOT logico
! expression
Inverte il valore booleano di una variabile o espressione. Se expression è una variabile con un valore convertito o
assoluto true, il valore di !expression è false. Se l'espressione x && y restituisce false, l'espressione !(x && y)
restituisce true. Pertanto, !true restituisce false e !false restituisce true.
Disponibilità
Flash Lite 1.0
Operandi
espressione : Boolean - Un'espressione o una variabile che restituisce un valore booleano.
Restituisce
Boolean - Il risultato booleano dell'operazione logica.
Esempio
Nell'esempio seguente, la variabile happy è impostata su false. La condizione if restituisce la condizione !happy, e
se la condizione è true, l'istruzione trace() invia una stringa al pannello Output.
var happy:Boolean = false;
if (!happy) {
trace("don't worry, be happy"); //traces don't worry, be happy
}
L'istruzione determina un'istruzione trace poiché !false è uguale a true.
Vedere anche
Operatore != (diseguaglianza), Operatore !== (diseguaglianza rigorosa), Operatore && (AND
logico), Operatore || (OR logico)Operatore == (uguaglianza), Operatore === (uguaglianza
rigorosa)
Operatore not (NOT logico)
not expression
Sconsigliato a partire da Flash Player 5: questo operatore è stato sconsigliato a favore dell'operatore ! (NOT logico).
Esegue un'operazione NOT logica (!) in Flash Player 4.
Disponibilità
Flash Lite 1.0
Operandi
espressione : Object - Una variabile o altra espressione convertibile in un valore booleano.
Restituisce
Boolean - Il risultato dell'operazione logica.
Vedere anche
Operatore ! NOT logico
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 112
Elementi del linguaggio ActionScript
Operatore || (OR logico)
expression1 || expression2
Valuta expression1 (l'espressione a sinistra dell'operatore) e restituisce true se l'espressione equivale a true. Se
expression1 restituisce false, viene valutata expression2 (l'espressione a destra dell'operatore). Se expression2
restituisce false, il risultato finale è false; in caso contrario, è true.
Se si utilizza una chiamata ad una funzione come expression2, la funzione non viene eseguita dalla chiamata se
expression1 restituisce true.
Il risultato è true se almeno una delle espressioni restituisce true; il risultato è false solo se entrambe le espressioni
restituiscono false. È possibile utilizzare l'operatore logico OR con un numero qualsiasi di operandi; se uno degli
operandi restituisce true, il risultato è true.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un valore booleano o un'espressione convertibile in un valore booleano.
expression2 : Number - Un valore booleano o un'espressione convertibile in un valore booleano.
Restituisce
Boolean - Il risultato dell'operazione logica.
Esempio
L'esempio seguente utilizza l'operatore OR logico (||) in un'istruzione if. La seconda espressione restituisce true,
quindi il risultato finale è true:
var x:Number = 10;
var y:Number = 250;
var start:Boolean = false;
if ((x > 25) || (y > 200) || (start)) {
trace("the logical OR test passed"); // output: the logical OR test passed
}
Il messaggio "the logical OR test passed" viene visualizzato poiché una delle condizioni dell'istruzione if è true
(y>200). Benché le altre due espressioni restituiscano false, il blocco if viene eseguito perché una condizione
restituisce true.
L'esempio seguente dimostra come l'uso di una chiamata di funzione come expression2 può portare a risultati
imprevisti. Se l'espressione a sinistra dell'operatore restituisce true, tale risultato viene restituito senza che venga
valutata l'espressione a destra (la funzione fx2() non viene chiamata).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 113
Elementi del linguaggio ActionScript
function fx1():Boolean {
trace("fx1 called");
return true;
}
function fx2():Boolean {
trace("fx2 called");
return true;
}
if (fx1() || fx2()) {
trace("IF statement entered");
}
/* The following is sent to the Output panel: /* The following is sent to the log file: fx1
called IF statement entered */
Vedere anche
Operatore ! NOT logico, Operatore != (diseguaglianza), Operatore !== (diseguaglianza rigorosa),
Operatore && (AND logico),Operatore == (uguaglianza), Operatore === (uguaglianza rigorosa)
Operatore or (OR logico)
condition1 or condition2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore || (OR logico).
Valuta condition1 e condition2 e, se una delle espressioni è true, l'intera espressione è true.
Disponibilità
Flash Lite 1.0
Operandi
condition1 : Boolean - Espressione che restituisce true o false.
condition1 : Boolean - Espressione che restituisce true o false.
Restituisce
Boolean - Il risultato dell'operazione logica.
Vedere anche
Operatore || (OR logico), Operatore | (OR bit a bit)
Operatore % (modulo)
expression1 % expression2
Calcola il resto di expression1 diviso per expression2. Se nessuno dei parametri expression è numerico, l'operatore
modulo (%) cerca di convertirli in numeri. expression può essere un numero o una stringa convertibile in un valore
numerico.
Il segno del risultato dell'operazione modulo corrisponde al segno del dividendo (ovvero il primo numero). Ad
esempio, sia -4 % 3 che -4 % -3 restituiscono -1.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 114
Elementi del linguaggio ActionScript
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Restituisce
Number - Il risultato dell'operazione aritmetica.
Esempio
L'esempio numerico seguente utilizza l'operatore modulo (%):
trace(12%5); // traces 2
trace(4.3%2.1); // traces 0.0999999999999996
trace(4%4); // traces 0
La prima istruzione trace restituisce 2 anziché 12/5 o 2,4, poiché l'operatore modulo (%) restituisce solo il resto. La
seconda istruzione trace restituisce 0.0999999999999996 anziché il valore 0.1 previsto a causa delle limitazioni della
precisione della virgola mobile nell'elaborazione binaria.
Vedere anche
Operatore / (divisione), round (metodo Math.round)
Operatore %= (assegnazione modulo)
expression1 %= expression2
Assegna a expression1 il valore di expression1 % expression2. Le due istruzioni seguenti sono equivalenti:
x %= y; and x = x % y;
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Restituisce
Number - Il risultato dell'operazione aritmetica.
Esempio
l'esempio seguente assegna il valore 4 alla variabile x:
var x:Number = 14;
var y:Number = 5;
trace(x %= y); // output: 4
Vedere anche
Operatore % (modulo)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 115
Elementi del linguaggio ActionScript
Operatore * (moltiplicazione)
expression1 * expression2
Moltiplica due espressioni numeriche. Se entrambe le espressioni sono numeri interi, il prodotto è un numero intero.
Se almeno una delle due espressioni è un numero a virgola mobile, il prodotto è un numero a virgola mobile.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Restituisce
Number - Un numero intero o un numero a virgola mobile.
Esempio
Uso 1: l'istruzione seguente moltiplica gli interi 2 e 3:
trace(2*3); // output: 6
Il risultato è un numero intero: 6. Uso 2: questa istruzione moltiplica i numeri a virgola mobile 2.0 e 3.1416:
trace(2.0 * 3.1416); // output: 6.2832
Il risultato è un numero a virgola mobile: 6,2832.
Operatore *= (assegnazione moltiplicazione)
expression1 *= expression2
Assegna a expression1 il valore di expression1 * expression2. Ad esempio, le due espressioni seguenti sono equivalenti:
x *= y x = x * y
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Restituisce
Number - Il valore di expression1 * expression2. Se non è possibile convertire un'espressione in un valore numerico,
viene restituito NaN (not a number).
Esempio
Uso 1: l'esempio seguente assegna il valore 50 alla variabile x:
var x:Number = 5;
var y:Number = 10;
trace(x *= y); // output: 50
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 116
Elementi del linguaggio ActionScript
Uso 2: la seconda e terza riga dell'esempio seguente calcolano le espressioni a destra del segno di uguale e assegnano i
risultati a x e y:
var i:Number =
var x:Number =
var y:Number =
trace(x *= y);
5;
4 - 6;
i + 2;
// output: -14
Vedere anche
Operatore * (moltiplicazione)
Operatore new
new constructor()
Crea un nuovo oggetto, inizialmente anonimo, e chiama la funzione identificata dal parametro constructor.
L'operatore new passa alla funzione tutti gli eventuali parametri opzionali tra parentesi, oltre all'oggetto appena creato,
a cui viene fatto riferimento mediante la parola chiave this. La funzione constructor può quindi utilizzare this per
impostare le variabili dell'oggetto.
Disponibilità
Flash Lite 2.0
Operandi
constructor : Object - Una funzione seguita dagli eventuali parametri opzionali tra parentesi. Di solito, la funzione
è il nome del tipo di oggetto (ad esempio, Array, Number o Object) da creare.
Esempio
L'esempio seguente crea la funzione Book(), quindi utilizza l'operatore new per creare gli oggetti book1 e book2.
function Book(name, price){
this.name = name;
this.price = price;
}
book1 = new Book("Confederacy of Dunces", 19.95);
book2 = new Book("The Floating Opera", 10.95);
L'esempio seguente utilizza l'operatore new per creare un oggetto Array con 18 elementi:
golfCourse_array = new Array(18);
Vedere anche
Operatore [] (accesso array), Operatore {} (inizializzatore di oggetto)
Operatore ne (non uguale) (stringhe)
expression1 ne expression2
Sconsigliata a partire da Flash Player 5. Questo operatore è stato sconsigliato a favore dell'operatore !=
(diseguaglianza).
Esegue il confronto tra expression1 e expression2 e restituisce true se expression1 non è uguale a expression2; in caso
contrario, restituisce false.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 117
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe o variabili.
expression2 : Object - Numeri, stringhe o variabili.
Restituisce
Boolean - Restituisce true se expression1 non è uguale a expression2; in caso contrario, restituiscefalse.
Vedere anche
Operatore != (diseguaglianza)
Operatore {} (inizializzatore di oggetto)
object = { name1 : value1 , name2 : value2 ,... nameN : valueN }
{expression1; [...expressionN]}
Crea un nuovo oggetto e lo inizializza con le coppie di proprietà name e value specificate. L'uso di questo operatore
equivale a utilizzare la sintassi new Object e indicare le coppie di proprietà mediante l'operatore di assegnazione. Il
prototipo dell'oggetto appena creato viene solitamente chiamato oggetto Object.
Questo operatore viene anche utilizzato per contrassegnare i blocchi di codice contigui associati alle istruzioni (for,
while, if, else, switch) e funzioni.
Disponibilità
Flash Lite 2.0
Operandi
object : Object - L'oggetto da creare. name1,2,...N I nomi delle proprietà. value1,2,...N I valori corrispondenti per
ciascuna proprietà name.
Restituisce
Object -
Uso 1: un oggetto Object.
Uso 2: nessuno, ad eccezione di quando una funzione ha un'istruzione return esplicita, nel qual caso il tipo restituito
viene specificato nell'implementazione della funzione.
Esempio
La prima riga del codice seguente crea un oggetto vuoto mediante l'operatore inizializzatore di oggetto ({}); la seconda
riga crea un nuovo oggetto mediante una funzione di costruzione:
var object:Object = {};
var object:Object = new Object();
L'esempio seguente crea un oggetto account e inizializza le proprietà name, address, city, state, zip e balance con
i relativi valori:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 118
Elementi del linguaggio ActionScript
var account:Object = {name:"Macromedia, Inc.", address:"600 Townsend Street", city:"San
Francisco", state:"California", zip:"94103", balance:"1000"};
for (i in account) {
trace("account." + i + " = " + account[i]);
}
L'esempio seguente mostra il modo in cui gli inizializzatori di array e di oggetto possono essere nidificati l'uno dentro
l'altro:
var person:Object = {name:"Gina Vechio", children:["Ruby", "Chickie", "Puppa"]};
L'esempio seguente utilizza le informazioni dell'esempio precedente e produce lo stesso risultato mediante le funzioni
di costruzione:
var person:Object = new Object();
person.name = "Gina Vechio";
person.children = new Array();
person.children[0] = "Ruby";
person.children[1] = "Chickie";
person.children[2] = "Puppa";
L'esempio di ActionScript precedente può essere scritto anche nel formato seguente:
var person:Object = new Object();
person.name = "Gina Vechio";
person.children = new Array("Ruby", "Chickie", "Puppa");
Vedere anche
Object
Operatore () (parentesi)
(expression1 [, expression2])
( expression1, expression2 )
function ( parameter1,..., parameterN )
Esegue un'operazione di raggruppamento su uno o più parametri, esegue una valutazione sequenziale delle
espressioni, oppure racchiude uno o più parametri e li trasmette come tali a una funzione fuori delle parentesi.
Uso 1: controlla l'ordine di esecuzione degli operatori nell'espressione. Le parentesi hanno la priorità sul normale
ordine di precedenza e le espressioni racchiuse tra parentesi vengono valutate per prime. Quando le parentesi sono
nidificate, il contenuto delle parentesi interne viene valutato prima del contenuto di quelle esterne.
Uso 2: valuta in sequenza una serie di espressioni separate da virgola, e restituisce il risultato dell'espressione finale.
Uso 3: racchiude uno o più parametri e li trasmette sotto forma di parametri alla funzione che si trova fuori dalle
parentesi.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Object - Numeri, stringhe, variabili o testo.
expression2 : Object - Numeri, stringhe, variabili o testo.
function : Function - La funzione da eseguire sul contenuto delle parentesi.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 119
Elementi del linguaggio ActionScript
parameter1...parameterN : Object - Una serie di parametri da eseguire prima che i risultati vengano trasmessi
come parametri alla funzione che si trova fuori dalle parentesi.
Esempio
Uso 1: le istruzioni seguenti mostrano l'uso delle parentesi per controllare l'ordine con cui vengono eseguite le
espressioni (il valore di ciascuna espressione viene visualizzato nel pannello Output):
trace((2 + 3)*(4 + 5)); // displays 45
trace((2 + 3) * (4 + 5)); // writes 45
trace(2 + (3 * (4 + 5))); // displays 29
trace(2 + (3 * (4 + 5))); // writes 29
trace(2+(3*4)+5); // displays 19
trace(2 + (3 * 4) + 5); // writes19
Uso 2: l'esempio seguente valuta la funzione foo(), quindi restituisce la funzione bar() e restituisce il risultato
dell'espressione a + b:
var a:Number = 1;
var b:Number = 2;
function foo() { a += b; }
function bar() { b *= 10; }
trace((foo(), bar(), a + b)); // outputs 23
Uso 3: l'esempio seguente mostra l'uso delle parentesi con le funzioni:
var today:Date = new Date();
trace(today.getFullYear()); // traces current year
function traceParameter(param):Void { trace(param); }
traceParameter(2 * 2); //traces 4
Vedere anche
Istruzione with
Operatore === (uguaglianza rigorosa)
expression1 === expression2
Confronta due espressioni per verificarne l'uguaglianza. L'operatore di uguaglianza rigorosa (===) si comporta come
l'operatore di uguaglianza (==), ma non converte i tipi di dati. Il risultato è true se le due espressioni sono uguali,
inclusi i tipi di dati.
La definizione di uguale dipende dal tipo di dati del parametro:
• I numeri e i valori booleani vengono confrontati in base al valore e sono considerati uguali se hanno lo stesso valore.
• Le espressioni stringa sono uguali se hanno lo stesso numero di caratteri e questi sono identici.
• Le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni
di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non
vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 120
Elementi del linguaggio ActionScript
Operandi
expression1 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
expression2 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
I commenti nel codice seguente mostrano il valore restituito dalle operazioni che utilizzano gli operatori uguaglianza
e uguaglianza rigorosa:
// Both return true because no conversion is done
var string1:String = "5";
var string2:String = "5";
trace(string1 == string2); // true
trace(string1 === string2); // true
// Automatic data typing in this example converts 5 to "5"
var string1:String = "5";
var num:Number = 5;
trace(string1 == num); // true
trace(string1 === num); // false
// Automatic data typing in this example converts true to "1"
var string1:String = "1";
var bool1:Boolean = true;
trace(string1 == bool1); // true
trace(string1 === bool1); // false
// Automatic data typing in this example converts false to "0"
var string1:String = "0";
var bool2:Boolean = false;
trace(string1 == bool2); // true
trace(string1 === bool2); // false
Gli esempi seguenti mostrano come l'uguaglianza rigorosa tratta in modo diverso le variabili che sono dei riferimenti
rispetto a quelle che contengono valori letterali. Per tale motivo è opportuno utilizzare in modo coerente i valori
letterali di stringa dell'operatore new con la classe String.
// Create a string variable using a literal value
var str:String = "asdf";
// Create a variable that is a reference
var stringRef:String = new String("asdf");
// The equality operator does not distinguish among literals, variables,
// and references
trace(stringRef == "asdf"); // true
trace(stringRef == str); // true
trace("asdf" == str); // true
// The strict equality operator considers variables that are references
// distinct from literals and variables
trace(stringRef === "asdf"); // false
trace(stringRef === str); // false
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 121
Elementi del linguaggio ActionScript
Vedere anche
Operatore ! NOT logico, Operatore != (diseguaglianza), Operatore !== (diseguaglianza rigorosa),
Operatore && (AND logico)Operatore || (OR logico), Operatore == (uguaglianza)
Operatore !== (diseguaglianza rigorosa)
expression1 !== expression2
Prova l'esatto opposto dell'operatore di uguaglianza rigorosa (===). L'operatore di diseguaglianza rigorosa si comporta
come l'operatore di diseguaglianza ma non converte i tipi di dati.
Se expression1 è uguale a expression2 e i loro tipi di dati sono uguali, il risultato è false. Come nel caso dell'operatore
di uguaglianza rigorosa (===), la definizione di uguale dipende dai tipi di dati confrontati, come nell'elenco seguente:
• Numeri, stringhe e valori booleani vengono confrontati in base al valore.
• Oggetti, array e funzioni vengono confrontati in base ai riferimenti.
• Una variabile viene confrontata in base al valore o al riferimento, a seconda del suo tipo.
Disponibilità
Flash Lite 2.0
Operandi
expression1 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
expression2 : Object - Un numero, una stringa, un valore booleano, una variabile, un oggetto, un array o una
funzione.
Restituisce
Boolean - Il risultato booleano del confronto.
Esempio
I commenti nel codice seguente mostrano il valore restituito dalle operazioni che utilizzano gli operatori uguaglianza
(==), uguaglianza rigorosa (===) e diseguaglianza rigorosa (!==):
var s1:String = "5";
var s2:String = "5";
var s3:String = "Hello";
var n:Number = 5;
var b:Boolean = true;
trace(s1 == s2); // true
trace(s1 == s3); // false
trace(s1 == n); // true
trace(s1 == b); // false
trace(s1 === s2); // true
trace(s1 === s3); // false
trace(s1 === n); // false
trace(s1 === b); // false
trace(s1 !== s2); // false
trace(s1 !== s3); // true
trace(s1 !== n); // true
trace(s1 !== b); // true
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 122
Elementi del linguaggio ActionScript
Vedere anche
Operatore ! NOT logico, Operatore != (diseguaglianza), Operatore && (AND logico), Operatore ||
(OR logico), Operatore == (uguaglianza), Operatore === (uguaglianza rigorosa)
Operatore " (delimitatore di stringa)
"text"
Se utilizzate prima e dopo i caratteri, le virgolette (") indicano che tali caratteri hanno un valore letterale e devono
essere considerati come una stringa, non una variabile, un valore numerico o un altro elemento di ActionScript.
Disponibilità
Flash Lite 1.0
Operandi
text : String - Una sequenza di zero o più caratteri.
Esempio
L'esempio seguente utilizza le virgolette (") per indicare che il valore della variabile yourGuess è il valore letterale di
stringa "Prince Edward Island" e non il nome di una variabile. Il valore di province è una variabile, non un valore
letterale; per determinare il valore di province, è necessario individuare il valore di yourGuess.
var yourGuess:String = "Prince Edward Island";
submit_btn.onRelease = function() { trace(yourGuess); };
// displays Prince Edward Island in the Output panel
// writes Prince Edward Island to the log file
Vedere anche
String, Funzione String
Operatore - (sottrazione)
(Negation) -expression
(Subtraction) expression1 - expression2
Utilizzato per negare o sottrarre.
Uso 1: quando viene utilizzato per la negazione, inverte il segno dell'espressione numerica.
Uso 2: quando viene utilizzato per la sottrazione, esegue una sottrazione aritmetica su due espressioni numeriche,
sottraendo expression2 da expression1. Se entrambe le espressioni sono numeri interi, la differenza è un numero intero.
Se almeno una delle due espressioni è un numero a virgola mobile, la differenza è un numero a virgola mobile.
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 123
Elementi del linguaggio ActionScript
Restituisce
Number - Un numero intero o un numero a virgola mobile.
Esempio
Uso 1: l'istruzione seguente inverte il segno dell'espressione 2 + 3:
trace(-(2+3)); // output: -5
Uso 2: l'istruzione seguente sottrae il numero intero 2 dal numero intero 5:
trace(5-2); // output: 3
Il risultato è un numero intero: 3.
l'istruzione seguente sottrae il numero a virgola mobile 1.5 dal numero a virgola mobile 3.25:
trace(3.25-1.5); // output: 1.75
Il risultato è un numero a virgola mobile: 1,75.
Operatore -= (assegnazione sottrazione)
expression1 -= expression2
Assegna a expression1 il valore di expression1 - expression2. Ad esempio, le due istruzioni seguenti sono equivalenti:
x -= y ; x = x - y;
Le espressioni stringa devono essere convertite in numeri; in caso contrario, viene restituito NaN (not a number).
Disponibilità
Flash Lite 1.0
Operandi
expression1 : Number - Un numero o un'espressione che restituisce un numero.
expression2 : Number - Un numero o un'espressione che restituisce un numero.
Restituisce
Number - Il risultato dell'operazione aritmetica.
Esempio
L'esempio seguente utilizza l'operatore assegnazione sottrazione (-=) per sottrarre 10 da 5 e assegnare il risultato alla
variabile x:
var x:Number = 5;
var y:Number = 10;
x -= y; trace(x); // output: -5
l'esempio seguente mostra il modo in cui le stringhe vengono convertite in numeri:
var x:String = "5";
var y:String = "10";
x -= y; trace(x); // output: -5
Vedere anche
Operatore - (sottrazione)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 124
Elementi del linguaggio ActionScript
Operatore : (tipo)
[ modifiers ] var variableName : type
function functionName () : type { ... }
function functionName ( parameter1:type , ... , parameterN:type ) [ :type ]{ ... }
Utilizzato per la tipizzazione forte dei dati; specifica i tipi di variabili, i tipi di funzioni restituite o i tipi di parametri
funzione. Se utilizzato in una dichiarazione o assegnazione di variabile, questo operatore specifica il tipo di variabile;
quando viene utilizzato in una dichiarazione o definizione della funzione, specifica il tipo restituito da una funzione;
se viene utilizzato con un parametro di funzione nella definizione di una funzione, specifica il tipo di variabile prevista
per quel parametro.
I tipi sono una funzione solo di compilazione. Vengono tutti verificati al momento della compilazione e, in caso di
mancata corrispondenza, vengono generati i relativi errori. Gli errori di corrispondenza possono verificarsi durante le
operazioni di assegnazione, le chiamate di funzione e l'annullamento dei membri di classe mediante l'operatore punto
(.). Per evitare errori di tipo non corrispondente, utilizzare la tipizzazione forte dei dati.
Possono essere utilizzati tutti i tipi di oggetti nativi, le classi e interfacce definite dall'utente, Function e Void. I tipi
nativi riconosciuti sono Boolean, Number e String. Anche tutte le classi incorporate sono supportate come tipi nativi.
Disponibilità
Flash Lite 2.0
Operandi
variableName : Object - Un identificativo per una variabile.
type : Un tipo di dati nativo, un nome di classe definito dall'utente o un nome di interfaccia.
functionName : Un identificativo per una funzione.
parameter : Un identificatore per un parametro di funzione.
Esempio
Uso 1: l'esempio seguente dichiara una variabile pubblica di nome userName il cui tipo è String e le assegna una stringa
vuota:
var userName:String = "";
Uso 2: l'esempio seguente mostra come specificare il tipo di parametro di una funzione definendo una funzione di
nome randomInt() che usa un parametro di nome integer di tipo Number:
function randomInt(integer:Number):Number {
return Math.round(Math.random()*integer);
}
trace(randomInt(8));
Uso 3: l'esempio seguente definisce una funzione di nome squareRoot() che usa un parametro di nome val del tipo
Number e restituisce la radice quadrata di val, anch'essa di tipo Number:
function squareRoot(val:Number):Number {
return Math.sqrt(val);
}
trace(squareRoot(121));
Vedere anche
Istruzione set variable, Funzione Array
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 125
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Operatore typeof
typeof(expression)
L'operatore typeof valuta l'espressione e restituisce una stringa che specifica se è un valore String, MovieClip,
Object, Function, Number o Boolean.
Disponibilità
Flash Lite 2.0
Operandi
espressione : Object - Una stringa, un clip filmato, un pulsante, un oggetto o una funzione.
Restituisce
String - Una rappresentazione String del tipo di expression. La tabella seguente mostra i risultati dell'operatore
typeof su ciascun tipo di expression.
Tipo di espressione
Risultato
String
stringa
Clip filmato
movieclip
Pulsante
object
Campo di testo
object
Number
number
Boolean
boolean
Object
object
Function
function
Vedere anche
Operatore instanceof
Operatore void
void expression
L'operatore void valuta un'espressione, quindi ne scarta il valore e restituisce undefined. L'operatore void viene
spesso utilizzato nei confronti che utilizzano l'operatore == per verificare i valori non definiti.
Disponibilità
Flash Lite 2.0
Operandi
espressione : Object - Un'espressione da valutare.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 126
Elementi del linguaggio ActionScript
istruzioni
Le istruzioni sono elementi del linguaggio che eseguono o specificano un'azione. L'istruzione return, ad esempio,
restituisce un risultato sotto forma di valore della funzione in cui l'istruzione viene eseguita. L'istruzione if valuta una
condizione per determinare l'azione successiva da eseguire. L'istruzione switch crea una struttura ad albero per le
istruzioni ActionScript.
Riepilogo delle istruzioni
Istruzione
Descrizione
break
Viene visualizzata all'interno di un ciclo (for, for..in, do..while o while)
oppure in un blocco di istruzioni associate a un caso particolare all'interno
dell'istruzione switch.
case
Definisce una condizione per l'istruzione switch.
classe
Definisce una classe personalizzata, che consente di creare le istanze degli oggetti che
condividono i metodi e le proprietà definite dall'utente.
continue
Passa oltre tutte le istruzioni rimanenti nel ciclo più interno e avvia l'iterazione
successiva del ciclo come se il controllo fosse arrivato normalmente alla fine del ciclo.
predefinito
Definisce il caso predefinito di un'istruzione switch.
delete
Elimina il riferimento specificato dal parametro reference e restituisce true se il
riferimento viene correttamente eliminato; in caso contrario, restituisce false.
do..while
Simile ad un ciclo while, ad eccezione del fatto che le istruzioni vengono eseguite
una volta prima della valutazione iniziale della condizione.
dinamici
Indica che gli oggetti basati sulla classe specificata possono aggiungere proprietà
dinamiche e accedervi in fase di runtime.
else
Specifica le istruzioni da eseguire se la condizione nell'istruzione if restituisce false.
else if
Valuta una condizione e specifica le istruzioni da eseguire se la condizione
nell'istruzione if iniziale restituisce false.
extends
Definisce una classe che è una sottoclasse di un'altra classe; quest'ultima rappresenta
la superclasse.
for
Valuta l'espressione init (inizializza) una volta, quindi avvia una sequenza di
ripetizione ciclica.
for..in
Esegue iterazioni sulle proprietà di un oggetto o sugli elementi di un array ed esegue
statement per ogni proprietà o elemento.
function
Comprende un set di istruzioni definite dall'utente per eseguire una determinata
attività.
get
Consente l'acquisizione implicita delle proprietà associate agli oggetti basati sulle
classi definite nei file di classe esterni.
if
Valuta una condizione per determinare l'azione successiva da eseguire in un file SWF.
implements
Specifica che una classe deve definire tutti i metodi dichiarati nell'interfaccia (o
interfacce) in fase di implementazione.
import
Consente di accedere alle classi senza doverne specificare il nome completo.
interface
Definisce un'interfaccia.
intrinsic
Consente la verifica del tipo in fase di compilazione delle classi definite in precedenza.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 127
Elementi del linguaggio ActionScript
Istruzione
Descrizione
private
Specifica che una variabile o una funzione sono disponibili solo per la classe (o relative
sottoclassi) che le dichiara o definisce.
public
Specifica che una variabile o una funzione sono disponibili a qualsiasi chiamante.
return
Specifica il valore restituito da una funzione.
set
Consente l'impostazione implicita delle proprietà associate agli oggetti basati sulle
classi definite nei file di classe esterni.
set variable
Assegna un valore a una variabile.
static
Specifica che una variabile o una funzione vengono create solo una volta per ogni
classe e non in ogni oggetto basato sulla classe.
super
Richiama la versione superclasse di un metodo o di una funzione di costruzione.
switch
Crea una struttura ad albero per le istruzioni ActionScript.
throw
Crea, o genera, un errore che può essere gestito, o rilevato, mediante un blocco di
codice catch{}.
try..catch..finally
Si racchiude un blocco di codice nel quale può verificarsi un errore, quindi si risponde
all'errore.
var
Utilizzata per dichiarare le variabili locali o della linea temporale.
while
Valuta una condizione e, se questa restituisce true, esegue un'istruzione o una serie
di istruzioni prima di tornare a valutare la condizione.
with
Consente di specificare un oggetto (come un clip filmato) con il parametro object e
valutare espressioni e azioni all'interno di quell'oggetto mediante il parametro
statement(s).
Istruzione break
break
Viene visualizzata all'interno di un ciclo (for, for..in, do..while o while) oppure in un blocco di istruzioni
associate a un caso particolare all'interno dell'istruzione switch. Quando viene utilizzata in un ciclo, l'istruzione break
indica a Flash di ignorare il resto del corpo del ciclo, arrestare la ripetizione ciclica ed eseguire l'istruzione che segue
l'istruzione ciclica. Quando viene utilizzata in uno switch, l'istruzione break indica a Flash di ignorare il resto delle
istruzioni in quel blocco case e passare alla prima istruzione che segue l'istruzione switch che le racchiude.
Nei cicli nidificati, l'istruzione break ignora solo il resto del ciclo immediato e non esce dalla serie di cicli nidificati.
Per uscire da una serie completa di cicli nidificati, vedere try..catch..finally.
Disponibilità
Flash Lite 1.0
Esempio
L'esempio seguente utilizza l'istruzione break per uscire da un ciclo altrimenti infinito:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 128
Elementi del linguaggio ActionScript
var i:Number = 0;
while (true) {
trace(i);
if (i >= 10) {
break; // this will terminate/exit the loop
}
i++;
}
che traccia l'output seguente:
0
1
2
3
4
5
6
7
8
9
10
Vedere anche
Proprietà _forceframerate
Istruzione case
case expression : statement(s)
Definisce una condizione per l'istruzione switch. Se il parametro expression è uguale al parametro expression
dell'istruzione switch mediante uguaglianza rigorosa (===), quindi Flash Player esegue istruzioni nel parametro
statement(s) finché non incontra un'istruzione break o la fine dell'istruzione switch.
Se si utilizza l'istruzione case al di fuori di un'istruzione switch, si verifica un errore e lo script non viene compilato.
Nota: il parametro statement(s) deve sempre terminare con un'istruzione break. Se si omette l'istruzione
break statement dal parametro statement(s), l'esecuzione prosegue con l'istruzione case successiva invece di uscire
dall'istruzione switch.
Disponibilità
Flash Lite 1.0
Parametri
expression:String - Qualsiasi espressione.
Esempio
L'esempio seguente definisce le condizioni per l'istruzione switchthisMonth. Se thisMonth è uguale all'espressione
nell'istruzione case, l'istruzione viene eseguita.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 129
Elementi del linguaggio ActionScript
var thisMonth:Number = new Date().getMonth();
switch (thisMonth) {
case 0 :
trace("January");
break;
case 1 :
trace("February");
break;
case 5 :
case 6 :
case 7 :
trace("Some summer month");
break;
case 8 :
trace("September");
break;
default :
trace("some other month");
}
Vedere anche
Istruzione break
Istruzione class
[dynamic] class className [ extends superClass ] [ implements interfaceName[, interfaceName...
] ] { // class definition here}
Definisce una classe personalizzata, che consente di creare le istanze degli oggetti che condividono i metodi e le
proprietà definite dall'utente. Ad esempio, se si sta sviluppando un sistema di registrazione delle fatture, è possibile
creare un'apposita classe che definisca tutti i metodi e le proprietà richiesti per le fatture. A quel punto, si può utilizzare
il nuovo comando new invoice() per creare i relativi oggetti invoice.
Il nome della classe deve corrispondere al nome del file esterno che la contiene e il nome del file esterno deve essere il
nome della classe seguito dall'estensione di file .as. Ad esempio, se la classe viene denominata Studente, il file che la
definisce dovrà chiamarsi Studente.as.
Se una classe si trova all'interno di un pacchetto, la dichiarazione di classe deve utilizzare il nome di classe completo
del modulo base.sub1.sub2.MyClass. Inoltre, il file AS della classe deve essere memorizzato nel percorso di una
struttura di directory che rifletta la struttura del pacchetto, come ad esempio base/sub1/sub2/MyClass.as. Se la
definizione di una classe utilizza il formato "class MyClass," questa si trova nel pacchetto predefinito e il file MyClass.as
deve trovarsi al primo livello di alcune directory del percorso.
Per questo motivo, è consigliabile pianificare la struttura delle directory prima di iniziare a creare le classi. In caso
contrario, se si decide di spostare i file di classe dopo averli creati, sarà necessario modificare le istruzioni di
dichiarazione delle classi affinché riflettano la nuova posizione.
Le definizioni di classe non possono essere nidificate, vale a dire non è possibile definire altre classi all'interno di una
definizione di classe.
Per indicare che gli oggetti possono aggiungere le proprietà dinamiche e accedervi in fase di runtime, specificare la
parola chiave dynamic prima dell'istruzione di classe. Per dichiarare che la classe implementa un'interfaccia, utilizzare
la parola chiave implements. Per creare sottoclassi di una classe, utilizzare la parola chiave extends. (Una classe può
estendere solo una classe, ma può implementare diverse interfacce). È possibile utilizzare implements ed extends in
un'unica istruzione. Gli esempi seguenti mostrano gli usi più comuni delle parole chiave implements ed extends:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 130
Elementi del linguaggio ActionScript
class C implements Interface_i, Interface_j // OK
class C extends Class_d implements Interface_i, Interface_j // OK
class C extends Class_d, Class_e // not OK
Disponibilità
Flash Lite 2.0
Parametri
className:String - Il nome completo della classe.
Esempio
Nell'esempio seguente viene creata una classe di nome Plant. La funzione di costruzione Plant richiede due parametri.
// Filename Plant.as
class Plant {
// Define property names and types
var leafType:String;
var bloomSeason:String;
// Following line is constructor
// because it has the same name as the class
function Plant(param_leafType:String, param_bloomSeason:String) {
// Assign passed values to properties when new Plant object is created
this.leafType = param_leafType;
this.bloomSeason = param_bloomSeason;
}
// Create methods to return property values, because best practice
// recommends against directly referencing a property of a class
function getLeafType():String {
return leafType;
}
function getBloomSeason():String {
return bloomSeason;
}
}
In un file di script esterno o nel pannello Azioni, utilizzare l'operatore new per creare un oggetto Plant.
var pineTree:Plant = new Plant("Evergreen", "N/A");
// Confirm parameters were passed correctly
trace(pineTree.getLeafType());
trace(pineTree.getBloomSeason());
Nell'esempio seguente viene creata una classe di nome ImageLoader. La funzione di costruzione ImageLoader
richiede tre parametri.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 131
Elementi del linguaggio ActionScript
// Filename ImageLoader.as
class ImageLoader extends MovieClip {
function ImageLoader(image:String, target_mc:MovieClip, init:Object) {
var listenerObject:Object = new Object();
listenerObject.onLoadInit = function(target) {
for (var i in init) {
target[i] = init[i];
}
};
var JPEG_mcl:MovieClipLoader = new MovieClipLoader();
JPEG_mcl.addListener(listenerObject);
JPEG_mcl.loadClip(image, target_mc);
}
}
In un file di script esterno o nel pannello Azioni, utilizzare l'operatore new per creare un oggetto ImageLoader.
var jakob_mc:MovieClip = this.createEmptyMovieClip("jakob_mc", this.getNextHighestDepth());
var jakob:ImageLoader = new
ImageLoader("http://www.helpexamples.com/flash/images/image1.jpg", jakob_mc, {_x:10, _y:10,
_alpha:70, _rotation:-5});
Vedere anche
Istruzione dynamic
Istruzione continue
continue
Passa oltre tutte le istruzioni rimanenti nel ciclo più interno e avvia l'iterazione successiva del ciclo come se il controllo
fosse arrivato normalmente alla fine del ciclo. Non ha alcun effetto al di fuori di un ciclo.
Disponibilità
Flash Lite 1.0
Esempio
In un ciclo while, continue indica all'interprete di Flash di ignorare il resto del corpo del ciclo e di passare all'inizio
del ciclo, dove viene provata la condizione:
trace("example 1");
var i:Number = 0;
while (i < 10) {
if (i % 3 == 0) {
i++;
continue;
}
trace(i);
i++;
}
In un ciclo do..while, continue indica all'interprete di Flash di ignorare il resto del corpo del ciclo e di passare
all'inizio del ciclo, dove viene provata la condizione:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 132
Elementi del linguaggio ActionScript
trace("example 2");
var i:Number = 0;
do {
if (i % 3 == 0) {
i++;
continue;
}
trace(i);
i++;
}
while (i < 10);
In un ciclo for, continue indica all'interprete di Flash di ignorare il resto del corpo del ciclo. Nell'esempio seguente,
se il modulo i 3 è uguale a 0, l'istruzione trace(i) viene ignorata:
trace("example 3");
for (var i = 0; i < 10; i++) {
if (i % 3 == 0) {
continue;
}
trace(i);
}
Nel ciclo for..in, continue indica all'interprete di Flash di ignorare il resto del corpo del ciclo e di passare all'inizio
del ciclo, dove viene elaborato il valore successivo dell'enumerazione:
for (i in _root) {
if (i == "$version") {
continue;
}
trace(i);
}
Vedere anche
Istruzione do..while
Istruzione default
default: statements
Definisce il caso predefinito di un'istruzione switch. Le istruzioni vengono eseguite se il parametro expression
dell'istruzione switch non è uguale (in base all'operazione di uguaglianza rigorosa [===]) ad alcuno dei parametri
expression che seguono le parole chiave case per una data istruzione switch.
Non è richiesta un'istruzione switch per un'istruzione case default. Un'istruzione case default non deve
necessariamente essere l'ultima dell'elenco. Se si utilizza l'istruzione default al di fuori di un'istruzione switch, si
verifica un errore e lo script non viene compilato.
Disponibilità
Flash Lite 2.0
Parametri
statements:String - Qualsiasi istruzione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 133
Elementi del linguaggio ActionScript
Esempio
Nell'esempio seguente, l'espressione A non equivale all'espressione B o D, pertanto l'istruzione che segue la parola
chiave default viene eseguita e l'istruzione trace() viene inviata al pannello Output.
var dayOfWeek:Number = new Date().getDay();
switch (dayOfWeek) {
case 1 :
trace("Monday");
break;
case 2 :
trace("Tuesday");
break;
case 3 :
trace("Wednesday");
break;
case 4 :
trace("Thursday");
break;
case 5 :
trace("Friday");
break;
default :
trace("Weekend");
}
Vedere anche
Istruzione switch
Istruzione delete
delete reference
Elimina il riferimento specificato dal parametro reference e restituisce true se il riferimento viene correttamente
eliminato; in caso contrario, restituisce false. Questo operatore è utile per liberare la memoria utilizzata dagli script.
Per rimuovere i riferimenti agli oggetti, è possibile utilizzare l'operatore delete. Dopo che sono stati rimossi tutti i
riferimenti a un oggetto, Flash Player rimuove l'oggetto e libera lo spazio di memoria che questo occupava.
Benché delete sia un operatore, solitamente viene utilizzato come istruzione, come dimostra il seguente esempio:
delete x;
L'operatore delete può non riuscire e restituire false se il parametro reference non esiste o non può essere eliminato.
Non è possibile eliminare gli oggetti e le proprietà predefinite, né le variabili che vengono dichiarate all'interno di una
funzione con l'istruzione var. L'operatore delete non consente di rimuovere i clip filmato.
Disponibilità
Flash Lite 2.0
Restituisce
Boolean - Un valore booleano.
Parametri
reference:Object - Il nome della variabile o dell'oggetto da eliminare.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 134
Elementi del linguaggio ActionScript
Esempio
Uso 1: l'esempio seguente crea un oggetto, lo utilizza e lo elimina quando non è più richiesto:
var account:Object = new Object();
account.name = "Jon";
account.balance = 10000;
trace(account.name); //output: Jon
delete account;
trace(account.name); //output: undefined
Uso 2: l'esempio seguente elimina una proprietà di un oggetto:
// create the new object "account"
var account:Object = new Object();
// assign property name to the account
account.name = "Jon";
// delete the property
delete account.name;
Uso 3: l'esempio seguente elimina una proprietà dell'oggetto:
var my_array:Array = new Array();
my_array[0] = "abc"; // my_array.length == 1
my_array[1] = "def"; // my_array.length == 2
my_array[2] = "ghi"; // my_array.length == 3
// my_array[2] is deleted, but Array.length is not changed
delete my_array[2];
trace(my_array.length); // output: 3
trace(my_array); // output: abc,def,undefined
Uso 4: l'esempio seguente mostra il comportamento di delete sui riferimenti agli oggetti:
var ref1:Object = new Object();
ref1.name = "Jody";
// copy the reference variable into a new variable
// and delete ref1
ref2 = ref1;
delete ref1;
trace("ref1.name "+ref1.name); //output: ref1.name undefined
trace("ref2.name "+ref2.name); //output: ref2.name Jody
Se ref1 non fosse stato copiato in ref2, l'oggetto sarebbe stato eliminato al momento dell'eliminazione di ref1 poiché
non vi sarebbe stato più presente alcun riferimento. Se si elimina ref2 non sono più presenti riferimenti all'oggetto,
pertanto viene distrutto e viene resa disponibile la memoria utilizzata da esso.
Vedere anche
Istruzione set variable
Istruzione do..while
do { statement(s) } while (condition)
Simile ad un ciclo while, ad eccezione del fatto che le istruzioni vengono eseguite una volta prima della valutazione
iniziale della condizione. Quindi, le istruzioni vengono eseguite solo se la condizione restituisce true.
Un ciclo do..while fa in modo che il codice all'interno del ciclo venga eseguito almeno una volta. Questa operazione
può essere svolta anche mediante un ciclo while posizionando una copia delle istruzioni da eseguire prima che il ciclo
while cominci, ma molti programmatori ritengono che i cicli do..while siano più semplici da leggere.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 135
Elementi del linguaggio ActionScript
Se la condizione restituisce sempre true, il ciclo do..while è infinito. Se si entra in un ciclo infinito, si verificano dei
problemi in Flash Player e viene visualizzato un messaggio di errore o il lettore si blocca. Quando possibile, se si
conosce il numero di volte che si desidera ripetere il ciclo, utilizzare un ciclo for. I cicli for sono facili da leggere e
sottoporre a debug, ma non sostituiscono i cicli do...while in tutte le circostanze.
Disponibilità
Flash Lite 1.0
Parametri
condition:Boolean - La condizione da valutare. statement(s) all'interno del blocco di codice do vengono eseguite a
condizione che il parametro condition restituisca true.
Esempio
L'esempio seguente utilizza un ciclo do..while per valutare se una condizione è true e traccia myVar finché myVar è
maggiore di 5. Quando myVar è maggiore di 5, il ciclo termina.
var myVar:Number = 0;
do {
trace(myVar);
myVar++;
}
while (myVar < 5);
/* output:
0
1
2
3
4
*/
Vedere anche
Istruzione break
Istruzione dynamic
dynamic class className [ extends superClass ] [ implements interfaceName[, interfaceName...
] ] { // class definition here }
Indica che gli oggetti basati sulla classe specificata possono aggiungere proprietà dinamiche e accedervi in fase di
runtime.
La verifica del tipo eseguita sulle classi dinamiche è meno rigorosa di quella eseguita sulle classi non dinamiche, in
quanto i membri cui si accede all'interno della definizione di classe e nelle istanze di classe non vengono confrontati
con quelli definiti nell'area di validità della classe. Le funzioni dei membri di classe, tuttavia, possono essere verificate
per quanto riguarda i tipi restituiti e i tipi di parametro. Questo comportamento è particolarmente utile quando si
lavora con oggetti MovieClips, in quanto ci sono molti modi per aggiungere proprietà e oggetti in modo dinamico a
un clip filmato, ad esempio mediante MovieClip.createEmptyMovieClip() e MovieClip.createTextField().
Anche le sottoclassi delle classi dinamiche sono dinamiche.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 136
Elementi del linguaggio ActionScript
Esempio
Nell'esempio seguente, la classe Person2 non è ancora stata contrassegnata come dynamic; pertanto, se si chiama una
funzione non dichiarata, viene generato un errore in fase di compilazione:
class Person2 {
var name:String;
var age:Number;
function Person2(param_name:String, param_age:Number) {
trace ("anything");
this.name = param_name;
this.age = param_age;
}
}
In un file FLA o AS che si trova nella stessa directory, aggiungere il codice ActionScript seguente al fotogramma 1 sulla
linea temporale:
// Before dynamic is added
var craig:Person2 = new Person2("Craiggers", 32);
for (i in craig) {
trace("craig." + i + " = " + craig[i]);
}
/* output:
craig.age = 32
craig.name = Craiggers */
Se si aggiunge una funzione non dichiarata, dance, viene generato un errore, come mostrato nell'esempio seguente:
trace("");
craig.dance = true;
for (i in craig) {
trace("craig." + i + " = " + craig[i]);
}
/* output: **Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 14: There is no property with
the name 'dance'. craig.dance = true; Total ActionScript Errors: 1 Reported Errors: 1 */
Aggiungere la parola chiave dynamic alla classe Person2, in modo che la prima riga sia uguale alla seguente:
dynamic class Person2 {
Riprovare il codice: viene generato l'output seguente:
craig.dance = true craig.age = 32 craig.name = Craiggers
Vedere anche
Istruzione class
Istruzione else
if (condition){ statement(s); } else { statement(s); }
Specifica le istruzioni da eseguire se la condizione nell'istruzione if restituisce false. le parentesi graffe ({}) utilizzate
per racchiudere il blocco di istruzioni che devono essere eseguite dall'istruzione else non sono necessarie se viene
eseguita una sola istruzione.
Disponibilità
Flash Lite 1.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 137
Elementi del linguaggio ActionScript
Parametri
condition:Boolean - Espressione che restituisce true o false.
Esempio
Nell'esempio seguente, la condizione else viene utilizzata per verificare se la variabile age_txt è maggiore o minore
di 18:
if (age_txt.text>=18) { trace("welcome, user"); } else { trace("sorry, junior");
userObject.minor = true; userObject.accessAllowed = false; }
Nell'esempio seguente, le parentesi graffe ({}) non sono necessarie poiché solo un'istruzione segue l'istruzione else:
if (age_txt.text>18) { trace("welcome, user"); } else trace("sorry, junior");
Vedere anche
Funzione ifFrameLoaded
Istruzione else if
if (condition){ statement(s); }
else if (condition){ statement(s);}
Valuta una condizione e specifica le istruzioni da eseguire se la condizione nell'istruzione if iniziale restituisce false.
Se la condizione else if restituisce true, l'interprete di Flash esegue le istruzioni che seguono la condizione
all'interno delle parentesi graffe ({}). Se la condizione else if è false, Flash ignora le istruzioni all'interno delle
parentesi graffe ed esegue le istruzioni dopo le parentesi.
Utilizzare l'istruzione else if per creare una struttura logica ad albero negli script. Se ci sono più rami, è opportuno
utilizzare un'istruzione switch.
Disponibilità
Flash Lite 1.0
Parametri
condition:Boolean - Espressione che restituisce true o false.
Esempio
L'esempio seguente utilizza le istruzioni else if per confrontare score_txt con un valore specificato:
if (score_txt.text>90) { trace("A"); } else if (score_txt.text>75) { trace("B"); } else if
(score_txt.text>60) { trace("C"); } else { trace("F"); }
Vedere anche
Funzione ifFrameLoaded
Istruzione extends
Uso 1:
class className extends otherClassName {}
Uso 2:
interface interfaceName extends otherInterfaceName {}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 138
Elementi del linguaggio ActionScript
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Definisce una classe che è una sottoclasse di un'altra classe; quest'ultima rappresenta la superclasse. La sottoclasse
eredita tutti i metodi, le proprietà e le funzioni definiti nella superclasse.
Anche le interfacce possono essere estese mediante la parola chiave extends. Un'interfaccia che estende un'altra
interfaccia include tutte le dichiarazioni di metodo dell'interfaccia originale.
Disponibilità
Flash Lite 2.0
Parametri
className:String - Il nome della classe in fase di definizione.
Esempio
Nell'esempio seguente, la classe Car estende la classe Vehicle in modo che tutti i metodi, le proprietà e le funzioni
vengano ereditate. Se lo script crea un'istanza di un oggetto Car, è possibile utilizzare sia i metodi della classe Car che
quelli della classe Vehicle.
L'esempio seguente mostra il contenuto di un file di nome Vehicle.as, che definisce la classe Vehicle:
class Vehicle {
var numDoors:Number;
var color:String;
function Vehicle(param_numDoors:Number, param_color:String) {
this.numDoors = param_numDoors;
this.color = param_color;
}
function start():Void {
trace("[Vehicle] start");
}
function stop():Void {
trace("[Vehicle] stop");
}
function reverse():Void {
trace("[Vehicle] reverse");
}
}
L'esempio seguente mostra un secondo file AS, denominato Car.as, nella stessa directory. Questa classe estende la
classe Vehicle, modificandola in tre modi. Innanzi tutto, la classe Car aggiunge una variabile fullSizeSpare per
verificare se l'oggetto Car ha una gomma di scorta di dimensione regolare. Quindi, aggiunge un nuovo metodo
specifico delle auto, activateCarAlarm(), che attiva l'antifurto dell'auto. Infine, ignora la funzione stop() per
aggiungere il fatto che la classe Car utilizza un sistema di frenata anti-bloccaggio.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 139
Elementi del linguaggio ActionScript
class Car extends Vehicle {
var fullSizeSpare:Boolean;
function Car(param_numDoors:Number, param_color:String, param_fullSizeSpare:Boolean) {
this.numDoors = param_numDoors;
this.color = param_color;
this.fullSizeSpare = param_fullSizeSpare;
}
function activateCarAlarm():Void {
trace("[Car] activateCarAlarm");
}
function stop():Void {
trace("[Car] stop with anti-lock brakes");
}
}
L'esempio seguente crea un'istanza di un oggetto Car, chiama un metodo definito nella classe Vehicle (start()),
quindi chiama il metodo ignorato dalla classe Car (stop()), infine chiama un metodo della classe Car
(activateCarAlarm()):
var myNewCar:Car = new Car(2, "Red", true);
myNewCar.start(); // output: [Vehicle] start
myNewCar.stop(); // output: [Car] stop with anti-lock brakes
myNewCar.activateCarAlarm(); // output: [Car] activateCarAlarm
È anche possibile scrivere una sottoclasse della classe Vehicle mediante la parola chiave super che può essere utilizzata
dalla sottoclasse per accedere alle proprietà e ai metodi della superclasse. L'esempio seguente mostra un terzo file AS,
denominato Truck.as, sempre nella stessa directory. La classe Truck utilizza la parola chiave super nella funzione di
costruzione e anche nella funzione reverse() ignorata.
class Truck extends Vehicle {
var numWheels:Number;
function Truck(param_numDoors:Number, param_color:String, param_numWheels:Number) {
super(param_numDoors, param_color);
this.numWheels = param_numWheels;
}
function reverse():Void {
beep();
super.reverse();
}
function beep():Void {
trace("[Truck] make beeping sound");
}
}
L'esempio seguente crea un'istanza di un oggetto Truck, chiama un metodo ignorato dalla classe Truck (reverse()),
quindi chiama un metodo definito nella classe Vehicle (stop()):
var myTruck:Truck = new Truck(2, "White", 18);
myTruck.reverse(); // output: [Truck] make beeping sound [Vehicle] reverse
myTruck.stop(); // output: [Vehicle] stop
Vedere anche
Istruzione class
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 140
Elementi del linguaggio ActionScript
Istruzione for
for(init; condition; next) {
statement(s);
}
Valuta l'espressione init (inizializza) una volta, quindi avvia una sequenza di ripetizione ciclica. La sequenza di
ripetizione ciclica dalla valutazione dell'espressione condition. Se l'espressione condition restituisce true, viene
eseguito statement e viene valutata l'espressione next. La sequenza di ripetizione ciclica che riprende dalla
valutazione dell'espressione condition.
Le parentesi graffe ({}) utilizzate per racchiudere il blocco di istruzioni che devono essere eseguite dall'istruzione for
non sono necessarie se viene eseguita una sola istruzione.
Disponibilità
Flash Lite 1.0
Parametri
init - Un'espressione da valutare prima dell'inizio della sequenza di ripetizione ciclica; solitamente un'espressione di
assegnazione. Per questo parametro è consentito anche l'uso dell'istruzione var.
Esempio
L'esempio seguente utilizza for per aggiungere gli elementi in un array:
var my_array:Array = new Array();
for (var i:Number = 0; i < 10; i++) {
my_array[i] = (i + 5) * 10;
}
trace(my_array); // output: 50,60,70,80,90,100,110,120,130,140
L'esempio seguente utilizza for per eseguire ripetutamente la stessa azione. Nel codice, il ciclo for aggiunge i numeri
compresi tra 1 e 100.
var sum:Number = 0;
for (var i:Number = 1; i <= 100; i++) {
sum += i;
}
trace(sum); // output: 5050
L'esempio seguente mostra che le parentesi graffe ({}) non sono necessarie se viene eseguita una sola istruzione:
var sum:Number = 0;
for (var i:Number = 1; i <= 100; i++)
sum += i;
trace(sum); // output: 5050
Vedere anche
Operatore ++ (incremento)
Istruzione for..in
for (variableIterant in object) { ]
statement(s);
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 141
Elementi del linguaggio ActionScript
Esegue iterazioni sulle proprietà di un oggetto o sugli elementi di un array ed esegue statement per ogni proprietà o
elemento. I metodi di un oggetto non vengono enumerati dall'azione for..in.
Alcune proprietà non possono essere elencate dall'azione for..in. ad esempio, le proprietà di clip filmato come _x e
_y. Nei file di classe esterni, i membri statici, a differenza dei membri di un'istanza, non possono essere enumerati.
L'istruzione for..in esegue iterazioni sulle proprietà degli oggetti nella catena di prototipi degli oggetti di cui si esegue
l'iterazione. Per prime vengono enumerate le proprietà dell'oggetto, quindi le proprietà del suo prototipo immediato,
quindi quelle del prototipo e così via. L'istruzione for..in non enumera lo stesso nome di proprietà due volte. Se
l'elemento child dell'oggetto ha un prototipo parent ed entrambi contengono la proprietà prop, l'istruzione for..in
chiamata sull'elemento child enumera la prop dell'elemento child, ma ignora quella dell'elemento parent.
Le parentesi graffe ({}) utilizzate per racchiudere il blocco di istruzioni che devono essere eseguite dall'istruzione
for..in non sono necessarie se viene eseguita una sola istruzione.
Se si scrive un ciclofor..in in un file di classe (un file AS esterno), i membri dell'istanza non sono disponibili per il
ciclo, ma i membri statici sì. Tuttavia, se si scrive un ciclo for..in in un file FLA per un'istanza della classe, i membri
dell'istanza sono disponibili ma i membri statici no.
Disponibilità
Flash Lite 2.0
Parametri
variableIterant:String - Il nome di una variabile che deve agire come elemento di iterazione, creando un riferimento
a ciascuna proprietà di un oggetto o elemento di un array.
Esempio
L'esempio seguente mostra come usare for..in per eseguire l'iterazione nelle proprietà di un oggetto:
var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"};
for (var prop in myObject) {
trace("myObject."+prop+" = "+myObject[prop]);
}
//output
myObject.firstName = Tara
myObject.age = 27
myObject.city = San Francisco
L'esempio seguente mostra come usare for..in per eseguire l'iterazione negli elementi di un oggetto:
var myArray:Array = new Array("one", "two", "three");
for (var index in myArray)
trace("myArray["+index+"] = " + myArray[index]);
// output:
myArray[2] = three
myArray[1] = two
myArray[0] = one
L'esempio seguente utilizza l'operatore typeof con for..in per eseguire l'iterazione in un tipo particolare di elemento
secondario:
for (var name in this) {
if (typeof (this[name]) == "movieclip") {
trace("I have a movie clip child named "+name);
}
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 142
Elementi del linguaggio ActionScript
Nota: in presenza di più clip filmato, l'output consiste nei nomi di istanza di tali clip.
L'esempio seguente enumera gli elementi secondari di un clip filmato e invia ciascuno di essi al fotogramma 2 nelle
rispettive linee temporali. Il clip filmato RadioButtonGroup è un elemento principale con diversi secondari:
_RedRadioButton_, _GreenRadioButton_ e _BlueRadioButton_.
for (var name in RadioButtonGroup) { RadioButtonGroup[name].gotoAndStop(2); }
Istruzione function
Uso 1: (Dichiara una funzione denominata).
function functionname([parameter0, parameter1,...parameterN]){statement(s)}
Uso 2: (Dichiara una funzione anonima e restituisce un riferimento ad essa).
function ([parameter0, parameter1,...parameterN]){ statement(s) }
Comprende un set di istruzioni definite dall'utente per eseguire una determinata attività. È possibile definire una
funzione in una posizione e invocarla, o chiamarla, da diversi script in un file SWF. Quando si definisce una funzione,
è possibile anche specificare gli eventuali parametri, vale a dire i segnaposto dei valori su cui la funzione agisce. È
possibile trasmettere diversi parametri a una funzione ogni volta che viene chiamata in modo da poter riutilizzare la
funzione in situazioni diverse.
Utilizzare l'istruzione return negli statement(s) di una funzione per fare in modo che la funzione generi, o restituisca,
un valore.
È possibile utilizzare questa istruzione per definire una function per cui sono specificati functionname, parameters e
statement(s). Quando uno script chiama una funzione, vengono eseguite le istruzioni nella definizione della funzione.
È consentito utilizzare riferimenti di inoltro; all'interno dello stesso script, una funzione può essere dichiarata dopo
che è stata chiamata. Una definizione di funzione sostituisce l'eventuale definizione preesistente della stessa funzione.
Questa sintassi può essere utilizzata in tutti i casi in cui è consentita un'istruzione.
È anche possibile utilizzare questa istruzione per creare una funzione anonima e restituire un riferimento alla
funzione. Questa sintassi è utilizzata nelle espressioni ed è particolarmente utile per installare i metodi negli oggetti.
Per ulteriori funzionalità, è possibile utilizzare l'oggetto arguments nella definizione della funzione. L'oggetto
arguments è comunemente utilizzato per creare funzioni che accettano un numero variabile di parametri e funzioni
anonime ricorsive.
Disponibilità
Flash Lite 2.0
Restituisce
String - Uso 1: Il modulo di restituzione non restituisce nulla. Uso 2: un riferimento alla funzione anonima.
Parametri
functionname:String - Il nome della nuova funzione.
Esempio
L'esempio seguente definisce la funzione sqr, che accetta un parametro e restituisce il valore Math.pow(x, 2) del
parametro:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 143
Elementi del linguaggio ActionScript
function sqr(x:Number) {
return Math.pow(x, 2);
}
var y:Number = sqr(3);
trace(y); // output: 9
Se la funzione è definita e viene utilizzata nello stesso script, è possibile che dopo l'uso della funzione ne compaia la
definizione:
var y:Number = sqr(3);
trace(y); // output: 9
function sqr(x:Number) {
return Math.pow(x, 2);
}
La funzione seguente crea un oggetto LoadVars e carica params.txt nel file SWF. Una volta caricato correttamente il
file, viene tracciato variables loaded:
var myLV:LoadVars = new LoadVars();
myLV.load("params.txt");
myLV.onLoad = function(success:Boolean) {
trace("variables loaded");
}
Istruzione get
function get property () { // your statements here }
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Consente l'acquisizione implicita delle proprietà associate agli oggetti basati sulle classi definite nei file di classe esterni.
L'uso dei metodi get impliciti consente di accedere alle proprietà degli oggetti senza accedere alla proprietà
direttamente. I metodi impliciti get/set rappresentano un'abbreviazione sintattica del metodo
Object.addProperty() in ActionScript 1.
Disponibilità
Flash Lite 2.0
Parametri
property:String - La parola utilizzata per fare riferimento alla proprietà a cui get accede; questo valore deve essere
uguale a quello utilizzato nel comando set corrispondente.
Esempio
Nell'esempio seguente viene definita una classe Team. La classe Team comprende i metodi get/set che consentono di
recuperare e impostare le proprietà all'interno della classe:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 144
Elementi del linguaggio ActionScript
class Team {
var teamName:String;
var teamCode:String;
var teamPlayers:Array = new Array();
function Team(param_name:String, param_code:String) {
this.teamName = param_name;
this.teamCode = param_code;
}
function get name():String {
return this.teamName;
}
function set name(param_name:String):Void {
this.teamName = param_name;
}
}
Immettere il codice ActionScript seguente in un fotogramma della linea temporale:
var giants:Team = new Team("San Fran", "SFO");
trace(giants.name);
giants.name = "San Francisco";
trace(giants.name);
/* output:
San Fran San Francisco */
Quando si traccia giants.name, si utilizza il metodo get per restituire il valore della proprietà.
Vedere anche
addProperty (metodo Object.addProperty)
Istruzione if
if(condition) { statement(s); }
Valuta una condizione per determinare l'azione successiva da eseguire in un file SWF. Se la condizione restituisce
true, Flash esegue le istruzioni che seguono la condizione all'interno delle parentesi graffe ({}). Se la condizione è
false, Flash ignora le istruzioni all'interno delle parentesi graffe ed esegue le istruzioni dopo le parentesi. Utilizzare le
istruzioni if, else e else if per creare una logica ad albero negli script.
Le parentesi graffe ({}) utilizzate per racchiudere il blocco di istruzioni che devono essere eseguite dall'istruzione if
non sono necessarie se viene eseguita una sola istruzione.
Disponibilità
Flash Lite 1.0
Parametri
condition:Boolean - Espressione che restituisce true o false.
Esempio
Nell'esempio seguente, la condizione tra parentesi restituisce la variabile nome per verificare se contiene il valore
letterale "Erica". In caso affermativo, viene eseguita la funzione play() tra parentesi graffe.
if(name == "Erica"){
play();
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 145
Elementi del linguaggio ActionScript
L'esempio seguente utilizza un'istruzione if per valutare quanto tempo trascorre prima che un utente faccia clic su
submit_btn in un file SWF. Se un utente fa clic sul pulsante dopo più di 10 secondi dall'inizio della riproduzione del
file SWF, la condizione restituisce true e il messaggio tra parentesi graffe ({}) viene visualizzato in un campo di testo
che viene creato in fase di runtime (mediante createTextField()). Se l'utente fa clic entro 10 secondi dalla
riproduzione del file SWF, la condizione restituisce false e viene visualizzato un messaggio diverso.
this.createTextField("message_txt", this.getNextHighestDepth, 0, 0, 100, 22);
message_txt.autoSize = true;
var startTime:Number = getTimer();
this.submit_btn.onRelease = function() {
var difference:Number = (getTimer() - startTime) / 1000;
if (difference > 10) {
this._parent.message_txt.text = "Not very speedy, you took "+difference+" seconds.";
}
else {
this._parent.message_txt.text = "Very good, you hit the button in "+difference+" seconds.";
}
};
Vedere anche
Istruzione else
Istruzione implements
className implements interface01 [, interface02 , ...]
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Specifica che una classe deve definire tutti i metodi dichiarati nell'interfaccia (o interfacce) in fase di implementazione.
Disponibilità
Flash Lite 2.0
Esempio
Vedere interface.
Vedere anche
Istruzione class
istruzione import
import className
import packageName.*
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa istruzione è supportata nel
pannello Azioni e nei file di classe esterni.
Consente di accedere alle classi senza doverne specificare il nome completo. Ad esempio, se si desidera utilizzare una
classe personalizzata macr.util.users.UserClass in uno script, è necessario farvi riferimento utilizzando il suo nome
completo oppure importarla; se la si importa, è possibile farvi riferimento mediante il nome della classe:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 146
Elementi del linguaggio ActionScript
// before importing
var myUser:macr.util.users.UserClass = new macr.util.users.UserClass();
// after importing
import macr.util.users.UserClass;
var myUser:UserClass = new UserClass();
Se il pacchetto contiene più file di classe (working_directory/macr/utils/users) a cui si desidera accedere, è possibile
importarli tutti in un'unica istruzione, come nell'esempio seguente:
import macr.util.users.*;
È necessario emettere l'istruzione import prima di cercare di accedere alla classe importata senza specificare il suo
nome completo.
Se si importa una classe ma non la si utilizza nello script, la classe non viene esportata nel file SWF. Questo significa
che è possibile importare pacchetti di grandi dimensioni senza doversi preoccupare delle dimensioni del file SWF; il
codice byte associato a una classe viene incluso in un file SWF solo se tale classe viene effettivamente utilizzata.
L'istruzione import si applica solo allo script corrente (fotogramma oppure oggetto) in cui viene chiamata. Ad
esempio, se nel fotogramma 1 di un documento Flash si importano tutte le classi presenti nel pacchetto macr.util, in
quel fotogramma è possibile fare riferimento alle classi del pacchetto utilizzando i semplici nomi:
// On Frame 1 of a FLA:
import macr.util.*;
var myFoo:foo = new foo();
In un altro script di fotogramma, tuttavia, sarebbe necessario fare riferimento alle classi di quel pacchetto mediante i
loro nomi completi (var myFoo:foo = new macr.util.foo();) o aggiungere un'istruzione import all'altro
fotogramma che importa le classi di quel pacchetto.
Disponibilità
Flash Lite 2.0
Parametri
className:String - Il nome completo di una classe definita in un file di classe esterno.
Istruzione interface
interface InterfaceName [extends InterfaceName ] {}
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Definisce un'interfaccia. Un'interfaccia è simile a una classe, con le eccezioni seguenti:
• Le interfacce contengono solo le dichiarazioni dei metodi, non le loro implementazioni; vale a dire, ogni classe che
implementa un'interfaccia deve fornire un'implementazione per ciascun metodo dichiarato nell'interfaccia.
• Nella definizione di un'interfaccia sono consentiti solo membri pubblici e non membri di classe e istanza.
• Le istruzioni get e set non sono consentite nelle definizioni di interfaccia.
Esempio
L'esempio seguente mostra alcuni modi per definire e implementare le interfacce:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 147
Elementi del linguaggio ActionScript
(in top-level package .as files Ia, B, C, Ib, D, Ic, E)
// filename Ia.as
interface Ia {
function k():Number; // method declaration only
function n(x:Number):Number; // without implementation
}
// filename B.as
class B implements Ia {
function k():Number {
return 25;
}
function n(x:Number):Number {
return x + 5;
}
} // external script or Actions panel // script file
var mvar:B = new B();
trace(mvar.k()); // 25
trace(mvar.n(7)); // 12
// filename c.as
class C implements Ia {
function k():Number {
return 25;
}
} // error: class must implement all interface methods
// filename Ib.as
interface Ib {
function o():Void;
}
class D implements Ia, Ib {
function k():Number {
return 15;
}
function n(x:Number):Number {
return x * x;
}
function o():Void {
trace("o");
}
} // external script or Actions panel // script file
mvar = new D();
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 148
Elementi del linguaggio ActionScript
trace(mvar.k()); // 15
trace(mvar.n(7)); // 49
trace(mvar.o()); // "o"
interface Ic extends Ia {
function p():Void;
}
class E implements Ib, Ic {
function k():Number {
return 25;
}
function n(x:Number):Number {
return x + 5;
}
function o():Void {
trace("o");
}
function p():Void {
trace("p");
}
}
Vedere anche
Istruzione class
Istruzione intrinsic
intrinsic class className [extends superClass] [implements interfaceName [, interfaceName...] ] {
//class definition here
}
Consente la verifica del tipo in fase di compilazione delle classi definite in precedenza. Flash utilizza le dichiarazioni
della classe intrinsic per abilitare la verifica in fase di compilazione delle classi incorporate, quali Array, Object e
String. Questa parola chiave indica al compilatore che non è richiesta alcuna implementazione di funzione e che per
essa non deve essere generato alcun codice byte.
La parola chiave intrinsic può essere utilizzata anche con le dichiarazioni di variabile e di funzione. Flash la utilizza
per abilitare la verifica del tipo in fase di compilazione per le funzioni e le proprietà globali.
La parola chiave intrinsic è stata specificamente creata per abilitare la verifica del tipo in fase di compilazione per le
classi e gli oggetti incorporati, oltre che per le variabili e le funzioni globali. Non è dedicata all'uso generico, ma può
essere di aiuto per gli sviluppatori che desiderano abilitare la verifica del tipo in fase di compilazione con classi definite
in precedenza, in particolare se le classi sono state definite mediante ActionScript 1.0.
Questa parola chiave è supportata solo quando è utilizzata nei file di script esterni, non negli script scritti nel pannello
Azioni.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente mostra come abilitare la verifica del tipo in fase di compilazione per una classe definita in
precedenza mediante ActionScript 1.0. Il codice genera un errore in fase di compilazione poiché la chiamata a
myCircle.setRadius() invia come parametro un valore String anziché un valore Number. L'errore può essere
evitato trasformando il parametro in un valore Number (ad esempio, sostituendo "10" con 10).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 149
Elementi del linguaggio ActionScript
// The following code must be placed in a file named Circle.as
// that resides within your classpath:
intrinsic class Circle {
var radius:Number;
function Circle(radius:Number);
function getArea():Number;
function getDiameter():Number;
function setRadius(param_radius:Number):Number;
}
// This ActionScript 1.0 class definition may be placed in your FLA file.
// Circle class is defined using ActionScript 1.0
function Circle(radius) {
this.radius = radius;
this.getArea = function(){
return Math.PI*this.radius*this.radius;
};
this.getDiameter = function() {
return 2*this.radius;
};
this.setRadius = function(param_radius) {
this.radius = param_radius;
}
}
// ActionScript 2.0 code that uses the Circle class
var myCircle:Circle = new Circle(5);
trace(myCircle.getArea());
trace(myCircle.getDiameter());
myCircle.setRadius("10");
trace(myCircle.radius);
trace(myCircle.getArea());
trace(myCircle.getDiameter());
Vedere anche
Istruzione class
Istruzione private
class className{
private var name;
private function name() {
// your statements here
}
}
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Specifica che una variabile o una funzione sono disponibili solo per la classe (o relative sottoclassi) che le dichiara o
definisce. Per impostazione predefinita, una variabile o una funzione sono disponibili a qualsiasi chiamante. Utilizzare
questa parola chiave se si desidera limitare l'accesso a una variabile o funzione.
È possibile utilizzare questa parola chiave solo nelle definizioni di classe, non nelle definizioni di interfaccia.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 150
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 2.0
Parametri
name:String - Il nome della variabile o funzione che si desidera specificare come privata.
Esempio
L'esempio seguente mostra il modo in cui nascondere determinate proprietà all'interno di una classe utilizzando la
parola chiave private. Creare un nuovo file AS denominato Login.as.
class Login {
private var loginUserName:String;
private var loginPassword:String;
public function Login(param_username:String, param_password:String) {
this.loginUserName = param_username;
this.loginPassword = param_password;
}
public function get username():String {
return this.loginUserName;
}
public function set username(param_username:String):Void {
this.loginUserName = param_username;
}
public function set password(param_password:String):Void {
this.loginPassword = param_password;
}
}
Nella stessa directory di Login.as, creare un nuovo documento FLA o AS. Immettere il codice ActionScript seguente
nel fotogramma 1 della linea temporale.
import Login;
var gus:Login = new Login("Gus", "Smith");
trace(gus.username); // output: Gus
trace(gus.password); // output: undefined
trace(gus.loginPassword); // error
Dal momento che loginPassword è una variabile private, non è possibile accedervi da fuori del file di classe Login.as.
I tentativi di accedere alla variabile private generano un messaggio di errore.
Vedere anche
Istruzione public
Istruzione public
class className{
public var name;
public function name() {
// your statements here } }
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 151
Elementi del linguaggio ActionScript
Specifica che una variabile o una funzione sono disponibili a qualsiasi chiamante. Poiché le variabili e le funzioni per
impostazione predefinita sono pubbliche, questa parola chiave viene utilizzata principalmente per ragioni di stile. Ad
esempio, la si può utilizzare per motivi di continuità in un blocco di codice che contiene anche variabili private o
statiche.
Disponibilità
Flash Lite 2.0
Parametri
name:String - Il nome della variabile o funzione che si desidera specificare come pubblica.
Esempio
L'esempio seguente mostra come utilizzare le variabili public in un file di classe. Creare un nuovo file di classe
denominato User.as e immettere il codice seguente:
class User {
public var age:Number;
public var name:String;
}
Quindi, creare un nuovo file FLA o AS nella stessa directory e immettere il codice ActionScript seguente nel
fotogramma 1 della linea temporale:
import User;
var jimmy:User = new User();
jimmy.age = 27;
jimmy.name = "jimmy";
Se si trasforma una delle variabili public nella classe User in una variabile private, viene generato un errore quando si
tenta di accedere alla proprietà.
Vedere anche
Istruzione private
Istruzione return
return[expression]
Specifica il valore restituito da una funzione. L'istruzione return valuta expression e restituisce il risultato come
valore della funzione in cui viene eseguita. L'istruzione return fa in modo che l'esecuzione torni immediatamente alla
funzione di chiamata. Se l'istruzione return è utilizzata da sola, restituisce il valore undefined
Non è possibile eseguire return su più valori; se si tenta di eseguire questa operazione, viene restituito solo l'ultimo
valore. Nel seguente esempio, viene restituito c:
return a, b, c ;
Per fare in modo che vengano restituiti più valori, si consiglia di utilizzare un array o un oggetto.
Disponibilità
Flash Lite 2.0
Restituisce
String - Il parametro expression valutato, se fornito.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 152
Elementi del linguaggio ActionScript
Parametri
expression - Una stringa, un numero, un valore booleano, un array o un oggetto da valutare e restituire come valore
della funzione. Questo parametro è opzionale.
Esempio
L'esempio seguente utilizza l'istruzione return all'interno del corpo della funzione sum() per restituire il valore
aggiunto dei tre parametri. La successiva riga di codice chiama sum() e assegna il valore restituito alla variabile
newValue.
function sum(a:Number, b:Number, c:Number):Number {
return (a + b + c);
}
var newValue:Number = sum(4, 32, 78);
trace(newValue); // output: 114
Vedere anche
Funzione Array
Istruzione set
function set property(varName) {
// your statements here
}
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Consente l'impostazione implicita delle proprietà associate agli oggetti basati sulle classi definite nei file di classe
esterni. L'uso dei metodi set impliciti consente di modificare il valore di una proprietà dell'oggetto senza accedere alla
proprietà direttamente. I metodi impliciti get/set rappresentano un'abbreviazione sintattica del metodo
Object.addProperty() in ActionScript 1.
Disponibilità
Flash Lite 2.0
Parametri
property:String - Parola che fa riferimento alla proprietà a cui set accede; questo valore deve essere uguale al valore
utilizzato nel comando get corrispondente.
Esempio
L'esempio seguente crea una classe Login che mostra il modo in cui è possibile utilizzare la parola chiave set per
impostare le variabili private:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 153
Elementi del linguaggio ActionScript
class Login {
private var loginUserName:String;
private var loginPassword:String;
public function Login(param_username:String, param_password:String) {
this.loginUserName = param_username;
this.loginPassword = param_password;
}
public function get username():String {
return this.loginUserName;
}
public function set username(param_username:String):Void {
this.loginUserName = param_username;
}
public function set password(param_password:String):Void {
this.loginPassword = param_password;
}
}
In un file FLA o AS che si trova nella stessa directory di Login.as, aggiungere il codice ActionScript seguente al
fotogramma 1 sulla linea temporale:
var gus:Login = new Login("Gus", "Smith");
trace(gus.username); // output: Gus
gus.username = "Rupert";
trace(gus.username); // output: Rupert
In questo esempio, la funzione get viene eseguita quando viene tracciato il valore. La funzione set viene attivata solo
quando a essa si passa un valore, come mostrato nella riga seguente:
gus.username = "Rupert";
Vedere anche
Funzione getProperty
Istruzione set variable
set("variableString",expression)
Assegna un valore a una variabile. Una variabile è un "contenitore" di dati; il contenitore resta sempre invariato, ma il
contenuto può variare. Mediante la modifica del valore di una variabile durante la riproduzione del file SWF, è
possibile registrare e salvare informazioni sulle azioni svolte dall'utente, registrare i valori che vengono modificati
durante la riproduzione del file o verificare se una condizione è true o false.
Le variabili possono contenere qualsiasi tipo di dati (quali stringa, numero, booleano, oggetto o clip filmato). La linea
temporale di ciascun file SWF e clip filmato dispone del proprio set di variabili, e ogni variabile ha il proprio valore,
indipendente dalle variabili delle altre linee temporali.
La tipizzazione forte dei dati non è supportata all'interno delle istruzioni set. Se si utilizza questa istruzione per
impostare una variabile su un valore il cui tipo di dati è diverso da quello associato alla variabile in un file di classe, non
viene generato alcun errore di compilazione.
Una lieve ma importante differenza da ricordare, è il fatto che il parametro variableString è una stringa, non un
nome di variabile. Se si trasmette un nome di variabile esistente come primo parametro a set() senza racchiudere il
nome tra virgolette (""), la variabile viene valutata prima che le venga assegnato il valore di expression. Ad esempio,
se si crea una variabile stringa chiamata myVariable e le si assegna il valore "Tuesday" dimenticando poi di utilizzare
le virgolette, viene erroneamente creata una nuova variabile chiamata Tuesday contenente il valore che si voleva
assegnare a myVariable:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 154
Elementi del linguaggio ActionScript
var myVariable:String = "Tuesday";
set (myVariable, "Saturday");
trace(myVariable); // outputs Tuesday
trace(Tuesday); // outputs Saturday
Questa situazione può essere evitata utilizzando le virgolette (""):
set ("myVariable", "Saturday");
trace(myVariable); //outputs Saturday
Disponibilità
Flash Lite 2.0
Parametri
variableString:String - Stringa che indica una variabile che contiene il valore del parametro expression.
Esempio
Nell'esempio seguente viene assegnato il valore "Jakob" alla variabile name.
set("name", "Jakob");
trace(name);
Il codice seguente viene ripetuto tre volte e crea tre nuove variabili denominate caption0, caption1 e caption2:
for (var i = 0; i < 3; i++) {
set("caption" + i, "this is caption " + i);
}
trace(caption0);
trace(caption1);
trace(caption2);
Istruzione static
class className{
static var name;
static function name() {
// your statements here } }
Nota: per utilizzare questa parola chiave, è necessario specificare ActionScript 2.0 e Flash Player 6 o superiore nella
scheda Flash della finestra di dialogo Impostazioni pubblicazione del file FLA. Questa parola chiave è supportata solo
quando è utilizzata nei file di script esterni, non negli script scritti nel pannello Azioni.
Specifica che una variabile o una funzione vengono create solo una volta per ogni classe e non in ogni oggetto basato
sulla classe.
È possibile accedere a un membro di classe statico senza creare un'istanza della classe, utilizzando la sintassi
someClassName.name. Se si crea un'istanza della classe, è possibile anche accedere a un membro statico utilizzando
l'istanza, ma solo attraverso una funzione non statica che accede al membro statico.
Questa parola chiave può essere utilizzata solo nelle definizioni di classe, non nelle definizioni di interfaccia.
Disponibilità
Flash Lite 2.0
Parametri
name:String - Il nome della variabile o funzione che si desidera specificare come statica.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 155
Elementi del linguaggio ActionScript
Esempio
L'esempio seguente mostra il modo in cui è possibile utilizzare la parola chiave static per creare un contatore che
tenga traccia del numero di istanze che sono state create per la classe. Dal momento che la variabile numInstances è
static, viene creata solo una volta per l'intera classe e non per ogni singola istanza. Creare un nuovo file AS denominato
Users.as e immettere il codice seguente:
class Users {
private static var numInstances:Number = 0;
function Users() {
numInstances++;
}
static function get instances():Number {
return numInstances;
}
}
Creare un documento FLA o AS nella stessa directory e immettere il codice ActionScript seguente nel fotogramma 1
della linea temporale:
trace(Users.instances);
var user1:Users = new Users();
trace(Users.instances);
var user2:Users = new Users();
trace(Users.instances);
Vedere anche
Istruzione private
Istruzione super
super.method([arg1, ..., argN])
super([arg1, ..., argN])
Il primo stile di sintassi può essere utilizzato nel corpo del metodo di un oggetto per chiamare la versione superclasse
di un metodo, e può facoltativamente trasmettere parametri (arg1 ... argN) al metodo della superclasse. Questo è
utile per creare metodi della sottoclasse che oltre ad aggiungere comportamenti supplementari ai metodi della
superclasse, li chiamano affinché eseguano il loro comportamento originale.
Il secondo stile di sintassi può essere utilizzato nel corpo di una funzione di costruzione per chiamare la versione
superclasse della funzione di costruzione, a cui può facoltativamente trasmettere parametri. Questo è utile per creare
una sottoclasse che oltre a eseguire un'ulteriore inizializzazione, chiama la funzione di costruzione della superclasse
affinché esegua l'inizializzazione della superclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Entrambe le forme chiamano una funzione, che può restituire qualsiasi valore.
Parametri
method:Function - Il metodo da chiamare nella superclasse.
argN - Parametri opzionali che vengono trasmessi alla versione superclasse del metodo (sintassi 1) o alla funzione di
costruzione della superclasse (sintassi 2).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 156
Elementi del linguaggio ActionScript
Istruzione switch
switch (expression){caseClause: [defaultClause:] }
Crea una struttura ad albero per le istruzioni ActionScript. Come nel caso dell'istruzione if, l'istruzione switch prova
una condizione ed esegue le istruzioni se la condizione restituisce il valore true. Tutte le istruzioni switch dovrebbero
comprendere un'etichetta case default che a sua volta dovrebbe comprendere un'istruzione break che consente di
uscire dall'istruzione switch quando viene soddisfatta la condizione. Un'etichetta case che non consente di uscire
dall'istruzione non include un'istruzione break.
Disponibilità
Flash Lite 1.0
Parametri
expression - Qualsiasi espressione.
Esempio
Nell'esempio seguente, se il parametro String.fromCharCode(Key.getAscii()) restituisce A, viene eseguita
l'istruzione trace() che segue case "A"; se il parametro restituisce a, viene eseguita l'istruzione trace() che segue
case "a"; e così via. Se nessuna espressione case corrisponde al parametro
String.fromCharCode(Key.getAscii()), viene eseguita l'istruzione trace() che segue la parola chiave default.
var listenerObj:Object = new Object();
listenerObj.onKeyDown = function() {
switch (String.fromCharCode(Key.getAscii())) {
case "A" :
trace("you pressed A");
break;
case "a" :
trace("you pressed a");
break;
case "E" :
case "e" :
trace("you pressed E or e");
break;
case "I" :
case "i" :
trace("you pressed I or i");
break;
default :
trace("you pressed some other key");
break;
}
};
Key.addListener(listenerObj);
Vedere anche
Operatore === (uguaglianza rigorosa)
Istruzione throw
throw expression
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 157
Elementi del linguaggio ActionScript
Crea, o genera, un errore che può essere gestito, o rilevato, mediante un blocco di codice catch{}. Se un'eccezione non
viene rilevata da un blocco catch, la rappresentazione sotto forma di stringa del valore generato viene inviata al
pannello Output.
Tipicamente, vengono generate istanze della classe Error o delle sue sottoclassi (consultare la sezione degli esempi).
Disponibilità
Flash Lite 2.0
Parametri
expression:Object - Un oggetto o espressione ActionScript.
Esempio
In questo esempio, una funzione denominata checkEmail() verifica se la stringa che le viene passata è un indirizzo
e-mail dal formato corretto. Se la stringa non contiene il simbolo @, viene generato un errore.
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new Error("Invalid email address");
}
}
checkEmail("someuser_theirdomain.com");
Quindi, il codice seguente chiama la funzione checkEmail() all'interno del blocco di codice try. Se email_txt non
contiene un indirizzo e-mail valido, il messaggio di errore viene visualizzato in un campo di testo (error_txt).
try {
checkEmail("Joe Smith");
}
catch (e) {
error_txt.text = e.toString();
}
Nell'esempio seguente, viene generata una sottoclasse della classe Error. La funzione checkEmail() viene modificata
in modo da generare un'istanza di tale classe.
// Define Error subclass InvalidEmailError // In InvalidEmailError.as: class
InvalidEmailAddress extends Error { var message = "Invalid email address."; }
In un file FLA o AS, immettere il codice ActionScript seguente nel fotogramma 1 della linea temporale:
import InvalidEmailAddress;
function checkEmail(email:String) {
if (email.indexOf("@") == -1) {
throw new InvalidEmailAddress();
}
}
try {
checkEmail("Joe Smith");
}
catch (e) {
this.createTextField("error_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
error_txt.autoSize = true;
error_txt.text = e.toString();
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 158
Elementi del linguaggio ActionScript
Vedere anche
Error
Istruzione try..catch..finally
try {// ... try block ... }
finally { // ... finally block ... }
try { // ... try block ... }
catch(error [:ErrorType1]) // ... catch block ... }
[catch(error[:ErrorTypeN]) { // ... catch block ... }]
[finally { // ... finally block ... }]
Si racchiude un blocco di codice nel quale può verificarsi un errore, quindi si risponde all'errore. Se un qualsiasi codice
all'interno del blocco di codice try genera un errore (mediante l'istruzione throw), il controllo passa al blocco catch
(se presente), quindi al blocco di codice finally (se presente). Il blocco finally viene sempre eseguito, che sia stato
generato un errore o meno. Se il codice nel blocco try non genera un errore (ovvero se il blocco try viene completato
normalmente), il codice nel blocco finally viene comunque eseguito. Il blocco finally viene eseguito anche se il
blocco try viene chiuso mediante un'istruzione return.
Un blocco try deve essere seguito da un blocco catch, o da un blocco finally, o da entrambi. Un singolo blocco try
può avere più blocchi catch, ma solo un blocco finally. È possibile nidificare i blocchi try per tutti i numeri di livelli
(profondità) desiderati.
Il parametro error specificato in un gestore catch deve essere un semplice identificatore come e o theException o
x. È possibile digitare la variabile anche in un gestore catch. Quando sono utilizzati con più blocchi catch, gli errori
digitati consentono di rilevare più tipi di errore generati da un unico blocco try.
Se l'eccezione generata è un oggetto, il tipo corrisponde se l'oggetto generato è una sottoclasse del tipo specificato. Se
viene generato un errore di un tipo specifico, viene eseguito il blocco catch che gestisce l'errore corrispondente. Se
viene generata un'eccezione di un tipo diverso da quello specificato, il blocco catch non viene eseguito e l'eccezione
viene automaticamente espulsa dal blocco try verso un gestore catch corrispondente.
Se un errore viene generato all'interno di una funzione, e la funzione non comprende un gestore catch, l'interprete di
ActionScript esce da quella funzione e da tutte le funzioni di chiamata, finché non viene trovato un blocco catch. Nel
corso di questo processo, i gestori finally vengono chiamati a tutti i livelli.
Disponibilità
Flash Lite 2.0
Parametri
error:Object - L'espressione generata da un'istruzione throw, solitamente un'istanza della classe Error o di una delle
sue sottoclassi.
Esempio
L'esempio seguente mostra come creare un'istruzione try..finally. Dal momento che il codice nel blocco finally
viene sempre eseguito, di solito viene utilizzato per eseguire le eventuali operazioni di pulizia dopo l'esecuzione di un
blocco try. Nell'esempio seguente setInterval() chiama una funzione ogni 1000 millisecondi (1 secondo). Se si
verifica un errore viene generato un errore, che viene rilevato da un blocco catch. Il blocco finally viene sempre
eseguito, a prescindere dal fatto che si sia verificato un errore. Dal momento che viene utilizzata la funzione
setInterval(), è necessario collocare clearInterval() nel blocco finally per garantire che l'intervallo venga
cancellato dalla memoria.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 159
Elementi del linguaggio ActionScript
myFunction = function () {
trace("this is myFunction");
};
try {
myInterval = setInterval(this, "myFunction", 1000);
throw new Error("my error");
}
catch (myError:Error) {
trace("error caught: "+myError);
}
finally {
clearInterval(myInterval);
trace("error is cleared");
}
Nell'esempio seguente, il blocco finally viene utilizzato per eliminare un oggetto ActionScript, a prescindere dal fatto
che si sia verificato un errore. Creare un nuovo file AS denominato Account.as.
class Account {
var balance:Number = 1000;
function getAccountInfo():Number {
return (Math.round(Math.random() * 10) % 2);
}
}
Creare un documento FLA o AS nella stessa directory e immettere il codice ActionScript seguente nel fotogramma 1
della linea temporale:
import Account;
var account:Account = new Account();
try {
var returnVal = account.getAccountInfo();
if (returnVal != 0) {
throw new Error("Error getting account information.");
}
}
finally {
if (account != null) {
delete account;
}
}
L'esempio seguente mostra un'istruzione try..catch. Il codice all'interno del blocco try viene eseguito. Se viene
generata un'eccezione da parte di un codice qualsiasi all'interno del blocco try, il controllo passa al blocco catch, che
visualizza il messaggio di errore in un campo di testo mediante il metodo Error.toString().
Creare un nuovo documento FLA o AS nella stessa directory e immettere il codice ActionScript seguente nel
fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 160
Elementi del linguaggio ActionScript
import Account;
var account:Account = new Account();
try {
var returnVal = account.getAccountInfo();
if (returnVal != 0) {
throw new Error("Error getting account information.");
}
trace("success");
}
catch (e) {
this.createTextField("status_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
status_txt.autoSize = true;
status_txt.text = e.toString();
}
L'esempio seguente mostra un blocco di codice try con più blocchi catch tipizzati. A seconda del tipo di errore che
si è verificato, il blocco di codice try genera un tipo diverso di oggetto. In questo caso, myRecordSet è un'istanza di
una classe (ipotetica) denominata RecordSet il cui metodo sortRows() può generare due tipi di errore:
RecordSetException e MalformedRecord.
Nell'esempio seguente, gli oggetti RecordSetException e MalformedRecord sono sottoclassi della classe Error. Ognuno
è definito nel relativo file di classe AS.
// In RecordSetException.as:
class RecordSetException extends Error {
var message = "Record set exception occurred.";
}
// In MalformedRecord.as:
class MalformedRecord extends Error {
var message = "Malformed record exception occurred.";
}
All'interno del metodo sortRows() della classe RecordSet, viene generato uno degli errori precedentemente definiti,
a seconda del tipo di eccezione che si è verificata. L'esempio seguente mostra il possibile aspetto di tale codice:
class RecordSet {
function sortRows() {
var returnVal:Number = randomNum();
if (returnVal == 1) {
throw new RecordSetException();
}
else if (returnVal == 2) {
throw new MalformedRecord();
}
}
function randomNum():Number {
return Math.round(Math.random() * 10) % 3;
}
}
Infine, in un altro file AS o script FLA, il codice seguente richiama il metodo sortRows() su un'istanza della classe
RecordSet. Il metodo definisce i blocchi catch per ciascun tipo di errore che viene generato da sortRows()
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 161
Elementi del linguaggio ActionScript
import RecordSet;
var myRecordSet:RecordSet = new RecordSet();
try {
myRecordSet.sortRows();
trace("everything is fine");
}
catch (e:RecordSetException) {
trace(e.toString());
}
catch (e:MalformedRecord) {
trace(e.toString());
}
Vedere anche
Error
Istruzione var
var variableName [= value1][...,variableNameN[=valueN]]
Utilizzata per dichiarare le variabili locali. Se si dichiarano delle variabili all'interno di una funzione, tali variabili sono
locali, vengono definite per la funzione e scadono al termine della chiamata della funzione. Più precisamente, una
variabile definita mediante var è locale rispetto al blocco di codice che la contiene. I blocchi di codice sono
contrassegnati mediante le parentesi graffe ({}).
Se si dichiarano delle variabili fuori da una funzione, tali variabili sono disponibili durante tutta la linea temporale che
contiene l'istruzione.
Non è possibile dichiarare come variabile locale una variabile che abbia come area di validità un altro oggetto.
my_array.length = 25; // ok
var my_array.length = 25; // syntax error
Quando si utilizza var, la variabile può essere definita mediante la tipizzazione forte dei dati.
È possibile dichiarare più variabili in un'istruzione, separando le dichiarazioni mediante virgole (tuttavia, questa
sintassi può ridurre la chiarezza del codice):
var first:String = "Bart", middle:String = "J.", last:String = "Bartleby";
Nota: è anche necessario utilizzare var per dichiarare le proprietà all'interno delle definizioni di classe negli script
esterni. I file di classe supportano inoltre aree di validità delle variabili public, private e static.
Disponibilità
Flash Lite 2.0
Parametri
variableName:String - Un identificatore.
Esempio
Il codice ActionScript seguente crea un nuovo array di nomi di prodotto. Array.push aggiunge un elemento alla fine
dell'array. Se si desidera utilizzare la tipizzazione forte, è essenziale utilizzare la parola chiave var. Senza var prima di
product_array, vengono generati degli errori quando si tenta di utilizzare la tipizzazione forte.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 162
Elementi del linguaggio ActionScript
var product_array:Array = new Array("MX 2004", "Studio", "Dreamweaver", "Flash", "ColdFusion",
"Contribute", "Breeze");
product_array.push("Flex");
trace(product_array);
// output: MX 2004,Studio,Dreamweaver,Flash,ColdFusion,Contribute,Breeze,Flex
Istruzione while
while(condition) { statement(s); }
Valuta una condizione e, se questa restituisce true, esegue un'istruzione o una serie di istruzioni prima di tornare a
valutare la condizione. Dopo che la condizione ha restituito false, l'istruzione (o la serie di istruzioni) viene ignorata
e il ciclo termina.
L'istruzione while esegue le serie di operazioni seguenti. Ogni ripetizione dal punto 1 al punto 4 viene definita
iterazione del ciclo. La condition viene nuovamente verificata all'inizio di ogni iterazione, come nei punti seguenti:
• L'espressione condition viene valutata.
• Se la condizione restituisce true o un valore convertibile al valore booleano true, ad esempio un numero diverso
da 0, passare al punto 3. In caso contrario, l'istruzione while viene completata e l'esecuzione riprende
dall'istruzione successiva al ciclo while.
• Eseguire il blocco di istruzioni statement(s).
• Andare al punto 1.
La ripetizione ciclica viene solitamente utilizzata per eseguire un'azione finché la variabile counter è inferiore al valore
specificato. Alla fine di ogni ciclo, la variabile counter viene incrementata finché non viene raggiunto il valore
specificato. A quel punto, la condizione non è più true e il ciclo termina.
Le parentesi graffe ({}) utilizzate per racchiudere il blocco di istruzioni che devono essere eseguite dall'istruzione
while non sono necessarie se viene eseguita una sola istruzione.
Disponibilità
Flash Lite 1.0
Parametri
condition:Boolean - Espressione che restituisce true o false.
Esempio
Nell'esempio seguente, l'istruzione while viene utilizzata per provare un'espressione. Quando il valore di i è inferiore
a 20, il valore di i viene tracciato. Quando la condizione non è più true, il ciclo viene terminato.
var i:Number = 0;
while (i < 20) {
trace(i);
i += 3;
}
Il risultato seguente viene visualizzato nel pannello Output.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 163
Elementi del linguaggio ActionScript
0
3
6
9
12
15
18
Vedere anche
Istruzione continue
Istruzione with
with (object:Object) { statement(s); }
Consente di specificare un oggetto (come un clip filmato) con il parametro object e valutare espressioni e azioni
all'interno di quell'oggetto mediante il parametro statement(s). In questo modo, non è necessario scrivere più volte il
nome o il percorso dell'oggetto.
Il parametro object diventa il contesto in cui le proprietà, le variabili e le funzioni del parametro statement(s) vengono
lette. Ad esempio, se object è my_array e due delle proprietà specificate sono length e concat, queste proprietà
vengono automaticamente lette come my_array.length e my_array.concat. In un altro esempio, se object è
state.california, qualsiasi azione o istruzione interna all'istruzione with viene chiamata dall'interno dell'istanza
california.
Per trovare il valore di un identificatore nel parametro statement(s), ActionScript lo cerca in tutti i livelli della catena,
secondo un ordine prestabilito, partendo dall'inizio della catena delle aree di validità specificata da object.
La catena delle aree di validità utilizzata dall'istruzione with per trovare gli identificatori comincia con il primo
elemento dell'elenco seguente e continua fino all'ultimo elemento:
• L'oggetto specificato nel parametro object nell'istruzione with più interna.
• L'oggetto specificato nel parametro object nell'istruzione with più esterna.
• L'oggetto Activation. (Un oggetto provvisorio creato automaticamente quando viene chiamata una funzione che
contiene le variabili locali chiamate nella funzione).
• Il clip filmato contenente lo script in fase di esecuzione.
• L'oggetto Global (oggetti incorporati quali Math e String).
Per impostare una variabile all'interno di un'istruzione with, è necessario aver dichiarato la variabile fuori
dall'istruzione with, oppure immettere il percorso completo della linea temporale in cui la variabile dovrà risiedere.
Se si imposta una variabile in un'istruzione with senza dichiararla, l'istruzione with cerca il valore in base alla catena
delle aree di validità. Se la variabile non esiste già, il nuovo valore viene impostato sulla linea temporale da cui
l'istruzione with era stata chiamata.
Invece di with(), è possibile utilizzare i percorsi diretti. Se si ritiene che la digitazione dei percorsi sia poco pratica, è
possibile creare una variabile locale in cui memorizzare il percorso che potrà essere riutilizzato nel codice, come
nell'esempio ActionScript seguente:
var shortcut = this._parent._parent.name_txt; shortcut.text = "Hank"; shortcut.autoSize = true;
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 164
Elementi del linguaggio ActionScript
Parametri
object:Object - Un'istanza di un clip filmato o di un oggetto ActionScript.
Esempio
L'esempio seguente imposta le proprietà _x e _y dell'istanza someOther_mc, quindi indica a someOther_mc di andare
al fotogramma 3 e arrestarsi.
with (someOther_mc) {
_x = 50;
_y = 100;
gotoAndStop(3);
}
Il frammento di codice seguente mostra come scrivere il codice precedente senza ricorrere a un'istruzione with.
someOther_mc._x = 50;
someOther_mc._y = 100;
someOther_mc.gotoAndStop(3);
L'istruzione with è utile per accedere a più elementi contemporaneamente in un elenco delle catene delle aree di
validità. Nell'esempio seguente, l'oggetto Math incorporato viene collocato all'inizio della catena delle aree di validità.
L'impostazione di Math come oggetto predefinito risolve gli identificatori cos, sin e PI rispettivamente Math.cos,
Math.sin e Math.PI. Gli identificatori a, x, y e r non sono metodi o proprietà dell'oggetto Math, ma poiché sono
presenti nell'area di attivazione della funzione polar(), risolvono alle variabili locali corrispondenti.
function polar(r:Number):Void {
var a:Number, x:Number, y:Number;
with (Math) {
a = PI * pow(r, 2);
x = r * cos(PI);
y = r * sin(PI / 2);
}
trace("area = " + a);
trace("x = " + x);
trace("y = " + y);
} polar(3);
Il risultato seguente viene visualizzato nel pannello Output.
area = 28.2743338823081
x = -3
y = 3
Comandi fscommand2
I comandi seguenti sono disponibili per la funzione fscommand2(). Per una descrizione della funzione
fscommand2(), vedere fscommand2 Function in "Funzioni globali".
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 165
Elementi del linguaggio ActionScript
Comandi fscommand2
Comando
Descrizione
ExtendBacklightDuration Estende la durata della retroilluminazione per un periodo di tempo specifico.
FullScreen
Imposta le dimensioni dell'area di visualizzazione da utilizzare per il rendering.
GetBatteryLevel
Restituisce il livello corrente della batteria.
GetDevice
Imposta un parametro che identifica il dispositivo su cui è in esecuzione Flash Lite.
GetDeviceID
Imposta un parametro che rappresenta l'identificatore univoco del dispositivo (ad
esempio, il numero di serie).
GetFreePlayerMemory
Restituisce la quantità di memoria heap, espressa in KB, attualmente disponibile per
Flash Lite.
GetMaxBatteryLevel
Restituisce il livello massimo della batteria del dispositivo.
GetMaxSignalLevel
Restituisce il livello di potenza massimo del segnale, sotto forma di valore numerico.
GetMaxVolumeLevel
Restituisce il livello massimo del volume del dispositivo, sotto forma di valore numerico.
GetNetworkConnectionN Restituisce il nome della connessione di rete attiva o predefinita.
ame
GetNetworkConnectStat
us
Restituisce un valore che indica lo stato di connessione corrente alla rete.
GetNetworkGeneration
Restituisce la generazione della rete wireless mobile corrente (ad esempio, 2G, seconda
generazione).
GetNetworkName
Imposta un parametro sul nome della rete corrente.
GetNetworkRequestStatu Restituisce un valore che indica lo stato della richiesta HTTP più recente.
s
GetNetworkStatus
Restituisce un valore che indica lo stato di rete per il telefono (ovvero se è registrata una
rete e se il telefono è attualmente in roaming).
GetPlatform
Imposta un parametro che identifica la piattaforma corrente, che descrive in generale
la classe del dispositivo.
GetPowerSource
Restituisce un valore che indica se l'alimentazione è attualmente fornita da una batteria
o da una fonte di alimentazione esterna.
GetSignalLevel
Restituisce la potenza corrente del segnale, sotto forma di valore numerico.
GetSoftKeyLocation
Restituisce un valore che indica la posizione dei tasti virtuali sul dispositivo.
GetTotalPlayerMemory
Restituisce la quantità totale di memoria heap, espressa in kilobyte, disponibile per
Flash Lite.
GetVolumeLevel
Restituisce il livello corrente del volume del dispositivo, sotto forma di valore numerico.
Quit
Indica al lettore di Flash Lite di interrompere la riproduzione e uscire.
ResetSoftKeys
Ripristina le impostazioni originali dei tasti virtuali.
SetFocusRectColor
Imposta il colore del rettangolo di attivazione su qualsiasi colore.
SetInputTextType
Specifica la modalità di apertura dei campi di testo di input.
SetSoftKeys
Mappa nuovamente i tasti virtuali di un dispositivo mobile.
StartVibrate
Attiva la vibrazione del telefono.
StopVibrate
Interrompe la vibrazione del telefono, se è attualmente in funzione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 166
Elementi del linguaggio ActionScript
Comando fscommand2 ExtendBacklightDuration
ExtendBacklightDuration
Estende la durata della retroilluminazione per un periodo di tempo specifico.
Se la durata è superiore a zero, questo comando specifica la quantità di tempo in secondi (fino a un massimo di
sessanta) in cui la retroilluminazione deve restare accesa. Se l'intervallo di tempo specificato trascorre senza che venga
effettuata una chiamata aggiuntiva a questo comando, il comportamento della retroilluminazione ritorna alla durata
predefinita. Se la durata è zero, il comportamento della retroilluminazione torna immediatamente al comportamento
predefinito.
Nota: questa funzione dipende dal sistema. Ad esempio, alcuni sistemi limitano la durata totale massima della
retroilluminazione.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
ExtendBacklightDuration
duration La durata della
-1: non supportato.
retroilluminazione, in secondi.
Valore massimo di 60 secondi.
0: si è verificato un errore e non è stato possibile
completare l'operazione.
1: esito positivo.
Disponibilità
Flash Lite 2.0
Esempio
Il seguente esempio estende la durata della retroilluminazione per 45 secondi:
status = FSCommand2("ExtendBacklightDuration", 45)
Comando fscommand2 FullScreen
FullScreen
Imposta le dimensioni dell'area di visualizzazione da utilizzare per il rendering.
La dimensione può essere una variabile definita o un valore di stringa costante con uno di questi valori: true (schermo
intero) o false (inferiore allo schermo intero). Qualunque altro valore viene considerato false.
Nota: questo comando è supportato solo quando Flash Lite è in esecuzione in modalità autonoma, e non quando è in
esecuzione nel contesto di un'altra applicazione (ad esempio, come plug-in di un browser).
Comando
Parametri
Valore restituito
FullScreen
size
-1: non supportato.
0: supportato.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la dimensione dell'area di visualizzazione a schermo intero:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 167
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
status = fscommand2("FullScreen", true);
Comando fscommand2 GetBatteryLevel
GetBatteryLevel
Restituisce il livello corrente della batteria. Si tratta di un valore numerico compreso tra 0 e il valore massimo restituito
dalla variabile GetMaxBatteryLevel.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetBatteryLevel
Nessuno.
-1: non supportato.
Altri valori numerici: il livello corrente della batteria.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la variabile battLevel sul livello corrente della batteria:
battLevel = fscommand2("GetBatteryLevel");
Comando fscommand2 GetDevice
GetDevice
Imposta un parametro che identifica il dispositivo su cui è in esecuzione Flash Lite. Questo identificatore corrisponde
generalmente al nome del modello.
Comando
Parametri
Valore restituito
GetDevice
device Stringa che riceve l'identificatore del dispositivo. Può
-1: non supportato.
trattarsi del nome di una variabile o di un valore di stringa che
0: supportato..
contiene il nome di una variabile.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna l'identificatore del dispositivo alla variabile device:
status = fscommand2("GetDevice", "device");
Seguono alcuni risultati di esempio e i dispositivi a cui corrispondono:
D506iUn telefono Mitsubishi 506i. DFOMA1Un telefono Mitsubishi FOMA1. F506iUn telefono Fujitsu 506i.
FFOMA1Un telefono Fujitsu FOMA1. N506iUn telefono NEC 506i. NFOMA1Un telefono NEC FOMA1. Nokia3650Un
telefono Nokia 3650. p506i Un telefono Panasonic 506i. PFOMA1Un telefono Panasonic FOMA1. SH506iUn telefono
Sharp 506i. SHFOMA1Un telefono Sharp FOMA1. SO506iUn telefono Sony 506i.
Comando fscommand2 GetDeviceID
GetDeviceID
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 168
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Imposta un parametro che rappresenta l'identificatore univoco del dispositivo (ad esempio, il numero di serie).
Comando
Parametri
Valore restituito
GetDeviceID
idUna stringa che riceve l'identificatore del dispositivo. Può
-1: non supportato.
trattarsi del nome di una variabile o di un valore di stringa che
0: supportato.
contiene il nome di una variabile.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna l'identificatore univoco alla variabile deviceID:
status = fscommand2("GetDeviceID", "deviceID");
Comando fscommand2 GetFreePlayerMemory
GetFreePlayerMemory
Restituisce la quantità di memoria heap, espressa in KB, attualmente disponibile per Flash Lite.
Comando
Parametri
Valore restituito
GetFreePlayerMemory
Nessuno
-1: non supportato.
0 o valore positivo: kilobyte di memoria heap
disponibili.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta lo stato in modo che sia uguale alla quantità di memoria libera:
status = fscommand2("GetFreePlayerMemory");
Comando fscommand2 GetMaxBatteryLevel
GetMaxBatteryLevel
Restituisce il livello massimo della batteria del dispositivo. Si tratta di un valore numerico maggiore di 0.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetMaxBatteryLevel
Nessuno
-1: non supportato.
Altri valori: il livello massimo della batteria.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la variabile maxBatt sul livello massimo della batteria:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 169
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
maxBatt = fscommand2("GetMaxBatteryLevel");
Comando fscommand2 GetMaxSignalLevel
GetMaxSignalLevel
Restituisce il livello di potenza massimo del segnale, sotto forma di valore numerico.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetMaxSignalLevel
Nessuno
-1: non supportato.
Altri valori numerici: il livello massimo del segnale.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna la potenza massima del segnale alla variabile sigStrengthMax:
sigStrengthMax = fscommand2("GetMaxSignalLevel");
Comando fscommand2 GetMaxVolumeLevel
GetMaxVolumeLevel
Restituisce il livello massimo del volume del dispositivo, sotto forma di valore numerico.
Comando
Parametri
GetMaxVolumeLevel
Nessuno
Valore restituito
-1: non supportato.
Altri valori: il livello massimo del volume.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la variabile maxvolume sul livello di volume massimo del dispositivo:
maxvolume = fscommand2("GetMaxVolumeLevel");
trace (maxvolume); // output: 80
Comando fscommand2 GetNetworkConnectionName
GetNetworkConnectionName
Restituisce il nome della connessione di rete attiva o predefinita. Nel caso dei dispositivi mobili, questa connessione è
anche nota come punto di accesso.
Nota: questo comando non è supportato dai dispositivi BREW.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 170
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando
Parametri
Valore restituito
GetNetworkConnectionName
Nessuno
-1: non supportato.
0: esito positivo: restituisce il nome della connessione
di rete attiva.
1: esito positivo: restituisce il nome della connessione
di rete predefinita.
2: impossibile recuperare il nome della connessione.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente restituisce il nome della connessione di rete attiva o predefinita nell'argomento
myConnectionName:
status = FSCommand2("GetNetworkConnectionName", "myConnectionName");
Comando fscommand2 GetNetworkConnectStatus
GetNetworkConnectStatus
Restituisce un valore che indica lo stato di connessione corrente alla rete.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetNetworkConnectStatus
Nessuno
-1: non supportato.
0: è attualmente presente una connessione di rete
attiva.
1: il dispositivo sta tentando di connettersi alla
rete.
2: non è attualmente presente alcuna connessione
di rete attiva.
3: la connessione di rete è sospesa.
4: non è possibile determinare la connessione di
rete.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna lo stato della connessione di rete alla variabile connectstatus, quindi utilizza
un'istruzione switch per aggiornare un campo di testo con lo stato della connessione:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 171
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
connectstatus = FSCommand2("GetNetworkConnectStatus");
switch (connectstatus) {
case -1 :
_root.myText += "connectstatus not supported" + "\n";
break;
case 0 :
_root.myText += "connectstatus shows active connection" + "\n";
break;
case 1 :
_root.myText += "connectstatus shows attempting connection" + "\n";
break;
case 2 :
_root.myText += "connectstatus shows no connection" + "\n";
break;
case 3 :
_root.myText += "connectstatus shows suspended connection" + "\n";
break;
case 4 :
_root.myText += "connectstatus shows indeterminable state" + "\n";
break;
}
Comando fscommand2 GetNetworkGeneration
GetNetworkGeneration
Restituisce la generazione della rete wireless mobile corrente (ad esempio, 2G, seconda generazione).
Comando
Parametri
Valore restituito
GetNetworkGeneration
Nessuno
-1: non supportato
0: generazione di rete wireless mobile
sconosciuta
1: 2G
2: 2.5G
3: 3G
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente mostra la sintassi necessaria per restituire la generazione della rete:
status = fscommand2("GetNetworkGeneration");
Comando fscommand2 GetNetworkName
GetNetworkName
Imposta un parametro sul nome della rete corrente.
Nota: questo comando non è supportato dai dispositivi BREW.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 172
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando
Parametri
Valore restituito
GetNetworkName
networkName Una stringa che rappresenta il
-1: non supportato.
nome di rete. Può trattarsi del nome di una
variabile o di un valore di stringa che contiene 0: non è registrata alcuna rete.
il nome di una variabile.
1: la rete è registrata, ma il nome di
rete non è conosciuto.
Se la rete è registrata ed è possibile
determinarne il nome, networkname viene 2: la rete è registrata e il nome di rete
impostato sul nome della rete; in caso
è conosciuto.
contrario, viene impostato sulla stringa vuota.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna il nome della rete corrente al parametro myNetName e un valore di status alla variabile
netNameStatus:
netNameStatus = fscommand2("GetNetworkName", "myNetName");
Comando fscommand2 GetNetworkRequestStatus
GetNetworkRequestStatus
Restituisce un valore che indica lo stato della richiesta HTTP più recente.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetNetworkRequestStatus
Nessuno
-1: il comando non è supportato.
0: è presente una richiesta in sospeso ("pending"), è
stata stabilita una connessione di rete, è stato risolto il
nome host del server ed è stata effettuata una
connessione al server.
1: è presente una richiesta in sospeso ("pending") e si
sta creando una connessione di rete.
2: è presente una richiesta in sospeso ("pending") ma
non è ancora stata stabilita una connessione di rete.
3: è presente una richiesta in sospeso ("pending"), è
stata stabilita una connessione di rete e si sta risolvendo
il nome host del server.
4: la richiesta non è riuscita a causa di un errore di rete.
5: la richiesta non è riuscita a causa di un errore nella
connessione al server.
6: il server ha restituito un errore HTTP (ad esempio,
404).
7: la richiesta non è riuscita a causa di un errore
nell'accesso al server DNS o nella risoluzione del nome
del server.
8: la richiesta è stata completata correttamente.
9: la richiesta non è riuscita a causa di un timeout. 10: la
richiesta non è ancora stata effettuata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 173
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna lo stato della richiesta HTTP più recente alla variabile requeststatus, quindi utilizza
un'istruzione switch per aggiornare un campo di testo con lo stato:
requeststatus = fscommand2("GetNetworkRequestStatus");
switch (requeststatus) {
case -1:
_root.myText += "requeststatus not supported" + "\n";
break;
case 0:
_root.myText += "connection to server has been made" + "\n";
break;
case 1:
_root.myText += "connection is being established" + "\n";
break;
case 2:
_root.myText += "pending request, contacting network" + "\n";
break;
case 3:
_root.myText += "pending request, resolving domain" + "\n";
break;
case 4:
_root.myText += "failed, network error" + "\n";
break;
case 5:
_root.myText += "failed, couldn't reach server" + "\n";
break;
case 6:
_root.myText += "HTTP error" + "\n";
break;
case 7:
_root.myText += "DNS failure" + "\n";
break;
case 8:
_root.myText += "request has been fulfilled" + "\n";
break;
case 9:
_root.myText += "request timedout" + "\n";
break;
case 10:
_root.myText += "no HTTP request has been made" + "\n";
break;
}
Comando fscommand2 GetNetworkStatus
GetNetworkStatus
Restituisce un valore che indica lo stato di rete per il telefono (ovvero se è registrata una rete e se il telefono è
attualmente in roaming).
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 174
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando
Parametri
Valore restituito
GetNetworkStatus
Nessuno
-1: il comando non è supportato.
0: non è registrata alcuna rete.
1: sulla rete domestica.
2: sulla rete domestica estesa.
3: roaming in corso (lontano dalla rete domestica).
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna lo stato della connessione di rete alla variabile networkstatus, quindi utilizza
un'istruzione switch per aggiornare un campo di testo con lo stato:
networkstatus = fscommand2("GetNetworkStatus");
switch(networkstatus) {
case -1:
_root.myText += "network status not supported" + "\n";
break;
case 0:
_root.myText += "no network registered" + "\n";
break;
case 1:
_root.myText += "on home network" + "\n";
break;
case 2:
_root.myText += "on extended home network" + "\n";
break;
case 3:
_root.myText += "roaming" + "\n";
break;
}
Comando fscommand2 GetPlatform
GetPlatform
Imposta un parametro che identifica la piattaforma corrente, che descrive in generale la classe del dispositivo. Per i
dispositivi con sistemi operativi aperti, l'identificatore di solito indica il nome e la versione del sistema operativo.
Comando
Parametri
Valore restituito
GetPlatform
platform Stringa che riceve l'identificatore
-1: non supportato.
della piattaforma.
0: supportato.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta il parametro platform sull'identificatore della piattaforma corrente:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 175
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
status = fscommand2("GetPlatform", "platform");
Gli esempi seguenti mostrano alcuni risultati di platform:
506iUn telefono 506i. FOMA1Un telefono FOMA1. Symbian6.1_s60.1Un telefono Symbian 6.1, serie 60 versione 1.
Symbian7.0Un telefono Symbian 7.0.
Comando fscommand2 GetPowerSource
GetPowerSource
Restituisce un valore che indica se l'alimentazione è attualmente fornita da una batteria o da una fonte di alimentazione
esterna.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetPowerSource
Nessuno
-1: non supportato.
0: il dispositivo funziona a batteria.
1: il dispositivo funziona ad alimentazione
esterna.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la variabile myPower per indicare la fonte di alimentazione oppure su -1 se non è stato
possibile completare l'operazione:
myPower = fscommand2("GetPowerSource");
Comando fscommand2 GetSignalLevel
GetSignalLevel
Restituisce la potenza corrente del segnale, sotto forma di valore numerico.
Nota: questo comando non è supportato dai dispositivi BREW.
Comando
Parametri
Valore restituito
GetSignalLevel
Nessuno
-1: non supportato.
Altri valori numerici: il valore corrente del segnale,
compreso tra 0 e il valore massimo restituito da
GetMaxSignalLevel.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna il valore massimo del segnale alla variabile sigLevel:
sigLevel = fscommand2("GetSignalLevel");
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 176
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando fscommand2 GetSoftKeyLocation
GetSoftKeyLocation
Restituisce un valore che indica la posizione dei tasti virtuali sul dispositivo.
Comando
Parametri
Valore restituito
GetSoftKeyLocation
Nessuno
-1: non supportato.
0: tasti virtuali in alto.
1: tasti virtuali a sinistra.
2: tasti virtuali in basso.
3: tasti virtuali a destra.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta la variabile status in modo che indichi la posizione dei tasti virtuali, oppure su -1 se i
tasti virtuali non sono supportati dal dispositivo:
status = fscommand2("GetSoftKeyLocation");
Comando fscommand2 GetTotalPlayerMemory
GetTotalPlayerMemory
Restituisce la quantità totale di memoria heap, espressa in kilobyte, disponibile per Flash Lite.
Comando
Parametri
Valore restituito
GetTotalPlayerMemory
Nessuno
-1: non supportato.
0 o valore positivo: kilobyte di memoria heap
totale.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente imposta la variabile status sulla quantità totale di memoria heap:
status = fscommand2("GetTotalPlayerMemory");
Comando fscommand2 GetVolumeLevel
GetVolumeLevel
Restituisce il livello corrente del volume del dispositivo, sotto forma di valore numerico.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 177
Ultimo aggiornamento 4/5/2010
Elementi del linguaggio ActionScript
Comando
Parametri
Valore restituito
GetVolumeLevel
Nessuno
-1: non supportato.
Altri valori numerici: il livello corrente del volume,
compreso tra 0 e il valore restituito da
fscommand2("GetMaxVolumeLevel").
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente assegna il valore corrente del volume alla variabile volume:
volume = fscommand2("GetVolumeLevel");
trace (volume); // output: 50
Comando fscommand2 Quit
Quit
Indica a Flash Lite Player di interrompere la riproduzione e uscire.
Questo comando è supportato solo quando Flash Lite è in esecuzione in modalità autonoma, e non quando è in
esecuzione nel contesto di un'altra applicazione (ad esempio, come plug-in di un browser).
Comando
Parametri
Valore restituito
Quit
Nessuno
-1: non supportato.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente indica a Flash Lite di interrompere la riproduzione e uscire, se è in esecuzione in modalità
autonoma:
status = fscommand2("Quit");
Comando fscommand2 ResetSoftKeys
ResetSoftKeys
Ripristina le impostazioni originali dei tasti virtuali.
Questo comando è supportato solo quando Flash Lite è in esecuzione in modalità autonoma, e non quando è in
esecuzione nel contesto di un'altra applicazione (ad esempio, come plug-in di un browser).
Comando
Parametri
Valore restituito
ResetSoftKeys
Nessuno
-1: non supportato.
Disponibilità
Flash Lite 1.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 178
Elementi del linguaggio ActionScript
Esempio
L'istruzione seguente ripristina le impostazioni originali dei tasti virtuali:
status = fscommand2("ResetSoftKeys");
Comando fscommand2 SetFocusRectColor
SetFocusRectColor
Imposta il colore del rettangolo di attivazione su qualsiasi colore.
La gamma dei valori accettabili per rosso, verde e blu va da 0 a 255. In Flash non è possibile modificare il colore
predefinito del rettangolo di attivazione, che è giallo.
Comando
Parametri
Valore restituito
SetFocusRectColor
Nessuno
-1: non supportato.
0: non determinabile.
1: esito positivo.
Disponibilità
Flash Lite 2.0
Esempio
L'istruzione seguente reimposta il colore del rettangolo di attivazione:
status = fscommand2("SetFocusRectColor, <red>, <green>, <blue>);
Comando fscommand2 SetInputTextType
SetInputTextType
Specifica la modalità di apertura dei campi di testo di input.
Flash Lite supporta la funzione di testo di input chiedendo all'applicazione host di avviare l'interfaccia generica di
immissione del testo specifica per il dispositivo, spesso definita elaboratore front-end o FEP (Front-end Processor).
Quando il comando SetInputTextType non viene utilizzato, il FEP viene aperto in modalità predefinita.
Comando
Parametri
SetInputTextType
variableName Il nome del campo di testo di input. Può
Valore restituito
0: esito negativo.
trattarsi del nome di una variabile o di un valore di stringa che
1: esito positivo.
contiene il nome di una variabile.
Nota: il nome di variabile di un campo di testo non è uguale
al suo nome di istanza. È possibile specificare il nome di
variabile di un campo di testo nella casella di testo Var della
finestra di ispezione Proprietà oppure mediante
ActionScript. Ad esempio, il codice seguente limita
l'immissione ai soli caratteri numerici per l'istanza del campo
di testo (numTxt) il cui nome di variabile
associato è "numTxt_var".
var numTxt:TextField;numTxt.variable =
"numTxt_var";fscommand2("SetInputTextType",
"numTxt_var", "Numeric");
type Uno dei seguenti valori Numeric, Alpha,
Alphanumeric, Latin, NonLatin o NoRestriction.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 179
Elementi del linguaggio ActionScript
La tabella seguente mostra l'effetto di ogni modalità e le modalità che vengono sostituite:
Modalità InputTextType
Imposta il FEP su una di queste
modalità a esclusione reciproca
Se non è supportata sul dispositivo
corrente, apre il FEP in questa modalità
Numeric
Solo numeri (da 0 a 9)
Alphanumeric
Alpha
Solo caratteri alfanumerici (da A a Z, da Alphanumeric
a a z)
Alphanumeric
Solo caratteri alfanumerici (da 0 a 9, da Latin
A a Z, da a a z)
Latin
Solo caratteri latini (caratteri
alfanumerici e punteggiatura)
NoRestriction
NonLatin
Solo caratteri non latini (ad esempio,
Kanji e Kana)
NoRestriction
NoRestriction
Modalità predefinita (non imposta
limitazioni per il FEP)
N/D
NOTA: Non tutti i telefoni
cellulari supportano questi
tipi di campi di testo di input.
Per tale motivo, è necessario
convalidare i dati di testo di
input.
Disponibilità
Flash Lite 1.1
Esempio
La riga di codice seguente imposta il tipo di testo di input del campo associato alla variabile input1 in moda che riceva
i dati numerici:
status = fscommand2("SetInputTextType", "input1", "Numeric");
Comando fscommand2 SetSoftKeys
SetSoftKeys
Mappa nuovamente i tasti virtuali di un dispositivo mobile.
Quando l'utente preme un tasto virtuale, viene eseguito il codice ActionScript eventualmente associato all'evento del
tasto virtuale. Il lettore Flash Lite esegue questa funzione non appena viene chiamata. Questo comando è supportato
solo quando Flash Lite è in esecuzione in modalità autonoma, e non quando è in esecuzione nel contesto di un'altra
applicazione (ad esempio, come plug-in di un browser).
Per garantire la compatibilità con Flash Lite 1.1, il tasto virtuale SOFT1 viene sempre mappato al tasto sinistro del
microtelefono, mentre il tasto virtuale SOFT2 viene sempre mappato al tasto destro. Le posizioni del tasto virtuale
SOFT3 e dei tasti superiori dipendono dai singoli microtelefoni.
Gli argomenti di questo comando specificano il testo da visualizzare per i tasti virtuali corrispondenti. Una volta
eseguito il comando SetSoftKeys, se si preme il tasto sinistro viene generato un evento di pressione tasto SOFT1,
mentre se si preme il tasto destro viene generato un evento SOFT2. Se si premono i tasti virtuali da SOFT3 a SOFT12,
vengono generati i rispettivi eventi.
Nota: la rimappatura dei tasti virtuali dipende dal dispositivo mobile. Verificare con il produttore del dispositivo se la
funzionalità di modifica dei tasti virtuali è supportata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 180
Elementi del linguaggio ActionScript
Comando
Parametri
Valore restituito
SetSoftKeys
soft1 Testo da visualizzare per il tasto virtuale SOFT1.
soft2 Testo da visualizzare per il tasto virtuale SOFT2.
-1: non supportato.
0: supportato.
Questi parametri sono costituiti da nomi di variabili o
valori costanti di stringa (ad esempio, "Previous").
Disponibilità
Flash Lite 1.1
Esempio
Nell'esempio seguente il tasto virtuale SOFT1 viene contrassegnato come "Previous" e il tasto virtuale SOFT2 come
"Next".
status = fscommand2("SetSoftKeys", "Previous", "Next");
È possibile definire le variabili o utilizzare valori di stringa costanti per ogni tasto virtuale:
status = fscommand2("SetSoftKeys", soft1, soft2, [soft3], [soft4], ..., [softn])
Nota: è possibile impostare un tasto virtuale senza impostare gli altri. Questi esempi mostrano la sintassi e il
comportamento relativi all'impostazione di un tasto virtuale specifico che non influisca sugli altri tasti:
• Per impostare l'etichetta del tasto virtuale sinistro su "soft1" e il tasto virtuale destro su vuoto:
status = fscommand2("SetSoftKeys", "soft1", "")
• Per lasciare invariata l'etichetta del tasto virtuale sinistro e impostare il tasto virtuale destro su "soft2":
status = fscommand2("SetSoftKeys", undefined, "soft2")
• Per lasciare invariata l'etichetta del tasto virtuale sinistro e impostare il tasto virtuale destro su "soft2":
status = fscommand2("SetSoftKeys", null, "soft2")
• Per impostare l'etichetta del tasto virtuale sinistro su "soft1" e lasciare invariato il tasto virtuale destro:
status = fscommand2("SetSoftKeys", "soft1")
Comando fscommand2 StartVibrate
StartVibrate
Attiva la vibrazione del telefono.
Se la vibrazione è già in corso, Flash Lite la interrompe prima di avviarne una nuova. Le vibrazioni si fermano anche
quando la riproduzione dell'applicazione Flash viene interrotta o messa in pausa, o quando si esce dal lettore di Flash Lite.
Comando
Parametri
Valore restituito
StartVibrate
time_on Quantità di tempo, espressa in
millisecondi (fino a un massimo di 5 secondi), per
cui la vibrazione è attiva.
-1: non supportato.
time_off Quantità di tempo, espressa in
1: si è verificato un errore e non è
millisecondi (fino a un massimo di 5 secondi), per
cui la vibrazione è disattivata.
repeat Numero di volte (massimo 3) per cui la
vibrazione viene ripetuta.
0: la vibrazione è stata avviata.
stato possibile avviare la vibrazione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 181
Elementi del linguaggio ActionScript
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente tenta di avviare una sequenza di vibrazioni composta da 2,5 secondi di attività e 1 secondo di
inattività e ripetuta due volte. Assegna un valore alla variabile status, che indica l'esito positivo o negativo:
fscommand2("StartVibrate", 2500, 1000, 2);
Comando fscommand2 StopVibrate
StopVibrate
Interrompe la vibrazione del telefono, se è attualmente in funzione.
Comando
Parametri
Valore restituito
StopVibrate
Nessuno
-1: non supportato.
0: la vibrazione si è interrotta.
Disponibilità
Flash Lite 1.1
Esempio
L'esempio seguente chiama StopVibrate e salva il risultato (non supportato o vibrazione interrotta) nella variabile
status:
status = fscommand2("StopVibrate");
182
Ultimo aggiornamento 4/5/2010
Capitolo 2: Classi ActionScript
La documentazione per le classi di ActionScript include sintassi, informazioni d'uso ed esempi di codice per metodi,
proprietà ed eventi appartenenti a classi specifiche. Le classi sono elencate in ordine alfabetico. Se non siete sicuri di
conoscere la classe a cui appartiene un metodo, proprietà o evento, consultate l'Indice analitico.
arguments
Object
|
+-arguments
public class arguments
extends Object
Un oggetto arguments viene utilizzato per memorizzare gli argomenti di una funzione ed accedervi. All'interno del
corpo di una funzione vi si può accedere con la variabile arguments locale.
Gli argomenti vengono memorizzati come elementi di array. Al primo si accede come arguments[0], al secondo
come arguments[1], ecc. La proprietà arguments.length indica il numero di argomenti passati alla funzione. Si noti
che può esservi una discrepanza fra il numero di argomenti passati e quanto dichiarato dalla funzione.
Disponibilità
Flash Lite 2.0
Vedete anche
Function
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
callee:Object
Un riferimento alla funzione in corso di esecuzione.
caller:Object
Un riferimento alla funzione che ha chiamato la funzione in
corso di esecuzione, o null se non è stata chiamata da un'altra
funzione.
length:Number
Numero di argomenti passati alla funzione.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo dei metodi
Metodi ereditati dalla classe Object
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 183
Classi ActionScript
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
callee (proprietà arguments.callee)
public callee : Object
Un riferimento alla funzione in corso di esecuzione.
Disponibilità
Flash Lite 2.0
Vedete anche
caller (proprietà arguments.caller)
caller (proprietà arguments.caller)
public caller : Object
Un riferimento alla funzione che ha chiamato la funzione in corso di esecuzione, o null se non è stata chiamata da
un'altra funzione.
Disponibilità
Flash Lite 2.0
Vedete anche
callee (proprietà arguments.callee)
length (proprietà arguments.length)
public length : Number
Numero di argomenti passati alla funzione. Può essere inferiore o superiore rispetto a quanto dichiarato dalla
funzione.
Disponibilità
Flash Lite 2.0
Array
Object
|
+-Array
public dynamic class Array
extends Object
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 184
Classi ActionScript
La classe Array consente di accedere agli array indicizzati e di manipolarli. Un array indicizzato è un oggetto le cui
proprietà sono identificate da un numero che ne rappresenta la posizione nell'array stesso. Questo numero viene
definito indice. Tutti gli array indicizzati sono a base zero, ovvero [0] è il primo elemento dell'array, [1] è il secondo, e
così via. Per creare un oggetto Array, utilizzare la funzione di costruzione new Array(). Per accedere agli elementi di
un array, utilizzare l'operatore array access ([]).
È possibile memorizzare una vasta gamma di tipi di dati in un elemento di array, tra cui numeri, stringhe, oggetti e
persino altri array. È possibile creare un array multidimensionale creando un array indicizzato e assegnando un array
indicizzato diverso a ognuno dei suoi elementi. Un array di questo tipo è considerato multidimensionale poiché può
essere utilizzato per rappresentare i dati in una tabella.
L'assegnazione all'array avviene in base al riferimento anziché al valore: quando si assegna una variabile di array a
un'altra variabile di array, entrambe fanno riferimento allo stesso array:
var oneArray:Array = new Array("a", "b", "c");
var twoArray:Array = oneArray; // Both array variables refer to the same array.
twoArray[0] = "z";
trace(oneArray); // Output: z,b,c.
La classe Array non deve essere utilizzata per creare gli array associativi, che sono strutture di dati diverse che
contengono elementi con nome anziché elementi numerati. È necessario utilizzare la classe Object per creare gli array
associativi (chiamati anche hash). Benché ActionScript consenta di creare gli array associativi mediante la classe Array,
non è possibile utilizzare nessuno dei metodi o delle proprietà della classe Array. Un array associativo è un'istanza della
classe Object e ciascuna coppia chiave-valore è rappresentata da una proprietà e dal relativo valore. Un altro motivo
per dichiarare un array associativo come tipo Object consiste nel fatto che è possibile utilizzare un valore letterale di
Object per compilare un array associativo (ma solo nel momento in cui viene dichiarato). L'esempio seguente crea un
array associativo mediante un valore letterale di oggetto, accede agli elementi sia mediante l'operatore dot sia mediante
l'operatore di accesso agli array, quindi aggiunge una nuova coppia chiave-valore mediante la creazione di una nuova
proprietà:
var myAssocArray:Object = {fname:"John", lname:"Public"};
trace(myAssocArray.fname); // Output: John
trace(myAssocArray["lname"]); // Output: Public
myAssocArray.initial = "Q";
trace(myAssocArray.initial); // Output: Q
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, my_array contiene quattro mesi dell'anno:
var my_array:Array = new Array();
my_array[0] = "January";
my_array[1] = "February";
my_array[2] = "March";
my_array[3] = "April";
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 185
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
CASEINSENSITIVE:Numbe
r
Rappresenta l'ordinamento senza distinzione tra maiuscole e
minuscole.
static
DESCENDING:Number
Rappresenta l'ordinamento decrescente.
length:Number
Un numero intero non negativo che specifica il numero di
elementi nell'array.
static
NUMERIC:Number
Rappresenta l'ordinamento numerico anziché quello basato
sulle stringhe.
static
RETURNINDEXEDARRAY:
Number
Rappresenta l'opzione che restituisce un array indicizzato
come risultato della chiamata al metodo sort() o sortOn().
static
UNIQUESORT:Number
Rappresenta il requisito dell'ordinamento univoco.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Array([value:Object]) Consente di creare un array.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
concat([value:Object]
) : Array
Concatena gli elementi specificati nei parametri con gli
elementi in un array e crea un nuovo array.
join([delimiter:String
]) : String
Converte in stringhe gli elementi di un array, inserisce il
separatore specificato tra gli elementi, li concatena e
restituisce la stringa risultante.
pop() : Object
Rimuove l'ultimo elemento di un array e ne restituisce il valore.
push(value:Object) :
Number
Aggiunge uno o più elementi alla fine di un array e restituisce
la nuova lunghezza dell'array.
reverse() : Void
Inverte l'array in posizione.
shift() : Object
Rimuove il primo elemento di un array e lo restituisce.
slice([startIndex:Nu
mber],
[endIndex:Number])
: Array
Restituisce un nuovo array composto da un intervallo di
elementi dell'array originale, senza modificare quest'ultimo.
sort([compareFunctio
n:Object],
[options:Number]) :
Array
Ordina gli elementi di un array.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 186
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
sortOn(fieldName:Obje Ordina gli elementi di un array in base a uno o più campi
ct, [options:Object]) dell'array.
: Array
splice(startIndex:Nu
mber,
[deleteCount:Number
], [value:Object]) :
Array
Aggiunge e rimuove gli elementi di un array.
toString() : String
Restituisce un valore di tipo stringa che rappresenta gli
elementi dell'oggetto Array specificato.
unshift(value:Object)
: Number
Aggiunge uno o più elementi all'inizio di un array e restituisce
la nuova lunghezza dell'array.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Array (funzione di costruzione)
public Array([value:Object])
Consente di creare un array. È possibile utilizzare la funzione di costruzione per creare diversi tipi di array: un array
vuoto, un array con una lunghezza specifica ma i cui elementi hanno valori non definiti oppure un array i cui elementi
hanno valori specifici.
Uso 1: se non si specifica alcun parametro, viene creato con una lunghezza pari a 0.
Uso 2: se si specifica solo una lunghezza, viene creato un array con un numero di elementi pari alla lunghezza
specificata (length). Il valore di ogni elemento viene impostato su undefined.
Uso 3: se si utilizzano i parametri element per specificare i valori, viene creato un array con dei valori specifici.
Disponibilità
Flash Lite 2.0
Parametri
value:Object [opzionale] - Può essere:
• Un numero intero che specifica il numero di elementi nell'array.
• Un elenco di due o più valori arbitrari. I valori possono essere di tipo booleano, numerico, stringa, oggetto o array.
Il primo elemento di un array ha sempre l'indice o la posizione 0.
Nota: se alla funzione di costruzione Array viene passato un solo parametro numerico, questo viene considerato come
parametro length e convertito in intero mediante la funzione Integer().
Esempio
Uso 1: l'esempio seguente crea un nuovo oggetto Array con una lunghezza iniziale pari a 0:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 187
Classi ActionScript
var my_array:Array = new Array();
trace(my_array.length); // Traces 0.
Uso 2: l'esempio seguente crea un nuovo oggetto Array con una lunghezza iniziale pari a 4:
var my_array:Array = new Array(4);
trace(my_array.length); // Returns 4.
trace(my_array[0]); // Returns undefined.
if (my_array[0] == undefined) { // No quotation marks around undefined.
trace("undefined is a special value, not a string");
} // Traces: undefined is a special value, not a string.
Uso 3: l'esempio seguente crea il nuovo oggetto Array di nome go_gos_array con una lunghezza iniziale pari a 5:
var go_gos_array:Array = new Array("Belinda", "Gina", "Kathy", "Charlotte", "Jane");
trace(go_gos_array.length); // Returns 5.
trace(go_gos_array.join(", ")); // Displays elements.
Gli elementi iniziali dell'array go_gos_array vengono identificati, come mostrato nell'esempio seguente:
go_gos_array[0]
go_gos_array[1]
go_gos_array[2]
go_gos_array[3]
go_gos_array[4]
=
=
=
=
=
"Belinda";
"Gina";
"Kathy";
"Charlotte";
"Jane";
Il codice seguente aggiunge un sesto elemento all'array go_gos_array e modifica il secondo:
go_gos_array[5] = "Donna";
go_gos_array[1] = "Nina"
trace(go_gos_array.join(" + "));
// Returns Belinda + Nina + Kathy + Charlotte + Jane + Donna.
Vedete anche
Operatore [] (accesso array), length (proprietà Array.length)
CASEINSENSITIVE (proprietà Array.CASEINSENSITIVE)
public static CASEINSENSITIVE : Number
Rappresenta l'ordinamento senza distinzione tra maiuscole e minuscole. Questa costante può essere utilizzata per il
parametro options nel metodo sort() o sortOn(). Il valore di questa costante è 1.
Disponibilità
Flash Lite 2.0
Vedete anche
sort (metodo Array.sort), sortOn (metodo Array.sortOn)
concat (metodo Array.concat)
public concat([value:Object]) : Array
Concatena gli elementi specificati nei parametri con gli elementi in un array e crea un nuovo array. Se i parametri
value specificano un array, anziché l'array vengono concatenati i suoi elementi. L'array my_array rimane invariato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 188
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
value:Object [opzionale] - I numeri, gli elementi o le stringhe che devono essere concatenate in un nuovo array. Se
non si passa alcun valore, viene creato un duplicato di my_array.
Restituisce
Array - Un array che contiene gli elementi di questo array seguito dagli elementi dei parametri.
Esempio
Il codice seguente concatena due array:
var alpha_array:Array = new Array("a","b","c");
var numeric_array:Array = new Array(1,2,3);
var alphaNumeric_array:Array =alpha_array.concat(numeric_array);
trace(alphaNumeric_array);
// Creates array [a,b,c,1,2,3].
Il codice seguente concatena tre array:
var num1_array:Array = [1,3,5];
var num2_array:Array = [2,4,6];
var num3_array:Array = [7,8,9];
var nums_array:Array=num1_array.concat(num2_array,num3_array)
trace(nums_array);
// Creates array [1,3,5,2,4,6,7,8,9].
Gli array nidificati non vengono appiattiti allo stesso modo degli array normali. Gli elementi di un array nidificato non
vengono suddivisi in elementi separati nell'array x_array, come mostrato nell'esempio seguente:
var a_array:Array = new Array ("a","b","c");
// 2 and 3 are elements in a nested array.
var n_array:Array = new Array(1, [2, 3], 4);
var x_array:Array = a_array.concat(n_array);
trace(x_array[0]); // a
trace(x_array[1]); // b
trace(x_array[2]); // c
trace(x_array[3]); // 1
trace(x_array[4]); // 2, 3
trace(x_array[5]); // 4
DESCENDING (proprietà Array.DESCENDING)
public static DESCENDING : Number
Rappresenta l'ordinamento discendente. Questa costante può essere utilizzata per il parametro options nel metodo
sort() o sortOn(). Il valore di questa costante è 2.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 189
Classi ActionScript
Vedete anche
sort (metodo Array.sort), sortOn (metodo Array.sortOn)
join (metodo Array.join)
public join([delimiter:String]) : String
Converte in stringhe gli elementi di un array, inserisce il separatore specificato tra gli elementi, li concatena e
restituisce la stringa risultante. Un array nidificato è sempre separato da un virgola (,) e non dal separatore passato dal
metodo join().
Disponibilità
Flash Lite 2.0
Parametri
delimiter:String [opzionale] - Un carattere o una stringa che separa gli elementi dell'array nella stringa restituita. Se
si omette questo parametro, viene utilizzata una virgola (,) come separatore predefinito.
Restituisce
String - Una stringa.
Esempio
L'esempio seguente crea un array con tre elementi: Earth, Moon e Sun. Quindi, unisce l'array tre volte: innanzi tutto
mediante il separatore predefinito (una virgola [,] e uno spazio), quindi mediante un trattino (-) e infine mediante un
segno più (+).
var a_array:Array = new Array("Earth","Moon","Sun")
trace(a_array.join());
// Displays Earth,Moon,Sun.
trace(a_array.join(" - "));
// Displays Earth - Moon - Sun.
trace(a_array.join(" + "));
// Displays Earth + Moon + Sun.
L'esempio seguente crea un array nidificato che contiene due array. Il primo ha tre elementi: Europa, Io e Callisto. Il
secondo ha due elementi: Titan e Rhea. L'array viene unito mediante un segno più (+), ma gli elementi all'interno di
ciascun array nidificato rimangono separati da virgole (,).
var a_nested_array:Array = new Array(["Europa", "Io", "Callisto"], ["Titan", "Rhea"]);
trace(a_nested_array.join(" + "));
// Returns Europa,Io,Callisto + Titan,Rhea.
Vedete anche
split (metodo String.split)
length (proprietà Array.length)
public length : Number
Un numero intero non negativo che specifica il numero di elementi nell'array. Questa proprietà viene aggiornata
automaticamente quando vengono aggiunti dei nuovi elementi all'array. Quando si assegna un valore a un elemento
di un array (ad esempio, my_array[index] = value), se index è un numero e index+1 è maggiore della proprietà
length, tale proprietà length viene aggiornata a index+1.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 190
Classi ActionScript
Nota: se alla proprietà length si assegna un valore più breve della lunghezza esistente, l'array viene troncato.
Disponibilità
Flash Lite 2.0
Esempio
Il codice seguente mostra il modo in cui viene aggiornata la proprietà length. La lunghezza iniziale è pari a 0, e viene
in seguito aggiornata a 1, 2 e 10. Se alla proprietà length si assegna un valore più breve della lunghezza esistente, l'array
viene troncato:
var my_array:Array = new Array();
trace(my_array.length); // initial length is 0
my_array[0] = "a";
trace(my_array.length); // my_array.length is updated to 1
my_array[1] = "b";
trace(my_array.length); // my_array.length is updated to 2
my_array[9] = "c";
trace(my_array.length); // my_array.length is updated to 10
trace(my_array);
// displays:
// a,b,undefined,undefined,undefined,undefined,undefined,undefined,undefined,c
// if the length property is now set to 5, the array will be truncated
my_array.length = 5;
trace(my_array.length); // my_array.length is updated to 5
trace(my_array); // outputs: a,b,undefined,undefined,undefined
NUMERIC (proprietà Array.NUMERIC)
public static NUMERIC : Number
Rappresenta l'ordinamento numerico anziché quello basato sulle stringhe. L'ordinamento basato sulle stringhe, che
costituisce l'impostazione predefinita, considera i numeri come stringhe quando li ordina. Ad esempio, l'ordinamento
basato sulle stringhe posiziona 10 prima di 3. L'ordinamento numerico considera gli elementi come se fossero numeri,
pertanto 3 viene posizionato prima di 10. È possibile utilizzare questa costante per il parametro options nel metodo
sort() o sortOn(). Il valore di questa costante è 16.
Disponibilità
Flash Lite 2.0
Vedete anche
sort (metodo Array.sort), sortOn (metodo Array.sortOn)
pop (metodo Array.pop)
public pop() : Object
Rimuove l'ultimo elemento di un array e ne restituisce il valore.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 191
Classi ActionScript
Restituisce
Object - Il valore dell'ultimo elemento nell'array specificato.
Esempio
Il codice seguente crea l'array myPets_, che contiene quattro elementi, quindi rimuove l'ultimo elemento:
var myPets_array:Array = new Array("cat", "dog", "bird", "fish");
var popped:Object = myPets_array.pop();
trace(popped); // Displays fish.
trace(myPets_array); // Displays cat,dog,bird.
Vedete anche
push (metodo Array.push), shift (metodo Array.shift), unshift (metodo Array.unshift)
push (metodo Array.push)
public push(value:Object) : Number
Aggiunge uno o più elementi alla fine di un array e restituisce la nuova lunghezza dell'array.
Disponibilità
Flash Lite 2.0
Parametri
value:Object - Uno o più valori da aggiungere all'array.
Restituisce
Number - Un numero intero che rappresenta la lunghezza del nuovo array.
Esempio
L'esempio seguente crea l'array myPets_array con due elementi definiti, cioè cat e dog. La seconda riga aggiunge due
elementi all'array.
Dal momento che il metodo push() restituisce la nuova lunghezza dell'array, l'istruzione trace() nell'ultima riga
invia la nuova lunghezza di myPets_array (4) al pannello Output.
var myPets_array:Array = new Array("cat", "dog");
var pushed:Number = myPets_array.push("bird", "fish");
trace(pushed); // Displays 4.
Vedete anche
pop (metodo Array.pop), shift (metodo Array.shift), unshift (metodo Array.unshift)
RETURNINDEXEDARRAY (proprietà Array.RETURNINDEXEDARRAY)
public static RETURNINDEXEDARRAY : Number
Rappresenta l'opzione che restituisce un array indicizzato come risultato della chiamata al metodo sort() o
sortOn(). Questa costante può essere utilizzata per il parametro options nel metodo sort() o sortOn(). In questo
modo viene fornita la funzione di anteprima o di copia per un array che rappresenta i risultati dell'ordinamento e lascia
intatto l'array originale. Il valore di questa costante è 8.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 192
Classi ActionScript
Disponibilità
Flash Lite 2.0
Vedete anche
sort (metodo Array.sort), sortOn (metodo Array.sortOn)
reverse (metodo Array.reverse)
public reverse() : Void
Inverte l'array in posizione.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente utilizza questo metodo per invertire l'array numbers_array:
var numbers_array:Array = new Array(1, 2, 3, 4, 5, 6);
trace(numbers_array); // Displays 1,2,3,4,5,6.
numbers_array.reverse();
trace(numbers_array); // Displays 6,5,4,3,2,1.
shift (metodo Array.shift)
public shift() : Object
Rimuove il primo elemento di un array e lo restituisce.
Disponibilità
Flash Lite 2.0
Restituisce
Object - Il primo elemento dell'array.
Esempio
Il codice seguente crea l'array myPets_array, quindi rimuove il primo elemento dall'array e lo assegna alla variabile
shift:
var myPets_array:Array = new Array("cat", "dog", "bird", "fish");
var shifted:Object = myPets_array.shift();
trace(shifted); // Displays "cat".
trace(myPets_array); // Displays dog,bird,fish.
Vedete anche
pop (metodo Array.pop), push (metodo Array.push), unshift (metodo Array.unshift)
slice (metodo Array.slice)
public slice([startIndex:Number], [endIndex:Number]) : Array
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 193
Classi ActionScript
Restituisce un nuovo array composto da un intervallo di elementi dell'array originale, senza modificare quest'ultimo.
L'array restituito comprende l'elemento startIndex e tutti gli elementi fino a endIndex escluso.
Se non si passa alcun parametro, viene creato un duplicato dell'array originale.
Disponibilità
Flash Lite 2.0
Parametri
startIndex:Number [opzionale] - Un numero che specifica l'indice del punto iniziale della porzione. Se start è un
numero negativo, il punto iniziale comincia alla fine dell'array, dove -1 è l'ultimo elemento.
endIndex:Number [opzionale] - Un numero che specifica l'indice del punto finale della porzione. Se si omette questo
parametro, la porzione include tutti gli elementi compresi tra il punto iniziale e la fine dell'array. Se end è un numero
negativo, il punto finale viene specificato dalla fine dell'array, dove -1 è l'ultimo elemento.
Restituisce
Array - Un array composto da un intervallo di elementi dell'array originale.
Esempio
L'esempio seguente crea un array di cinque animali domestici e utilizza slice() per compilare un nuovo array che
contiene solo gli animali a quattro zampe:
var myPets_array:Array = new Array("cat", "dog", "fish", "canary", "parrot");
var myFourLeggedPets_array:Array = new Array();
var myFourLeggedPets_array = myPets_array.slice(0, 2);
trace(myFourLeggedPets_array); // Returns cat,dog.
trace(myPets_array); // Returns cat,dog,fish,canary,parrot.
L'esempio seguente crea un array di cinque animali domestici, quindi utilizza slice() con un parametro start
negativo per copiare gli ultimi due elementi dell'array:
var myPets_array:Array = new Array("cat", "dog", "fish", "canary", "parrot");
var myFlyingPets_array:Array = myPets_array.slice(-2);
trace(myFlyingPets_array); // Traces canary,parrot.
L'esempio seguente crea un array di cinque animali domestici, quindi utilizza slice() con un parametro end negativo
per copiare l'elemento centrale dell'array:
var myPets_array:Array = new Array("cat", "dog", "fish", "canary", "parrot");
var myAquaticPets_array:Array = myPets_array.slice(2,-2);
trace(myAquaticPets_array); // Returns fish.
sort (metodo Array.sort)
public sort([compareFunction:Object], [options:Number]) : Array
Ordina gli elementi di un array. L'ordinamento viene effettuato in base ai valori Unicode. (ASCII è un sottoinsieme
del linguaggio Unicode).
Per impostazione predefinita, Array.sort() funziona nel modo descritto nell'elenco seguente:
• L'ordinamento fa distinzione tra maiuscole e minuscole (quindi, ad esempio Z precede a).
• L'ordinamento è ascendente (quindi, ad esempio a precede b).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 194
Classi ActionScript
• L'array viene modificato in modo che rispecchi l'ordinamento; gli eventuali elementi multipli che hanno campi di
ordinamento identici vengono posizionati in modo consecutivo senza un ordine particolare.
• I campi numerici vengono ordinati come se fossero stringhe, pertanto 100 precede 99 poiché "1" è un valore di
stringa inferiore a "9".
Per ordinare un array mediante delle impostazioni diverse da quelle predefinite, è possibile utilizzare una delle opzioni
di ordinamento descritte nella sezione relativa al parametro options oppure creare una funzione personalizzata che
effettui l'ordinamento. Se si crea una funzione personalizzata, è possibile utilizzarla chiamando il metodo sort(), con
il nome della funzione personalizzata come primo parametro (compareFunction).
Disponibilità
Flash Lite 2.0
Parametri
compareFunction:Object [opzionale] - Una funzione di confronto utilizzata per determinare il tipo di ordinamento
degli elementi di un array. Dati gli elementi A e B, il risultato di compareFunction può avere uno dei tre elementi
seguenti:
• -1, se A deve comparire prima di B nella sequenza ordinata
• 0, se A è uguale a B
• 1, se A deve comparire dopo B nella sequenza ordinata
opzioni:Number [opzionale] - Uno o più numeri o nomi di costanti definite, separati dall'operatore | (OR bit a bit),
che modificano il comportamento dell'ordinamento predefinito. I valori seguenti sono accettabili per il parametro
options:
•
Array.CASEINSENSITIVE o 1
•
Array.DESCENDING o 2
•
Array.UNIQUESORT o 4
•
Array.RETURNINDEXEDARRAY o 8
•
Array.NUMERIC o 16
Per ulteriori informazioni su questo parametro, vedete il metodo Array.sortOn().
Nota: Array.sort() è definito in ECMA-262, ma le opzioni di ordinamento degli array introdotte in Flash Player 7
sono estensioni specifiche per Flash della specifica ECMA-262.
Restituisce
Array - Il valore restituito dipende dal fatto che abbiate o meno passato dei parametri, come descritto nell'elenco
seguente:
• Se si specifica il valore 4 o Array.UNIQUESORT per il parametro options e due o più elementi in corso di
ordinamento hanno campi con ordinamento identico, viene restituito il valore 0 e l'array non viene modificato.
• Se si specifica il valore 8 o Array.RETURNINDEXEDARRAY per il parametro options, viene restituito un array che
rispecchia i risultati dell'ordinamento e l'array non viene modificato.
• In caso contrario, non viene restituito alcun valore e l'array viene modificato in modo che rispecchi l'ordinamento.
Esempio
Uso 1: l'esempio seguente mostra l'utilizzo di Array.sort() con e senza un valore passato per options:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 195
Classi ActionScript
var fruits_array:Array = new Array("oranges", "apples", "strawberries", "pineapples",
"cherries");
trace(fruits_array); // Displays oranges,apples,strawberries,pineapples,cherries.
fruits_array.sort();
trace(fruits_array); // Displays apples,cherries,oranges,pineapples,strawberries.
fruits_array.sort(Array.DESCENDING);
trace(fruits_array); // Displays strawberries,pineapples,oranges,cherries,apples.
Uso 2: l'esempio seguente utilizza Array.sort() con una funzione di confronto: Le voci sono ordinate in formato
nome:password. L'ordinamento deve avvenire usando solo la parte nome della voce come chiave:
var passwords_array:Array = new Array("mom:glam", "ana:ring", "jay:mag", "anne:home",
"regina:silly");
function order(a, b):Number {
var name1:String = a.split(":")[0];
var name2:String = b.split(":")[0];
if (name1<name2) {
return -1;
} else if (name1>name2) {
return 1;
} else {
return 0;
}
}
trace("Unsorted:");
trace(passwords_array);
//Displays mom:glam,ana:ring,jay:mag,anne:home,regina:silly.
passwords_array.sort(order);
trace("Sorted:");
trace(passwords_array);
//Displays ana:ring,anne:home,jay:mag,mom:glam,regina:silly.
Vedete anche
Operatore | (OR bit a bit), sortOn (metodo Array.sortOn)
sortOn (metodo Array.sortOn)
public sortOn(fieldName:Object, [options:Object]) : Array
Ordina gli elementi di un array in base a uno o più campi dell'array. L'array dovrebbe avere le proprietà caratteristiche:
• L'array è di tipo indicizzato, non associativo.
• Ogni elemento dell'array contiene un oggetto con una o più proprietà.
• Tutti gli oggetti hanno almeno una proprietà in comune, i cui valori possono essere utilizzati per ordinare l'array.
La proprietà viene denominata campo.
Se si passano più parametri fieldName, il primo campo rappresenta il campo di ordinamento principale, il secondo
rappresenta il campo di ordinamento successivo, e così via. L'ordinamento viene effettuato in base ai valori Unicode.
(ASCII è un sottoinsieme del linguaggio Unicode). Se qualcuno degli elementi che si stanno confrontando non
contiene il campo specificato nel parametro fieldName, il campo viene considerato non definito e gli elementi
vengono collocati consecutivamente senza un ordine particolare all'interno dell'array ordinato.
Per impostazione predefinita, Array.sortOn() funziona nel modo descritto nell'elenco seguente:
• L'ordinamento fa distinzione tra maiuscole e minuscole (quindi, ad esempio Z precede a).
• L'ordinamento è ascendente (quindi, ad esempio a precede b).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 196
Classi ActionScript
• L'array viene modificato in modo che rispecchi l'ordinamento; gli eventuali elementi multipli che hanno campi di
ordinamento identici vengono posizionati in modo consecutivo senza un ordine particolare.
• I campi numerici vengono ordinati come se fossero stringhe, pertanto 100 precede 99 poiché "1" è un valore di
stringa inferiore a "9".
Il parametro options può servire per ignorare il comportamento predefinito per l'ordinamento. Per ordinare un array
semplice (ad esempio, un array con un solo campo) o per specificare un ordinamento non supportato dal parametro
options, utilizzare Array.sort().
Per passare più flag, separarli con l'operatore OR bit a bit (|):
my_array.sortOn(someFieldName, Array.DESCENDING | Array.NUMERIC);
Disponibilità
Flash Lite 2.0
Parametri
fieldName:Object - Una stringa che identifica un campo da utilizzare come valore di ordinamento, oppure un array
in cui il primo elemento rappresenta il campo di ordinamento principale, il secondo rappresenta il campo di
ordinamento secondario, e così via.
options:Object [opzionale] - Uno o più numeri o nomi di costanti definite, separati dall'operatore | (OR bit a bit), che
modificano il comportamento dell'ordinamento. I valori seguenti sono accettabili per il parametro options:
•
Array.CASEINSENSITIVE o 1
•
Array.DESCENDING o 2
•
Array.UNIQUESORT o 4
•
Array.RETURNINDEXEDARRAY o 8
•
Array.NUMERIC o 16
I suggerimenti sul codice sono abilitati se si utilizza il flag sotto forma di stringa (ad esempio, DESCENDING) anziché
sotto forma di numero (2).
Restituisce
Array - Il valore restituito dipende dal fatto che abbiate o meno passato dei parametri, come descritto nell'elenco
seguente:
• Se si specifica il valore 4 o Array.UNIQUESORT per il parametro options e due o più elementi in corso di
ordinamento hanno campi con ordinamento identico, viene restituito il valore 0 e l'array non viene modificato.
• Se si specifica il valore 8 o Array.RETURNINDEXEDARRAY per il parametro options, viene restituito un array che
rispecchia i risultati dell'ordinamento e l'array non viene modificato.
• In caso contrario, non viene restituito alcun valore e l'array viene modificato in modo che rispecchi l'ordinamento.
Esempio
L'esempio seguente crea un nuovo array e lo ordina in base ai campi name e city. Il primo ordinamento utilizza name
come primo valore di ordinamento e city come secondo valore. Il primo ordinamento utilizza city come primo
valore di ordinamento e name come secondo valore.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 197
Classi ActionScript
var rec_array:Array = new Array();
rec_array.push({name: "john", city: "omaha", zip: 68144});
rec_array.push({name: "john", city: "kansas city", zip: 72345});
rec_array.push({name: "bob", city: "omaha", zip: 94010});
for(i=0; i<rec_array.length; i++){
trace(rec_array[i].name + ", " + rec_array[i].city);
}
// Results:
// john, omaha
// john, kansas city
// bob, omaha
rec_array.sortOn(["name", "city"]);
for(i=0; i<rec_array.length; i++){
trace(rec_array[i].name + ", " + rec_array[i].city);
}
// Results:
// bob, omaha
// john, kansas city
// john, omaha
rec_array.sortOn(["city", "name" ]);
for(i=0; i<rec_array.length; i++){
trace(rec_array[i].name + ", " + rec_array[i].city);
}
// Results:
// john, kansas city
// bob, omaha
// john, omaha
L'array di oggetti seguente viene utilizzato dagli esempi seguenti, che mostrano come utilizzare il parametro options:
var my_array:Array = new
my_array.push({password:
my_array.push({password:
my_array.push({password:
my_array.push({password:
Array();
"Bob", age:29});
"abcd", age:3});
"barb", age:35});
"catchy", age:4});
Se si esegue un ordinamento predefinito sul campo password, si ottengono i risultati seguenti:
my_array.sortOn("password");
// Bob
// abcd
// barb
// catchy
Se si esegue un ordinamento senza distinzione tra maiuscole e minuscole sul campo password, si ottengono i risultati
seguenti:
my_array.sortOn("password", Array.CASEINSENSITIVE);
// abcd
// barb
// Bob
// catchy
Se si esegue un ordinamento discendente senza distinzione tra maiuscole e minuscole sul campo password, si
ottengono i risultati seguenti:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 198
Classi ActionScript
my_array.sortOn("password", Array.CASEINSENSITIVE | Array.DESCENDING);
// catchy
// Bob
// barb
// abcd
Se si esegue un ordinamento predefinito sul campo age, si ottengono i risultati seguenti:
my_array.sortOn("age");
// 29
// 3
// 35
// 4
Se si esegue un ordinamento numerico sul campo age, si ottengono i risultati seguenti:
my_array.sortOn("age", Array.NUMERIC);
// my_array[0].age = 3
// my_array[1].age = 4
// my_array[2].age = 29
// my_array[3].age = 35
Se si esegue un ordinamento numerico discendente sul campo age, si ottengono i risultati seguenti:
my_array.sortOn("age", Array.DESCENDING | Array.NUMERIC);
// my_array[0].age = 35
// my_array[1].age = 29
// my_array[2].age = 4
// my_array[3].age = 3
Quando si utilizza l'opzione di ordinamento Array.RETURNINDEXARRAY, è necessario assegnare il valore restituito a
un array diverso. L'array originale non viene modificato.
var indexArray:Array = my_array.sortOn("age", Array.RETURNINDEXEDARRAY);
Vedete anche
Operatore | (OR bit a bit), sort (metodo Array.sort)
splice (metodo Array.splice)
public splice(startIndex:Number, [deleteCount:Number], [value:Object]) : Array
Aggiunge e rimuove gli elementi di un array. Questo metodo modifica l'array senza crearne una copia.
Disponibilità
Flash Lite 2.0
Parametri
startIndex:Number - Un numero intero che specifica l'indice dell'elemento dell'array in cui inizia l'inserimento o
l'eliminazione. È possibile indicare un numero intero negativo per specificare una posizione relativa alla fine dell'array
(ad esempio, -1 è l'ultimo elemento dell'array).
deleteCount:Number [opzionale] - Un numero intero che specifica il numero di elementi da eliminare. Questo
numero include l'elemento specificato nel parametro startIndex. Se per il parametro deleteCount non è specificato
alcun parametro, il metodo elimina tutti i valori dall'elemento startIndex fino all'ultimo elemento dell'array. Se il
valore è 0, non viene eliminato alcun elemento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 199
Classi ActionScript
valore:Object [opzionale] - Specifica i valori da inserire nell'array in corrispondenza del punto di inserimento
specificato nel parametro startIndex.
Restituisce
Array - Un array contenente gli elementi che sono stati rimossi dall'array originale.
Esempio
L'esempio seguente crea un array e lo giunta, utilizzando la posizione di indice 1 come parametro startIndex. In tal
modo vengono rimossi tutti gli elementi dall'array, a partire dal secondo elemento, e viene lasciato solo l'elemento in
corrispondenza dell'indice 0 nell'array originale:
var myPets_array:Array = new Array("cat", "dog", "bird", "fish");
trace( myPets_array.splice(1) ); // Displays dog,bird,fish.
trace( myPets_array ); // cat
L'esempio seguente crea un array e lo giunta, utilizzando la posizione di indice 1 come parametro startIndex e il
numero 2 come parametro deleteCount. In tal modo vengono rimossi due elementi dall'array, a partire dal secondo
elemento, e vengono lasciati il primo e l'ultimo elemento dell'array originale:
var myFlowers_array:Array = new Array("roses", "tulips", "lilies", "orchids");
trace( myFlowers_array.splice(1,2 ) ); // Displays tulips,lilies.
trace( myFlowers_array ); // roses,orchids
L'esempio seguente crea un array e lo giunta, utilizzando la posizione di indice 1 come parametro startIndex, il
numero 0 come parametro deleteCount e la stringa chair come parametro value. In tal modo, dall'array originale
non viene rimosso alcun elemento e la stringa chair viene aggiunta in corrispondenza dell'indice 1:
var myFurniture_array:Array = new Array("couch", "bed", "desk", "lamp");
trace( myFurniture_array.splice(1,0, "chair" ) ); // Displays empty array.
trace( myFurniture_array ); // displays couch,chair,bed,desk,lamp
toString (metodo Array.toString)
public toString() : String
Restituisce un valore di tipo stringa che rappresenta gli elementi dell'oggetto Array specificato. Ogni elemento
dell'array, a partire dall'elemento con l'indice 0 fino all'elemento con l'indice dal numero più alto, viene convertito in
una stringa concatenata e separato per mezzo di virgole. Per specificare un separatore personalizzato, utilizzare il
metodo Array.join().
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa.
Esempio
L'esempio seguente crea l'array my_array e lo converte in stringa.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 200
Classi ActionScript
var my_array:Array = new Array();
my_array[0] = 1;
my_array[1] = 2;
my_array[2] = 3;
my_array[3] = 4;
my_array[4] = 5;
trace(my_array.toString()); // Displays 1,2,3,4,5.
Questo esempio genera 1,2,3,4,5 come risultato dell'istruzione trace.
Vedete anche
split (metodo String.split), join (metodo Array.join)
UNIQUESORT (proprietà Array.UNIQUESORT)
public static UNIQUESORT : Number
Rappresenta il requisito dell'ordinamento univoco. Questa costante può essere utilizzata per il parametro options nel
metodo sort() o sortOn(). L'opzione di ordinamento univoco abbandona l'operazione di ordinamento se due
elementi o campi qualsiasi in fase di ordinamento hanno valori identici. Il valore di questa costante è 4.
Disponibilità
Flash Lite 2.0
Vedete anche
sort (metodo Array.sort), sortOn (metodo Array.sortOn)
unshift (metodo Array.unshift)
public unshift(value:Object) : Number
Aggiunge uno o più elementi all'inizio di un array e restituisce la nuova lunghezza dell'array.
Disponibilità
Flash Lite 2.0
Parametri
value:Object - Uno o più numeri, elementi o variabili da inserire all'inizio dell'array.
Restituisce
Number - Un numero intero che rappresenta la lunghezza dell'array.
Esempio
L'esempio seguente mostra l'utilizzo del metodo Array.unshift():
var pets_array:Array = new Array("dog", "cat", "fish");
trace( pets_array ); // Displays dog,cat,fish.
pets_array.unshift("ferrets", "gophers", "engineers");
trace( pets_array ); // Displays ferrets,gophers,engineers,dog,cat,fish.
Vedete anche
pop (metodo Array.pop), push (metodo Array.push), shift (metodo Array.shift)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 201
Classi ActionScript
BitmapData (flash.display.BitmapData)
Object
|
+-flash.display.BitmapData
public class BitmapData
extends Object
La classe BitmapData consente di creare delle immagini bitmap trasparenti e opache con dimensioni arbitrarie e di
manipolarle in vari modi in fase di runtime.
Questa classe consente di separare le operazioni di rendering bitmap dalle routine interne di aggiornamento della
visualizzazione del player Flash Lite. Manipolando direttamente un oggetto BitmapData è possibile creare immagini
molto complesse senza la necessità di ridisegnare costantemente il contenuto per ogni fotogramma partendo dai dati
vettoriali.
I metodi della classe BitmapData supportano una vasta gamma di effetti che non sono disponibili nell'interfaccia
generica dei filtri.
Un oggetto BitmapData contiene un array di dati pixel. Questi dati possono rappresentare un'immagine bitmap
completamente opaca o un'immagine bitmap trasparente contenente dati per il canale alfa. Entrambi i tipi di oggetto
BitmapData sono memorizzati sotto forma di buffer di numeri interi a 32 bit. Ogni numero intero a 32 bit determina
le proprietà di un singolo pixel nell'immagine bitmap.
Ogni numero intero a 32 bit è una combinazione di quattro valori "canale" a 8 bit (da 0 a 255) che descrivono i valori
per la trasparenza alfa e per il rosso, il verde e il blu (ARGB) del pixel.
I quattro canali (rosso, verde, blu e alfa) vengono rappresentati come numeri se utilizzati con il metodo
BitmapData.copyChannel() o le proprietà DisplacementMapFilter.componentX e
DisplacementMapFilter.componentY come nell'esempio seguente:
•
1 (rosso)
•
2 (verde)
•
4 (blu)
•
8 (alfa)
Potete associare oggetti BitmapData a un oggetto MovieClip mediante il metodo MovieClip.attachBitmap().
Potete utilizzare un oggetto BitmapData per riempire un'area di un clip filmato mediante il metodo
MovieClip.beginBitmapFill().
La larghezza e l'altezza massime di un oggetto BitmapData corrispondono a 2880 pixel.
Disponibilità
Flash Lite 3.1
Vedete anche
attachBitmap (metodo MovieClip.attachBitmap), beginFill (metodo MovieClip.beginFill)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 202
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
height:Number [sola
lettura]
L'altezza dell'immagine bitmap, espressa in pixel.
rectangle:Rectangle [sola
lettura]
Il rettangolo che definisce le dimensioni e la posizione
dell'immagine bitmap.
transparent:Boolean [sola Indica se l'immagine bitmap supporta la trasparenza per pixel.
lettura]
width:Boolean [sola
lettura]
La larghezza dell'immagine bitmap, espressa in pixel.
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
BitmapData(width:Num Crea un nuovo oggetto BitmapData con specificati valori di larghezza e altezza.
ber,
height:Number,[tran
sparent:Boolean],
[fillColor:Number])
Riepilogo dei metodi
Modificatori
Firma
Descrizione
applyFilter
Usa un'immagine di origine e un oggetto filtro per generare
l'immagine filtrata.
Flash Lite 3.1 non supporta i filtro pertanto questo metodo non è
supportato.
clone(): BitmapData
Restituisce un nuovo oggetto BitmapData che è un clone
dell'istanza originale con una copia esatta dell'immagine bitmap
contenuta.
colorTransform(rect:Re
ctangle,
colorTransform:Color
Transform) : Void
Regola i valori di colore in un'area specificata di un'immagine
bitmap utilizzando un oggetto ColorTransform.
copyChannel(sourceBit Trasferisce i dati da un canale di un altro oggetto BitmapData o
map:BitmapData,
dell'oggetto BitmapData corrente a un canale dell'oggetto
sourceRect:
BitmapData corrente.
Rectangle,
destPoint:Point,
sourceChannel:Numbe
r, destChannel:
Number: Void
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 203
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
copyPixels(sourceBitm
ap:BitmapData,
Fornisce una routine veloce per la modifica dei pixel tra immagini
prive di effetti di allungamento, rotazione o colore.
sourceRect
:Rectangle,
destPoint:Point,
[alphaBitmap:BitmapD
ata],
[alphaPoint:Point,
[mergeAlpha:Boolean]
) : Void
dispose() : Void
Libera la memoria utilizzata per memorizzare l'oggetto
BitmapData.
draw(source:Object,
Disegna un'immagine di origine o un clip filmato su un'immagine
[matrix:Matrix],[colo di destinazione, utilizzando il renderer di vettori del player Flash
rTransform:ColorTransf Lite.
orm],[blendMode:Obje
ct],[cliprect:Rectang
le],[smooth:Boolean])
: Void
fillRect(rect:Rectangle, Riempie un'area rettangolare di pixel con un determinato colore
color:Number) : Void ARGB.
floodFill(x:Number,
Esegue un'operazione di riempimento su un'immagine partendo
y:Number,
da una coordinata (x, y) e applicando un riempimento di un
color:Number) : Void determinato colore.
generateFilterRect
Determina il rettangolo di destinazione su cui agisce la chiamata a
applyFilter(), dati un oggetto BitmapData, un rettangolo di
origine e un oggetto filter.
Flash Lite non supporta questo metodo.
getColorBoundsRect(mas
k:Number,
color:Number,
[findColor:Boolean]
) :Rectangle
Determina un'area rettangolare che racchiude completamente
tutti i pixel di un colore specificato all'interno dell'immagine
bitmap.
getPixel(x:Number,
y:Number) : Number
Restituisce un numero intero che rappresenta un valore in pixel
RGB corrispondente a un punto specifico di un oggetto
BitmapData (x, y).
getPixel32(x:Number,
y:Number) : Number
Restituisce un valore di colore ARGB che contiene dati del canale
alfa e dati RGB.
hitTest(firstPoint:Poi
nt,
Esegue un rilevamento per zone a livello di pixel tra una singola
immagine bitmap e un punto, un rettangolo o un'altra immagine
bitmap.
firstAlphaThreshold
:Number,
secondObject:Object,
[secondBitmapPoint:
Point],
[secondAlphaThresho
ld:Number] ) :Boolean
static
loadBitmap(id:String):
BitmapData
Restituisce un nuovo oggetto BitmapData contenente la
rappresentazione di un'immagine bitmap del simbolo identificato
dall'ID di concatenamento della libreria.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 204
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
merge(sourceBitmap:B Esegue una fusione per ogni canale da un'immagine di origine a
itmapData,
una di destinazione.
sourceRect:Rectangle,
destPoint:Point,
redMult:Number,
greenMult:Number,
blueMult:Number,
alphaMult:Number) :
Void
noise
Riempie un'immagine con pixel che rappresentano disturbi a caso.
Flash Lite non supporta questo metodo.
paletteMap
Mappa nuovamente i valori dei canali di colore di un'immagine che
ha fino a quattro array di dati della tavolozza, uno per ogni canale.
Flash Lite non supporta questo metodo.
perlinNoise
Genera un'immagine di disturbo Perlin.
Flash Lite non supporta questo metodo.
pixelDissolve
Esegue una dissolvenza pixel da un'immagine di origine a una di
destinazione oppure utilizzando la stessa immagine.
Flash Lite non supporta questo metodo.
scroll
Scorre un'immagine di una certa quantità di pixel (x, y).
Flash Lite non supporta questo metodo.
setPixel(x:Number,
Imposta il colore di un singolo pixel di un oggetto BitmapData.
y:Number,
color:Number) : Void
Imposta il colore e la trasparenza alfa di un singolo pixel di un
setPixel32(x:Number,
y:Number,
oggetto BitmapData.
color:Number) : Void
threshold
Prova i valori in pixel di un'immagine in base a una soglia
specificata e imposta i pixel che superano la prova a nuovi valori di
colore.
Flash Lite non supporta questo metodo.
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
funzione di costruzione BitmapData
public BitmapData(width:Number, height:Number, [transparent:Boolean], [fillColor:Number])
Crea un nuovo oggetto BitmapData con specificati valori di larghezza e altezza. Se viene specificato un valore del
parametro fillColor, ogni pixel nella bitmap viene impostato su tale colore.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 205
Classi ActionScript
Per impostazione predefinita, l'immagine bitmap viene creata come opaca, a meno che si passi il valore true per il
parametro transparent. Una volta creata un'immagine bitmap opaca, non è possibile modificare in bitmap
trasparente. Ogni pixel in un'immagine bitmap opaca utilizza solo 24 bit di informazioni dei canali di colore. Se
definite l'immagine bitmap come transparent, ogni pixel utilizza 32 bit di informazioni dei canali di colore,
compreso il canale di trasparenza alfa.
La larghezza e l'altezza massime di un oggetto BitmapData corrispondono a 2880 pixel. Se per la larghezza e l'altezza
si specifica un valore maggiore di 2880, non viene creata una nuova istanza.
Disponibilità
Flash Lite 3.1
Parametri
width:Number - La larghezza dell'immagine bitmap espressa in pixel.
height:Number - L'altezza dell'immagine bitmap espressa in pixel.
transparent:Boolean [opzionale] - Specifica se l'immagine bitmap supporta la trasparenza per pixel. Il valore
predefinito è true (trasparente). Per creare un'immagine bitmap completamente trasparente, impostate il valore del
parametro transparent a true e il valore del parametro fillColor a 0x00000000 (o a 0).
fillColor:Number [opzionale] - Un valore per il colore ARGB a 32 bit utilizzato per riempire l'area dell'immagine
bitmap. Il valore predefinito è 0xFFFFFFFF (bianco uniforme).
Esempio
Nell'esempio seguente viene illustrato come creare un nuovo oggetto BitmapData. I valori dati sono quelli predefiniti
per i parametri transparent e fillColor; potete chiamare la funzione di costruzione senza alcun parametro e
ottenere lo stesso risultato.
import flash.display.BitmapData;
var
var
var
var
width:Number = 100;
height:Number = 80;
transparent:Boolean = true;
fillColor:Number = 0xFFFFFFFF;
var bitmap_1:BitmapData = new BitmapData(width, height, transparent, fillColor);
trace(bitmap_1.width); // 100
trace(bitmap_1.height); // 80
trace(bitmap_1.transparent); // true
var bitmap_2:BitmapData = new BitmapData(width, height);
trace(bitmap_2.width); // 100
trace(bitmap_2.height); // 80
trace(bitmap_2.transparent); // true
clone (metodo BitmapData.clone)
public clone() : BitmapData
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 206
Classi ActionScript
Restituisce un nuovo oggetto BitmapData che è una copia della bitmap clonata. Un clone e l'oggetto clonato
posseggono le medesime proprietà. Tuttavia, un clone non restituisce un valore uguale all'oggetto BitmapData clonato
in quanto le proprietà dell'oggetto originale vengono passate al clone per valore e non per riferimento. Se modificate i
valori nell'oggetto originale dopo la creazione del clone, questo non riceve i nuovi valori.
Disponibilità
Flash Lite 3.1
Restituisce
BitmapData - Un nuovo oggetto BitmapData identico all'originale.
Esempio
L'esempio seguente crea tre oggetti BitmapData e li confronta. Il codice utilizza la funzione di costruzione BitmapData
per creare l'istanza bitmap_1. Esso crea l'istanza bitmap_2 impostandola come uguale a bitmap_1. Il codice
crea l'istanza clonedBitmap clonando bitmap_1. In questo modo, benché bitmap_2 venga valutata come uguale a
bitmap_1, questo non avviene per clonedBitmap, sebbene contenga gli stessi valori di bitmap_1.
import flash.display.BitmapData;
var bitmap_1:BitmapData = new BitmapData(100, 80, false, 0x000000);
var bitmap_2:BitmapData = bitmap_1;
var clonedBitmap:BitmapData = bitmap_1.clone();
trace("bitmap_1 == bitmap_2 " + (bitmap_1 == bitmap_2)); // true
trace("bitmap_1 == clonedBitmap " + (bitmap_1 == clonedBitmap)); // false
trace("-------------bitmap_1 properties-------------")
for(var i in bitmap_1) {
trace(">> " + i + ": " + bitmap_1[i]);
}
trace("-------------bitmap_2 properties-------------")
for(var i in bitmap_2) {
trace(">> " + i + ": " + bitmap_1[i]);
}
trace("-------------clonedBitmap properties-------------")
for(var i in clonedBitmap) {
trace(">> " + i + ": " + clonedBitmap[i]);
}
Per dimostrare ulteriormente le relazioni tra bitmap_1, bitmap_2 e clonedBitmap, l'esempio seguente modifica il
valore dei pixel a (1,1) di bitmap_1. Modificando il valore del pixel in (1, 1) viene modificato il valore del pixel per
bitmap_2, in quanto bitmap_2 contiene riferimenti a bitmap_1. La modifica di bitmap_1 non influenza
clonedBitmap in quanto clonedBitmap non fa riferimento ai valori in bitmap_1.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 207
Classi ActionScript
import flash.display.BitmapData;
var bitmap_1:BitmapData = new BitmapData(100, 80, false, 0x000000);
var bitmap_2:BitmapData = bitmap_1;
var clonedBitmap:BitmapData = bitmap_1.clone();
trace(bitmap_1.getPixel32(1, 1)); // -16777216
trace(bitmap_2.getPixel32(1, 1)); // -16777216
trace(clonedBitmap.getPixel32(1, 1)); // -16777216
bitmap_1.setPixel32(1, 1, 0xFFFFFF);
trace(bitmap_1.getPixel32(1, 1)); // -1
trace(bitmap_2.getPixel32(1, 1)); // -1
trace(clonedBitmap.getPixel32(1, 1)); // -16777216
colorTransform (metodo BitmapData.colorTransform)
public colorTransform(rect: Rectangle, colorTransform: ColorTransform) : Void
Regola i valori di colore in un'area specificata di un'immagine bitmap utilizzando un oggetto ColorTransform. Se il
rettangolo corrisponde ai bordi dell'immagine bitmap, questo metodo trasforma i valori del colore dell'intera
immagine.
Disponibilità
Flash Lite 3.1
Parametri
rect:Rectangle - Un oggetto Rectangle che definisce l'area dell'immagine in cui viene applicato l'oggetto
ColorTransform.
colorTransform:ColorTransform - Un oggetto ColorTransform che descrive i valori della trasformazione di colore
da applicare.
Esempio
L'esempio seguente mostra come applicare un'operazione di trasformazione del colore ad un'istanza BitmapData.
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.ColorTransform;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
myBitmapData.colorTransform(myBitmapData.rectangle, new ColorTransform(1, 0, 0, 1, 255, 0,
0, 0));
}
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 208
Classi ActionScript
Vedete anche
ColorTransform (flash.geom.ColorTransform), Rectangle (flash.geom.Rectangle)
copyChannel (metodo BitmapData.copyChannel)
public copyChannel(sourceBitmap:BitmapData, sourceRect:Rectangle, destPoint:Point,
sourceChannel:Number, destChannel:Number) : Void
Trasferisce i dati da un canale di un altro oggetto BitmapData o dell'oggetto BitmapData corrente a un canale
dell'oggetto BitmapData corrente. Tutti i dati degli altri canali dell'oggetto BitmapData di destinazione vengono
mantenuti.
Il valore del canale di origine e il valore del canale di destinazione possono essere uno dei seguenti valori o la somma
di due o più di essi:
•
1 (rosso)
•
2 (verde)
•
4 (blu)
•
8 (alfa)
Disponibilità
Flash Lite 3.1
Parametri
sourceBitmap:BitmapData - L'immagine bitmap di input da usare. L'immagine di origine può essere un oggetto
BitmapData diverso oppure può fare riferimento all'oggetto BitmapData corrente.
sourceRect:Rectangle - L'oggetto Rectangle di origine. Se si desidera solo copiare solo i dati del canale da un'area più
piccola all'interno dell'immagine bitmap, specificare un rettangolo di origine più piccolo delle dimensioni complessive
dell'oggetto BitmapData.
destPoint:Point - L'oggetto Point di destinazione che rappresenta l'angolo superiore sinistro dell'area rettangolare in
cui verranno inseriti i nuovi dati del canale. Per copiare i dati del canale da un'area ad un'altra all'interno dell'immagine
di destinazione, specificare un punto diverso da (0,0).
sourceChannel:Number - Il canale di origine. Utilizzare un valore del gruppo (1,2,4,8) che rappresenti
rispettivamente i canali rosso, verde, blu e alfa oppure la somma di due o più dei valori.
destChannel:Number - Il canale di destinazione. Utilizzare un valore del gruppo (1,2,4,8) che rappresenti
rispettivamente i canali rosso, verde, blu e alfa oppure la somma di due o più dei valori.
Esempio
L'esempio seguente mostra come ricopiare un canale ARGB di origine da un oggetto BitmapData su se stesso in una
posizione diversa:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 209
Classi ActionScript
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
myBitmapData.copyChannel(myBitmapData, new Rectangle(0, 0, 50, 80), new Point(51, 0),
3, 1);
}
};
Vedete anche
Rectangle (flash.geom.Rectangle)
copyPixels (metodo BitmapData.copyPixels)
public copyPixels(sourceBitmap:BitmapData, sourceRect:Rectangle, destPoint:Point) : Void
Fornisce una routine veloce per la modifica dei pixel tra immagini prive di effetti di allungamento, rotazione o colore.
Il metodo copia un'area rettangolare di un'immagine di origine in un'area rettangolare delle stesse dimensioni in
corrispondenza del punto di destinazione dell'oggetto BitmapData di destinazione.
Disponibilità
Flash Lite 3.1
Parametri
sourceBitmap:BitmapData - L'immagine bitmap di input da cui copiare i pixel. L'immagine di origine può essere
un'istanza BitmapData diversa oppure può fare riferimento all'istanza BitmapData corrente.
sourceRect:Rectangle - Un rettangolo che definisce l'area dell'immagine di origine da utilizzare come input.
destPoint:Point - Il punto di destinazione che rappresenta l'angolo superiore sinistro dell'area rettangolare in cui
verranno inseriti i nuovi pixel.
Esempio
L'esempio seguente mostra come copiare pixel da un'istanza BitmapData ad un'altra.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 210
Classi ActionScript
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
var bitmapData_1:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var bitmapData_2:BitmapData = new BitmapData(100, 80, false, 0x00FF0000);
var mc_1:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_1.attachBitmap(bitmapData_1, this.getNextHighestDepth());
var mc_2:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_2.attachBitmap(bitmapData_2, this.getNextHighestDepth());
mc_2._x = 101;
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
bitmapData_2.copyPixels(bitmapData_1, new Rectangle(0, 0, 50, 80), new Point(51, 0));
}
else if (keyCode == ExtendedKey.SOFT2) {
// Handle right soft key event
bitmapData_1.copyPixels(bitmapData_2, new Rectangle(0, 0, 50, 80), new Point(51, 0));
}
};
dispose (metodo BitmapData.dispose)
public dispose() : Void
Libera la memoria utilizzata per memorizzare l'oggetto BitmapData.
Chiama myBitmapData.dispose() per impostare la larghezza e l'altezza dell'immagine su 0. Una volta liberata la
memoria di un oggetto BitmapData, le chiamate di accesso al metodo e alla proprietà sull'istanza danno esito negativo
e restituiscono il valore -1.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente mostra come liberare la memoria di un'istanza BitmapData risultante in un'istanza cancellata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 211
Classi ActionScript
import flash.display.BitmapData;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
myBitmapData.dispose()
trace(myBitmapData.width); // -1
trace(myBitmapData.height); // -1
trace(myBitmapData.transparent); // 1
}
};
draw (metodo BitmapData.draw)
public draw(source:Object, [matrix:Matrix], [colorTransform:ColorTransform],
[clipRect:Rectangle], [smooth:Boolean]) : Void
Disegna un'immagine di origine o un clip filmato su un'immagine di destinazione, utilizzando il renderer di vettori del
player Flash Lite. Per controllare il risultato del rendering è possibile utilizzare gli oggetti Matrix, ColorTransform,
BlendMode e un oggetto Rectangle di destinazione. Facoltativamente, potete specificare se la bitmap deve essere
smussata quando viene modificata in scala (questa soluzione funziona solo con un oggetto di origine BitmapData.
Questo metodo corrisponde al modo in cui gli oggetti vengono disegnati mediante il renderer di vettori standard per
gli oggetti nell'interfaccia dello strumento di creazione.
Un oggetto MovieClip di origine non utilizza nessuna delle relative trasformazioni sullo stage per questa chiamata.
Viene considerato come se facesse parte della libreria o del file, senza trasformazioni di matrice, trasformazioni di
colore e metodo di fusione. Se si desidera disegnare il clip filmato utilizzandone le proprietà di trasformazione, è
possibile utilizzarne l'oggetto Transform per passare le varie proprietà di trasformazione.
Il metodo blendMode non è supportato in Flash Lite.
Disponibilità
Flash Lite 3.1
Parametri
source:Object - L'oggetto BitmapData da disegnare.
matrix:Matrix [opzionale] - Un oggetto Matrix utilizzato per modificare in scala, ruotare o traslare le coordinate della
bitmap. Se non viene fornito alcun oggetto, l'immagine bitmap non viene trasformata. Se dovete passare questo
parametro, ma non desiderate trasformare l'immagine, impostate il parametro a una matrice identità creata
utilizzando la funzione di costruzione predefinita new Matrix().
colorTransform:ColorTransform [opzionale] - Un oggetto ColorTransform utilizzato per regolare i valori del colore
della bitmap. Se non viene fornito alcun oggetto, i colori dell'immagine bitmap non viene trasformata. Se dovete
passare questo parametro, ma non desiderate trasformare l'immagine, impostate il parametro a un oggetto
ColorTransform creato utilizzando la funzione di costruzione predefinita new ColorTransform().
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 212
Classi ActionScript
clipRect:Rectangle [opzionale] - Un oggetto Rectangle. Se questo valore non viene fornito, si verificano dei
troncamenti.
smooth:Boolean [opzionale] - Un valore booleano che determina se un oggetto BitmapData viene smussato durante
la modifica in scala Il valore predefinito è false.
Esempio
L'esempio seguente mostra come disegnare da un'istanza MovieClip di origine ad un oggetto BitmapData.
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Matrix;
import flash.geom.ColorTransform;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc_1: MovieClip = this.createEmptyMovieClip("mc",this.getNextHighestDepth());
mc_1.attachBitmap (my BitmapData,this.getNextHighestDepth());
var mc_2:MovieClip = createRectangle(50, 40, 0xFF0000);
mc_2._x = 101;
var myMatrix:Matrix = new Matrix();
myMatrix.rotate(Math.PI/2);
var translateMatrix:Matrix = new Matrix();
translateMatrix.translate(70, 15);
myMatrix.concat(translateMatrix);
var myColorTransform:ColorTransform = new ColorTransform (0, 0, 1 , 1, 0, 0 , 255, 0);
var blend Mode:String = "normal";
var myRectangle:Rectangle = new Rectangle(0, 0, 100, 80);
var smooth:Boolean = true;
mc_1.onPress = function() {
myBitmapData.draw(mc_2, myMatrix, myColorTransform, blendMode, myRectangle,
smooth);
}
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
fillRect (metodo BitmapData.fillRect)
public fillRect(rect:Rectangle, color:Number) : Void
Riempie un'area rettangolare di pixel con un determinato colore ARGB.
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 213
Classi ActionScript
Parametri
rect:Rectangle - L'area rettangolare da riempire.
color:Number - Il valore di colore ARGB che riempie l'area. I colori ARGB vengono spesso specificati in formato
esadecimale (ad esempio, 0xFF336699).
Esempio
L'esempio seguente mostra come riempire con un colore un'area che viene definita da un Rectangle all'interno di un
oggetto BitmapData.
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
myBitmapData.fillRect(new Rectangle(0, 0, 50, 40), 0x00FF0000);
}
};
Vedete anche
Rectangle (flash.geom.Rectangle)
floodFill (metodo BitmapData.floodFill)
public floodFill(x:Number, y:Number, color:Number) : Void
Esegue un'operazione di riempimento su un'immagine partendo da una coordinata (x, y) e applicando un
riempimento di un determinato colore. Il metodo floodFill() è simile allo strumento "secchio di vernice" presente
in molti programmi di grafica. Il colore è un colore ARGB che contiene le informazioni sia sull'alfa che sui colori.
Disponibilità
Flash Lite 3.1
Parametri
x:Number - La coordinata x dell'immagine.
y:Number - La coordinata y dell'immagine.
color:Number - Il colore ARGB da utilizzare come riempimento. I colori ARGB vengono spesso specificati in formato
esadecimale (ad esempio, 0xFF336699).
Esempio
L'esempio seguente mostra come applicare un riempimento di colore in un'immagine partendo dal punto su cui
l'utente fa clic all'interno dell'oggetto BitmapData.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 214
Classi ActionScript
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
myBitmapData.fillRect(new Rectangle(0, 0, 50, 40), 0x00FF0000);
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
myBitmapData.floodFill(_xmouse, _ymouse, 0x000000FF);}
};
getColorBoundsRect (metodo BitmapData.getColorBoundsRect)
public getColorBoundsRect(mask:Number, color:Number, [findColor:Boolean]) : Rectangle
Determina un'area rettangolare che racchiude completamente tutti i pixel di un colore specificato all'interno
dell'immagine bitmap.
Ad esempio, disponete di un'immagine di origine e desiderate determinare il rettangolo che contiene un canale alfa
diverso da 0, passate {mask: 0xFF000000, color: 0x00000000} come parametri. All'interno dell'intera immagine
viene effettuata la ricerca dei limiti di pixel di cui (value & mask) != color. Per determinare lo spazio bianco
attorno all'immagine, passate {mask: 0xFFFFFFFF, color: 0xFFFFFFFF} per trovare i limiti dei pixel diversi dal
bianco.
Disponibilità
Flash Lite 3.1
Parametri
mask:Number - Un valore di colore esadecimale.
color:Number - Un valore di colore esadecimale.
findColor:Boolean [opzionale] - Se il valore è impostato su true, restituisce i limiti di un valore di colore in
un'immagine. Se il valore è impostato su false, restituisce i limiti del punto in cui questo colore non esiste in
un'immagine. Il valore predefinito è true.
Restituisce
Rectangle - L'area dell'immagine corrispondente al colore specificato.
Esempio
L'esempio seguente mostra come determinare un'area rettangolare che racchiude completamente tutti i pixel di un
colore specificato all'interno dell'immagine bitmap.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 215
Classi ActionScript
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
myBitmapData.fillRect(new Rectangle(0, 0, 50, 40), 0x00FF0000);
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
var colorBoundsRect:Rectangle = myBitmapData.getColorBoundsRect(0x00FFFFFF,
0x00FF0000, true);
trace(colorBoundsRect); // (x=0, y=0, w=50, h=40)
}
};
Key.addListener (myListener);
getPixel (metodo BitmapData.getPixel)
public getPixel(x:Number, y:Number) : Number
Restituisce un numero intero che rappresenta un valore in pixel RGB corrispondente a un punto specifico di un
oggetto BitmapData (x, y). Il metodo getPixel() restituisce un valore di pixel non moltiplicato. Non viene restituita
alcuna informazione sull'alfa.
Tutti i pixel di un oggetto BitmapData vengono memorizzati sotto forma di valori di colore premoltiplicati. In un pixel
di immagine premoltiplicato i valori dei canali rosso, verde e blu sono già moltiplicati per i dati dell'alfa. Ad esempio,
se il valore dell'alfa è 0, anche i canali RGB sono 0, indipendentemente dai relativi valori non moltiplicati.
Questa perdita di dati può provocare dei problemi durante l'esecuzione delle operazioni. Tutti i metodi del player Flash
Lite accettano e restituiscono valori non moltiplicati. La rappresentazione sotto forma di pixel interni non è
moltiplicata prima che venga restituita come valore. Durante un'operazione impostata, il valore in pixel viene
premoltiplicato prima di impostare il pixel dell'immagine grezza.
Disponibilità
Flash Lite 3.1
Parametri
x:Number - La posizione x del pixel.
y:Number - La posizione y del pixel.
Restituisce
Number - Un numero che rappresenta un valore in RGB del pixel. Se le coordinate (x, y) sono fuori dei limiti
dell'immagine, viene restituito il valore 0.
Esempio
L'esempio seguente utilizza il metodo getPixel() per recuperare il valore RGB di un pixel in una specifica posizione
x e y.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 216
Classi ActionScript
import flash.display.BitmapData;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
trace("0x" + myBitmapData.getPixel(0, 0).toString(16)); // 0xcccccc
Vedete anche
getPixel32 (metodo BitmapData.getPixel32)
getPixel32 (metodo BitmapData.getPixel32)
public getPixel32(x:Number, y:Number) : Number
Restituisce un valore di colore ARGB che contiene dati di canale alfa e dati RGB. Questo metodo è simile al metodo
getPixel(), che restituisce un colore RGB senza dati relativi al canale alfa.
Disponibilità
Flash Lite 3.1
Parametri
x:Number - La posizione x del pixel.
y:Number - La posizione y del pixel.
Restituisce
Number - Un numero che rappresenta un valore in ARGB del pixel. Se le coordinate (x, y) sono fuori dei limiti
dell'immagine, viene restituito il valore 0. Se l'immagine bitmap è stata creata come bitmap opaca e non trasparente, il
metodo restituisce un codice di errore -1.
Esempio
L'esempio seguente utilizza il metodo getPixel32() per recuperare il valore ARGB di un pixel in una specifica
posizione x e y.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 217
Classi ActionScript
import flash.display.BitmapData;
var myBitmapData:BitmapData = new BitmapData(100, 80, true, 0xFFAACCEE);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
var alpha:String = (myBitmapData.getPixel32(0, 0) >> 24 & 0xFF).toString(16);
trace(">> alpha: " + alpha); // ff
var red:String = (myBitmapData.getPixel32(0, 0) >> 16 & 0xFF).toString(16);
trace(">> red: " + red); // aa
var green:String = (myBitmapData.getPixel32(0, 0) >> 8 & 0xFF).toString(16);
trace(">> green: " + green); // cc
var blue:String = (myBitmapData.getPixel32(0, 0) & 0xFF).toString(16);
trace(">> blue: " + blue); // ee
trace("0x" + alpha + red + green + blue); // 0xffaaccee
Vedete anche
getPixel (metodo BitmapData.getPixel)
height (proprietà BitmapData.height)
public height : Number [read-only]
L'altezza dell'immagine bitmap, espressa in pixel.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente mostra che la proprietà height dell'istanza BitmapData è di sola lettura cercando di impostarla e
dando esito negativo:
import flash.display.BitmapData;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
trace(myBitmapData.height); // 80
myBitmapData.height = 999;
trace(myBitmapData.height); // 80
hitTest (metodo BitmapData.hitTest)
public hitTest(firstPoint:Point, firstAlphaThreshold:Number, secondObject:Object,
[secondBitmapPoint:Point], [secondAlphaThreshold:Number]) : Boolean
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 218
Classi ActionScript
Esegue un rilevamento per zone a livello di pixel tra una singola immagine bitmap e un punto, un rettangolo o un'altra
immagine bitmap. Durante l'esecuzione del rilevamento per zone non vengono considerati allungamenti, rotazioni o
altre trasformazioni per nessun oggetto.
Se un'immagine è opaca, questo metodo la considera un rettangolo completamente opaco. Entrambe le immagini
devono essere trasparenti per eseguire un rilevamento per zone a livello di pixel che consideri la trasparenza. Quando
si verificano due immagini trasparenti, i parametri di soglia dell'alfa controllano quali valori di canale alfa (da 0 a 255)
vengono considerati opachi.
Disponibilità
Flash Lite 3.1
Parametri
firstPoint:Point - Un punto che definisce la posizione di un pixel nell'istanza BitmapData corrente.
firstAlphaThreshold:Number - Il valore di canale alfa più alto che viene considerato opaco per la verifica di
rilevamento delle zone attive.
secondObject:Object - Un oggetto Rectangle, Point o BitmapData.
secondBitmapPoint:Point [opzionale] - Un punto che definisce la posizione di un pixel nel secondo oggetto
BitmapData. Utilizzare questo parametro solo quando il valore di secondObject è un oggetto BitmapData.
secondAlphaThreshold:Number [opzionale] - Il valore di canale alfa più alto che viene considerato opaco per il
secondo oggetto BitmapData. Utilizzare questo parametro solo quando il valore di secondObject è un oggetto
BitmapData ed entrambi gli oggetti BitmapData sono trasparenti.
Restituisce
Boolean - Un valore booleano. Se viene rilevata una zona, il valore è true; in caso contrario è false.
Esempio
L'esempio seguente mostra come determinare se un oggetto BitmapData entra in collisione con un oggetto
MovieClip.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 219
Classi ActionScript
import flash.display.BitmapData;
import flash.geom.Point;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc_1:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_1.attachBitmap(myBitmapData, this.getNextHighestDepth());
var mc_2:MovieClip = createRectangle(20, 20, 0xFF0000);
var destPoint:Point = new Point(myBitmapData.rectangle.x, myBitmapData.rectangle.y);
var currPoint:Point = new Point();
mc_1.onEnterFrame = function() {
currPoint.x = mc_2._x;
currPoint.y = mc_2._y;
if(myBitmapData.hitTest(destPoint, 255, currPoint)) {
trace(">> Collision at x:" + currPoint.x + " and y:" + currPoint.y);
}
}
mc_2.startDrag(true);
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
loadBitmap (metodo BitmapData.loadBitmap)
public static loadBitmap(id:String) : BitmapData
Restituisce un nuovo oggetto BitmapData contenente la rappresentazione di un'immagine bitmap del simbolo che
viene identificato dall'ID di concatenamento della libreria.
Disponibilità
Flash Lite 3.1
Parametri
id:String - Un identificatore di concatenamento di un simbolo presente nella libreria.
Restituisce
BitmapData - Una rappresentazione di immagine bitmap del simbolo.
Esempio
L'esempio seguente mostra un'immagine bitmap con identificatore di concatenamento libraryBitmap della propria
libreria. È necessario collegarlo ad un oggetto MovieClip per dargli una rappresentazione visiva.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 220
Classi ActionScript
import flash.display.BitmapData;
var linkageId:String = "libraryBitmap";
var myBitmapData:BitmapData = BitmapData.loadBitmap(linkageId);
trace(myBitmapData instanceof BitmapData); // true
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
merge (metodo BitmapData.merge)
public merge(sourceBitmap:BitmapData, sourceRect:Rectangle, destPoint:Rectangle,
redMult:Number, greenMult:Number, blueMult:Number, alphaMult:Number) : Void
Esegue una fusione per ogni canale da un'immagine di origine a una di destinazione. La formula seguente viene
utilizzata per ciascun canale:
nuova destinaz. rosso = (origine rosso * redMult) + (destinaz. rosso * (256 - redMult) / 256;
I valori redMult, greenMult, blueMult e alphaMult sono i moltiplicatori utilizzati per ciascun canale di colore.
L'intervallo di valori validi è compreso tra 0 e 256.
Disponibilità
Flash Lite 3.1
Parametri
sourceBitmap:BitmapData - L'immagine bitmap di input da usare. L'immagine di origine può essere un oggetto
BitmapData diverso oppure può fare riferimento all'oggetto BitmapData corrente.
sourceRect:Rectangle - Un rettangolo che definisce l'area dell'immagine di origine da utilizzare come input.
destPoint:Point - Il punto all'interno dell'immagine di destinazione (l'istanza BitmapData corrente) che corrisponde
all'angolo superiore sinistro del rettangolo di origine.
redMult:Number - Un numero per cui moltiplicare il valore del canale rosso.
greenMult:Number - Un numero per cui moltiplicare il valore del canale verde.
blueMult:Number - Un numero per cui moltiplicare il valore del canale blu.
alphaMult:Number - Un numero per cui moltiplicare il valore della trasparenza alfa.
Esempio
L'esempio seguente mostra come incorporare parte di un oggetto BitmapData in un altro.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 221
Classi ActionScript
fscommand2("SetSoftKeys");
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
var bitmapData_1:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var bitmapData_2:BitmapData = new BitmapData(100, 80, false, 0x00FF0000);
var mc_1:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_1.attachBitmap(bitmapData_1, this.getNextHighestDepth());
var mc_2:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc_2.attachBitmap(bitmapData_2, this.getNextHighestDepth());
mc_2._x = 101;
var myListener:Object = new Object ();
myListener.onKeyDown = function () {
var keyCode = Key.getCode ();
if (keyCode == ExtendedKey.SOFT1) {
// Handle left soft key event
bitmapData_1.merge(bitmapData_2, new Rectangle(0, 0, 50, 40), new Point(25, 20), 128,
0, 0, 0);
}
};
Key.addListener (myListener);
rectangle (proprietà BitmapData.rectangle)
public rectangle : Rectangle [read-only]
Il rettangolo che definisce le dimensioni e la posizione dell'immagine bitmap. La parte superiore e sinistra del
rettangolo hanno valore zero; la larghezza e l'altezza sono uguali alla larghezza e all'altezza espresse in pixel dell'oggetto
BitmapData.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente mostra che la proprietà rectangle dell'istanza Bitmap è di sola lettura cercando di impostarla e
dando esito negativo:
import flash.display.BitmapData;
import flash.geom.Rectangle;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
trace(myBitmapData.rectangle); // (x=0, y=0, w=100, h=80)
myBitmapData.rectangle = new Rectangle(1, 2, 4, 8);
trace(myBitmapData.rectangle); // (x=0, y=0, w=100, h=80)
setPixel (metodo BitmapData.setPixel)
public setPixel(x:Number, y:Number, color:Number) : Void
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 222
Classi ActionScript
Imposta il colore di un singolo pixel di un oggetto BitmapData. Durante l'operazione, il valore corrente del canale alfa
dei pixel dell'immagine viene conservato. Il valore del parametro di colore RGB viene gestito come un valore di colore
non moltiplicato.
Disponibilità
Flash Lite 3.1
Parametri
x:Number - La posizione x del pixel il cui valore cambia.
y:Number - La posizione y del pixel il cui valore cambia.
color:Number - Il colore RGB su cui impostare il pixel.
Vedete anche
getPixel (metodo BitmapData.getPixel), setPixel32 (metodo BitmapData.setPixel32)
setPixel32 (metodo BitmapData.setPixel32)
public setPixel32(x:Number, y:Number, color:Number) : Void
Imposta il colore e la trasparenza alfa di un singolo pixel di un oggetto BitmapData. Questo metodo è simile al metodo
setPixel(); la differenza principale consiste nel fatto che il metodo setPixel32() accetta un valore di colore ARGB
che contiene le informazioni sul canale alfa.
Disponibilità
Flash Lite 3.1
Parametri
x:Number - La posizione x del pixel il cui valore cambia.
y:Number - La posizione y del pixel il cui valore cambia.
color:Number - Il colore ARGB su cui impostare il pixel. Se è stata creata un'immagine bitmap opaca (non
trasparente), la parte di trasparenza alfa di questo valore di colore viene ignorata.
Vedete anche
getPixel32 (metodo BitmapData.getPixel32), setPixel (metodo BitmapData.setPixel)
transparent (proprietà BitmapData.transparent)
public transparent : Boolean [read-only]
Indica se l'immagine bitmap supporta la trasparenza per pixel. Potete impostare questo valore solo quando create un
oggetto BitmapData passando il valore true per il parametro transparent. Dopo aver creato un oggetto BitmapData,
potete controllare se supporta la trasparenza per pixel verificando se il valore della proprietà transparent è true.
Disponibilità
Flash Lite 3.1
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 223
Ultimo aggiornamento 4/5/2010
Classi ActionScript
width (proprietà BitmapData.width)
public width : Number [read-only]
La larghezza dell'immagine bitmap, espressa in pixel.
Disponibilità
Flash Lite 3.1
Boolean
Object
|
+-Boolean
public class Boolean
extends Object
La classe Boolean è un oggetto wrapper con la stessa funzionalità dell'oggetto Boolean standard di JavaScript. Utilizzare
la classe Boolean per recuperare il tipo di dati di base o la rappresentazione in formato stringa di un oggetto Boolean.
Per creare un oggetto Boolean prima di chiamarne i metodi, utilizzare la funzione di costruzione new Boolean().
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Boolean([value:Objec
t])
Crea un oggetto Boolean.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
toString() : String
Restituisce la rappresentazione in formato stringa ("true" o
"false") dell'oggetto Boolean.
valueOf() : Boolean
Restituisce true se il tipo di valore di base dell'oggetto
Boolean specificato è true; false in caso contrario.
Metodi ereditati dalla classe Object
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 224
Classi ActionScript
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Boolean (funzione di costruzione)
public Boolean([value:Object])
Crea un oggetto Boolean. Se si omette il parametro value, l'oggetto Boolean viene inizializzato con il valore false. Se
per il parametro value si specifica un valore, il metodo lo valuta e restituisce il risultato sotto forma di un valore
booleano in base alle regole specificate nell'intera funzione Boolean().
Disponibilità
Flash Lite 2.0
Parametri
value:Object [opzionale] - Qualsiasi espressione. Il valore predefinito è false.
Esempio
Il codice seguente crea un nuovo oggetto Boolean vuoto di nome myBoolean:
var myBoolean:Boolean = new Boolean();
toString (metodo Boolean.toString)
public toString() : String
Restituisce la rappresentazione in formato stringa ("true" o "false") dell'oggetto Boolean.
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa; "true" o "false".
Esempio
Questo esempio crea una variabile di tipo Boolean e utilizza toString() per convertire il valore in una stringa da
utilizzare nell'istruzione trace:
var myBool:Boolean = true;
trace("The value of the Boolean myBool is: " + myBool.toString());
myBool = false;
trace("The value of the Boolean myBool is: " + myBool.toString());
valueOf (metodo Boolean.valueOf)
public valueOf() : Boolean
Restituisce true se il tipo di valore di base dell'oggetto Boolean specificato è true; false in caso contrario.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 225
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Disponibilità
Flash Lite 2.0
Restituisce
Boolean - Un valore booleano.
Esempio
L'esempio seguente mostra come funziona questo metodo e dimostra che il tipo di valore di base di un nuovo oggetto
Boolean è false:
var x:Boolean = new Boolean();
trace(x.valueOf());
// false
x = (6==3+3);
trace(x.valueOf());
// true
Pulsante
Object
|
+-Button
public class Button
extends Object
Tutti i simboli di pulsante sono istanze dell'oggetto Button. È possibile assegnare un nome di istanza a un pulsante nella
finestra di ispezione Proprietà e utilizzare i metodi e le proprietà della classe Button per gestire i pulsanti con
ActionScript. I nomi di istanza dei pulsanti sono visualizzati in Esplora filmato e nella finestra di dialogo Inserisci
percorso target del pannello Azioni.
Disponibilità
Flash Lite 2.0
Vedete anche
Object
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
_alpha:Number
Il valore della trasparenza alfa del pulsante.
enabled:Boolean
Un valore booleano che specifica se un pulsante è abilitato.
_focusrect:Boolean
Un valore booleano che specifica se attorno a un pulsante è
presente un rettangolo giallo quando il pulsante viene
attivato.
_height:Number
L'altezza del pulsante espressa in pixel.
_highquality:Number
Sconsigliata a partire da Flash Player 7. Questa proprietà è
stata sconsigliata a favore di Button._quality.
Specifica il livello di antialiasing applicato al file SWF corrente.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 226
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
_name:String
Il nome di istanza del pulsante.
_parent:MovieClip
Un riferimento al clip filmato o all'oggetto che contiene il clip
filmato o l'oggetto corrente.
_quality:String
Proprietà (globale); imposta o recupera la qualità di rendering
utilizzata per un file SWF.
_rotation:Number
La rotazione del pulsante, espressa in pixel, rispetto alla
posizione originale.
_soundbuftime:Number
Specifica il numero di secondi per cui un suono viene inserito
nel prebuffer prima che ne inizi lo streaming.
tabEnabled:Boolean
Specifica se un pulsante è incluso nell'ordine di tabulazione
automatico.
tabIndex:Number
Consente di personalizzare l'ordine di tabulazione in un file
SWF.
_target:String [sola
lettura]
Restituisce il percorso di destinazione dell'istanza di pulsante.
trackAsMenu:Boolean
Un valore booleano che indica se altri pulsanti o clip filmato
possono ricevere eventi associati al rilascio del mouse o dello
stilo.
_url:String [sola lettura]
Recupera l'URL del file SWF che ha creato il pulsante.
_visible:Boolean
Un valore booleano che indica se il pulsante è visibile.
_width:Number
La larghezza del pulsante espressa in pixel.
_x:Number
Un numero intero che imposta la coordinata x di un pulsante
rispetto alle coordinate locali del clip filmato principale.
_xmouse:Number [sola
lettura]
Restituisce la coordinata x della posizione del mouse rispetto al
pulsante.
_xscale:Number
La scala orizzontale del pulsante applicata dal punto di
registrazione del pulsante, espressa sotto forma di
percentuale.
_y:Number
La coordinata y del pulsante rispetto alle coordinate locali del
clip filmato principale.
_ymouse:Number [sola
lettura]
Restituisce la coordinata y della posizione del mouse rispetto al
pulsante.
_yscale:Number
La scala verticale del pulsante applicata dal punto di
registrazione del pulsante, espressa sotto forma di
percentuale.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 227
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo degli eventi
Evento
Descrizione
onDragOut =
Richiamato quando l'utente fa clic sul pulsante e trascina il puntatore al di fuori di esso.
function() {}
onDragOver =
function() {}
Richiamato quando l'utente fa clic al di fuori del pulsante e successivamente trascina il
puntatore sul pulsante.
onKeyDown =
function() {}
Richiamato quando un pulsante è stato attivato mediante tastiera e viene premuto un
tasto.
onKeyUp =
Richiamato quando un pulsante è stato attivato e viene rilasciato un tasto.
function() {}
onKillFocus =
Richiamato quando un pulsante viene disattivato mediante tastiera.
function(newFocus:
Object) {}
onPress = function()
Richiamato quando viene premuto un pulsante.
{}
onRelease =
function() {}
Richiamato quando viene rilasciato un pulsante.
onReleaseOutside =
function() {}
Richiamato quando il mouse viene rilasciato mentre il puntatore si trova al di fuori del
pulsante dopo che il pulsante del mouse è stato premuto mentre il puntatore si trovava
all'interno del pulsante.
onRollOut =
Richiamato quando un pulsante viene disattivato.
function() {}
onRollOver =
Richiamato quando un pulsante viene attivato.
function() {}
onSetFocus =
Richiamato quando un pulsante viene attivato mediante tastiera.
function(oldFocus:
Object) {}
Riepilogo dei metodi
Modificatori
Firma
Descrizione
getDepth() : Number
Restituisce la profondità dell'istanza del pulsante.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
_alpha (proprietà Button._alpha)
public _alpha : Number
Il valore della trasparenza alfa del pulsante specificato da my_btn. I valori validi sono quelli compresi tra 0
(completamente trasparente) e 100 (completamente opaco). Il valore predefinito è 100. Gli oggetti di un pulsante con
la proprietà _alpha impostata su 0 sono attivi, anche se sono invisibili.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 228
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Il codice seguente imposta la proprietà _alpha di un pulsante di nome myBtn_btn sul 50% quando l'utente fa clic sul
pulsante: Innanzitutto, selezionare l'istanza Button sullo stage. Quindi, assegnargli un nome di istanza di myBtn_btn.
Infine, con il fotogramma 1 selezionato, inserire il codice seguente nel pannello Actions:
myBtn_btn.onRelease = function(){
this._alpha = 50;
};
Vedete anche
_alpha (MovieClip._alpha, proprietà), _alpha (proprietà TextField._alpha)
enabled (proprietà Button.enabled)
public enabled : Boolean
Un valore booleano che specifica se un pulsante è abilitato. Quando un pulsante è disabilitato, ovvero con la proprietà
enabled impostata su false, è visibile ma non selezionabile con un clic. Il valore predefinito è true. Questa proprietà
è particolarmente utile se si desidera disabilitare parte della navigazione; ad esempio, è possibile disabilitare un
pulsante nella pagina visualizzata in modo che non sia possibile selezionarlo e ricaricare la pagina.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente mostra come è possibile disabilitare e abilitare il clic sui pulsanti. Due pulsanti, myBtn1_btn e
myBtn2_btn, si trovano sullo stage, e viene aggiunto il codice ActionScript seguente per impedire di fare clic sul
pulsante myBtn2_btn. Innanzitutto, selezionare le istanze dei due pulsanti sullo stage. Quindi, assegnare loro i nomi
di istanza di myBtn1_btn e myBtn2_btn. Infine, inserire il codice seguente sul fotogramma 1 per attivare o disattivare
i pulsanti.
myBtn1_btn.enabled = true;
myBtn2_btn.enabled = false;
//button code
// the following function will not get called
// because myBtn2_btn.enabled was set to false
myBtn1_btn.onRelease = function() {
trace( "you clicked : " + this._name );
};
myBtn2_btn.onRelease = function() {
trace( "you clicked : " + this._name );
};
_focusrect (proprietà Button._focusrect)
public _focusrect : Boolean
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 229
Classi ActionScript
Un valore booleano che specifica se attorno a un pulsante è presente un rettangolo giallo quando il pulsante viene
attivato. Questa proprietà può sostituire la proprietà _focusrect globale. Per impostazione predefinita, la proprietà
_focusrect di un'istanza di pulsante è null; l'istanza di pulsante non sostituisce la proprietà _focusrect globale. Se
la proprietà _focusrect di un'istanza di pulsante è true o false, sostituisce l'impostazione della proprietà
_focusrect globale della singola istanza di pulsante.
Nei file SWF di Flash Player 4 o Flash Player 5, la proprietà _focusrect controlla la proprietà _focusrect globale. Si
tratta di un valore booleano. Questo comportamento è stato modificato in Flash Player 6 e versioni successive per
consentire la personalizzazione della proprietà _focusrect di un clip filmato singolo.
Se la proprietà _focusrect è impostata su false, per il pulsante la navigazione mediante tastiera è limitata al tasto
Tab. Tutti gli altri tasti vengono ignorati, compresi Invio e i tasti freccia. Per ripristinare la navigazione mediante tutta
la tastiera, è necessario impostare _focusrect su true.
Nota: nel lettore di Flash Lite 2.0, quando la proprietà _focusrect è disabilitata (ad esempio, Button.focusRect is
false), il pulsante riceve tutti gli eventi. Questo comportamento è diverso rispetto al player Flash Lite, dove, se la
proprietà _focusrect è disabilitata, il pulsante riceve gli eventi rollOver e rollOut ma non gli eventi press e
release.
Inoltre, in Flash Lite 2.0, è possibile modificare il colore del rettangolo di attivazione mediante il comando
SetFocusRectColor. Al contrario, nel player Flash Lite, il rettangolo di attivazione può essere solo di colore giallo.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio mostra come nascondere il rettangolo giallo attorno a un'istanza di pulsante specificata di un file SWF
quando questa è stata attivata mediante tastiera in una finestra del browser. Creare tre pulsanti di nome myBtn1_btn,
myBtn2_btn e myBtn3_btn, quindi aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
myBtn2_btn._focusrect = false;
getDepth (metodo Button.getDepth)
public getDepth() : Number
Restituisce la profondità dell'istanza del pulsante.
A ogni clip filmato, pulsante e campo di testo è associata una profondità univoca che determina il modo in cui l'oggetto
viene visualizzato davanti o dietro ad altri oggetti. Gli oggetti con profondità superiori compaiono in primo piano.
Disponibilità
Flash Lite 2.0
Restituisce
Number - La profondità dell'istanza del pulsante.
Esempio
Se si crea myBtn1_btn e myBtn2_btn sullo stage, è possibile tracciarne la profondità mediante il codice ActionScript
seguente:
trace(myBtn1_btn.getDepth());
trace(myBtn2_btn.getDepth());
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 230
Classi ActionScript
Se si carica un file SWF di nome buttonMovie.swf in questo documento, è possibile tracciare la profondità di un
pulsante di nome myBtn4_btn all'interno del file SWF mediante un altro pulsante nel file SWF principale:
this.createEmptyMovieClip("myClip_mc", 999);
myClip_mc.loadMovie("buttonMovie.swf");
myBtn3_btn.onRelease = function(){
trace(myClip_mc.myBtn4_btn.getDepth());
};
Come si noterà, due di questi pulsanti hanno lo stesso valore di profondità, uno nel file SWF principale e uno nel file
SWF caricato. Si tratta tuttavia di una situazione fuorviante, poiché buttonMovie.swf è stato caricato con profondità
999, che significa che anche il pulsante che esso contiene ha profondità 999 relativa ai pulsanti del file SWF principale.
È importante tenere presente che ogni clip filmato ha uno z-order interno; in altre parole, ogni clip filmato è dotato di
un proprio set di valori di profondità. È possibile che i due pulsanti abbiano lo stesso valore di profondità, tuttavia i
valori hanno un significato solo in relazione agli altri oggetti dello stesso z-order. In questo caso, i pulsanti hanno lo
stesso valore di profondità ma i valori sono relativi a clip filmato diversi: il valore di profondità del pulsante nel file
SWF principale è relativo allo z-order della linea temporale principale, mentre il valore di profondità del pulsante SWF
caricato è relativo allo z-order interno del clip filmato myClip_mc.
Vedete anche
getDepth (metodo MovieClip.getDepth), getDepth (metodo TextField.getDepth), getInstanceAtDepth
(metodo MovieClip.getInstanceAtDepth)
_height (proprietà Button._height)
public _height : Number
L'altezza del pulsante espressa in pixel.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta l'altezza e la larghezza specificate per un pulsante di nome my_btn.
my_btn._width = 500;
my_btn._height = 200;
_highquality (proprietà Button._highquality)
public _highquality : Number
Sconsigliata a partire da Flash Player 7. Questa proprietà è stata sconsigliata a favore di Button._quality.
Specifica il livello di antialiasing applicato al file SWF corrente. Specificare 2 (migliore qualità) per applicare un'alta
qualità con lo smussamento bitmap sempre abilitato. Specificare 1 (alta qualità) per applicare l'antialiasing; le
immagini bitmap vengono attenuate se il file SWF non contiene animazioni ed è il valore predefinito. Specificare 0
(bassa qualità) per impedire l'antialiasing.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 231
Classi ActionScript
Esempio
Aggiungere un'istanza di pulsante allo stage e denominarlo myBtn_btn. Disegnare un ovale sullo stage mediante lo
strumento Ovale per cui sia stato impostato il colore del tratto e del riempimento. Selezionare il fotogramma 1 e
aggiungere il codice ActionScript seguente mediante il pannello Azioni:
myBtn_btn.onRelease = function() {
myBtn_btn._highquality = 0;
};
Quando si fa clic su myBtn_btn, il tratto del cerchio appare irregolare. È possibile aggiungere il codice ActionScript
seguente per interessare tutto il file SWF:
_quality = 0;
Vedete anche
_quality (proprietà Button._quality), Proprietà _quality
_name (proprietà Button._name)
public _name : String
Il nome di istanza del pulsante specificato da my_btn.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia tutti i nomi di istanza per le istanze di Button all'interno della linea temporale corrente di
un file SWF.
for (i in this) {
if (this[i] instanceof Button) {
trace(this[i]._name);
}
}
onDragOut (gestore Button.onDragOut)
onDragOut = function() {}
Richiamato quando si preme il pulsante del mouse sul pulsante e successivamente si trascina il puntatore al di fuori di
esso. È necessario definire una funzione che venga eseguita nel momento in cui il gestore di eventi viene richiamato.
Nota: il Gestore di eventi onDragOut è supportato in Flash Lite 2.0 solo se System.capabilities.hasMouse è true
o System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente mostra come eseguire delle istruzioni quando il puntatore viene trascinato fuori da un pulsante.
Creare un pulsante di nome my_btn sullo stage, quindi immettere il codice ActionScript seguente in un fotogramma
della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 232
Classi ActionScript
my_btn.onDragOut = function() {
trace("onDragOut: "+this._name);
};
my_btn.onDragOver = function() {
trace("onDragOver: "+this._name);
};
onDragOver (gestore Button.onDragOver)
onDragOver = function() {}
Richiamato quando si preme il pulsante del mouse al di fuori del pulsante e successivamente si trascina il puntatore
sul pulsante. È necessario definire una funzione che venga eseguita nel momento in cui il gestore di eventi viene
richiamato.
Nota: il Gestore di eventi onDragOver è supportato in Flash Lite 2.0 solo se System.capabilities.hasMouse è
true o System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente definisce una funzione per il gestore onDragOver che invia un'istruzione trace() al pannello
Output. Creare un pulsante di nome my_btn, quindi immettere il codice ActionScript seguente nella linea temporale:
my_btn.onDragOut = function() {
trace("onDragOut: "+this._name);
};
my_btn.onDragOver = function() {
trace("onDragOver: "+this._name);
};
Quando si prova il file SWF, trascinare il puntatore fuori dell'istanza di pulsante. Quindi, tenendo premuto il pulsante
del mouse, trascinarlo nuovamente su di essa. Il pannello Output tiene traccia dei movimenti.
Vedete anche
onDragOut (gestore Button.onDragOut)
onKeyDown (gestore Button.onKeyDown)
onKeyDown = function() {}
Richiamato quando un pulsante è stato attivato mediante tastiera e viene premuto un tasto. Il gestore di eventi
onKeyDown viene richiamato senza parametri. I metodi Key.getAscii() e Key.getCode() consentono di
determinare quale tasto è stato premuto. È necessario definire una funzione che venga eseguita nel momento in cui il
gestore di eventi viene richiamato.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 233
Classi ActionScript
Esempio
Nell'esempio seguente, una funzione che invia del testo al pannello Output viene definita per il gestore onKeyDown.
Creare un pulsante di nome my_btn sullo stage, quindi immettere il codice ActionScript seguente in un fotogramma
della linea temporale:
my_btn.onKeyDown = function() {
trace("onKeyDown: "+this._name+" (Key: "+getKeyPressed()+")");
};
function getKeyPressed():String {
var theKey:String;
switch (Key.getAscii()) {
case Key.BACKSPACE :
theKey = "BACKSPACE";
break;
case Key.SPACE :
theKey = "SPACE";
break;
default :
theKey = chr(Key.getAscii());
}
return theKey;
}
Selezionare Controllo > Prova filmato per provare il file SWF. Assicurarsi di aver selezionato Controllo > Disattiva tasti
di scelta rapida nell'ambiente di prova. Quindi, premere il tasto Tab finché il pulsante non diventa attivo (un rettangolo
giallo viene visualizzato attorno all'istanza di my_btn) e iniziare a premere i tasti della tastiera. Quando vengono
premuti, i tasti vengono visualizzati nel pannello Output.
Vedete anche
onKeyUp (gestore Button.onKeyUp), getAscii (metodo Key.getAscii), getCode (metodo Key.getCode)
onKeyUp (gestore Button.onKeyUp)
onKeyUp = function() {}
Richiamato quando un pulsante è stato attivato e viene rilasciato un tasto. Il gestore di eventi onKeyUp viene
richiamato senza parametri. I metodi Key.getAscii() e Key.getCode() consentono di determinare quale tasto è
stato premuto.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia del testo al pannello Output viene definita per il gestore onKeyDown.
Creare un pulsante di nome my_btn sullo stage, quindi immettere il codice ActionScript seguente in un fotogramma
della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 234
Classi ActionScript
my_btn.onKeyDown = function() {
trace("onKeyDown: "+this._name+" (Key: "+getKeyPressed()+")");
};
my_btn.onKeyUp = function() {
trace("onKeyUp: "+this._name+" (Key: "+getKeyPressed()+")");
};
function getKeyPressed():String {
var theKey:String;
switch (Key.getAscii()) {
case Key.BACKSPACE :
theKey = "BACKSPACE";
break;
case Key.SPACE :
theKey = "SPACE";
break;
default :
theKey = chr(Key.getAscii());
}
return theKey;
}
Premere Ctrl+Invio per provare il file SWF. Assicurarsi di aver selezionato Controllo > Disattiva tasti di scelta rapida
nell'ambiente di prova. Quindi, premere il tasto Tab finché il pulsante non diventa attivo (un rettangolo giallo viene
visualizzato attorno all'istanza di my_btn) e iniziare a premere i tasti della tastiera. Quando vengono premuti, i tasti
vengono visualizzati nel pannello Output.
Vedete anche
onKeyDown (gestore Button.onKeyDown), getAscii (metodo Key.getAscii), getCode (metodo
Key.getCode)
onKillFocus (gestore Button.onKillFocus)
onKillFocus = function(newFocus:Object) {}
Richiamato quando un pulsante viene disattivato mediante tastiera. Il gestore onKillFocus riceve un solo parametro,
newFocus, che è un oggetto che rappresenta il nuovo oggetto che viene attivato. Se non viene attivato alcun oggetto,
newFocus contiene il valore null.
Disponibilità
Flash Lite 2.0
Parametri
newFocus:Object - L'oggetto che viene attivato.
Esempio
L'esempio seguente mostra come è possibile eseguire le istruzioni quando un pulsante non è più l'elemento attivo.
Creare un'istanza di pulsante di nome my_btn sullo stage, quindi immettere il codice ActionScript seguente nel
fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 235
Classi ActionScript
this.createTextField("output_txt", this.getNextHighestDepth(), 0, 0, 300, 200);
output_txt.wordWrap = true;
output_txt.multiline = true;
output_txt.border = true;
my_btn.onKillFocus = function() {
output_txt.text = "onKillFocus: "+this._name+newline+output_txt.text;
};
Provare il file SWF in una finestra del browser e provare a utilizzare il tasto Tab per spostarsi tra gli elementi della
finestra. Quando l'istanza del pulsante non è più l'elemento attivo, il testo viene inviato nel campo di testo output_txt.
onPress (gestore Button.onPress)
onPress = function() {}
Richiamato quando viene premuto un pulsante. È necessario definire una funzione che venga eseguita nel momento
in cui il gestore di eventi viene richiamato.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia un'istruzione trace() al pannello Output viene definita per il gestore
onPress:
my_btn.onPress = function () {
trace ("onPress called");
};
onRelease (gestore Button.onRelease)
onRelease = function() {}
Richiamato quando viene rilasciato un pulsante. È necessario definire una funzione che venga eseguita nel momento
in cui il gestore di eventi viene richiamato.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia un'istruzione trace() al pannello Output viene definita per il gestore
onRelease:
my_btn.onRelease = function () {
trace ("onRelease called");
};
onReleaseOutside (gestore Button.onReleaseOutside)
onReleaseOutside = function() {}
Richiamato quando il mouse viene rilasciato mentre il puntatore si trova fuori del pulsante dopo che il pulsante è stato
premuto mentre il puntatore si trovava all'interno del pulsante. È necessario definire una funzione che venga eseguita
nel momento in cui il gestore di eventi viene richiamato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 236
Classi ActionScript
Nota: il Gestore di eventi onReleaseOutside è supportato in Flash Lite 2.0 solo se
System.capabilities.hasMouse è true o System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia un'istruzione trace() al pannello Output viene definita per il gestore
onReleaseOutside.
my_btn.onReleaseOutside = function () {
trace ("onReleaseOutside called");
};
onRollOut (gestore Button.onRollOut)
onRollOut = function() {}
Richiamato quando un pulsante viene disattivato. Questa situazione può verificarsi quando l'utente fa clic su un altro
pulsante o su un'area al di fuori del pulsante attualmente selezionato. È necessario definire una funzione che venga
eseguita nel momento in cui il gestore di eventi viene richiamato.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia un'istruzione trace() al pannello Output viene definita per il gestore
onRollOut:
my_btn.onRollOut = function () {
trace ("onRollOut called");
};
onRollOver (gestore Button.onRollOver)
onRollOver = function() {}
Richiamato quando un pulsante viene attivato. Questa situazione può verificarsi quando l'utente fa clic su un altro
pulsante al di fuori del pulsante attualmente selezionato. Richiamato quando il puntatore viene spostato sopra l'area
del pulsante. È necessario definire una funzione che venga eseguita nel momento in cui il gestore di eventi viene
richiamato.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione che invia un'istruzione trace() al pannello Output viene definita per il gestore
onRollOver:
my_btn.onRollOver = function () {
trace ("onRollOver called");
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 237
Classi ActionScript
onSetFocus (gestore Button.onSetFocus)
onSetFocus = function(oldFocus:Object) {}
Richiamato quando un pulsante viene attivato mediante tastiera. Il parametro oldFocus indica l'oggetto che viene
disattivato. Ad esempio, se l'utente preme il tasto Tab per passare da un campo di testo a un pulsante, oldFocus
contiene l'istanza del campo di testo.
Se in precedenza non è stato attivato alcun oggetto, oldFocus contiene il valore null.
Disponibilità
Flash Lite 2.0
Parametri
oldFocus:Object - L'oggetto che viene disattivato da tastiera.
Esempio
L'esempio seguente mostra come eseguire le istruzioni quando l'utente di un file SWF passa da un pulsante a un altro
mediante tastiera. Creare due pulsanti di nome btn1_btn e btn2_btn, quindi immettere il codice ActionScript
seguente nel fotogramma 1 della linea temporale:
Selection.setFocus(btn1_btn);
trace(Selection.getFocus());
btn2_btn.onSetFocus = function(oldFocus) {
trace(oldFocus._name + "lost focus");
};
Provare il file SWF premendo Ctrl+Invio. Assicurarsi di aver selezionato Controllo > Disattiva tasti di scelta rapida.
L'elemento attivo è btn1_btn. Quando l'elemento attivo passa da btn1_btn a btn2_btn, l'informazione viene
visualizzata nel pannello Output.
_parent (proprietà Button._parent)
public _parent : MovieClip
Un riferimento al clip filmato o all'oggetto che contiene il clip filmato o l'oggetto corrente. L'oggetto corrente è quello
che contiene il codice ActionScript che fa riferimento a _parent.
Utilizzare _parent per specificare un percorso relativo dei clip filmati oppure oggetti che si trovano sopra il clip
filmato oppure l'oggetto corrente. È possibile utilizzare _parent per spostare verso l'alto più livelli nell'elenco di
visualizzazione, come illustrato di seguito:
this._parent._parent._alpha = 20;
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, un pulsante di nome my_btn viene collocato in un clip filmato di nome my_mc. Il codice
seguente mostra come utilizzare la proprietà _parent per ottenere un riferimento al clip filmato my_mc:
trace(my_mc.my_btn._parent);
Il pannello Output visualizza:
_level0.my_mc
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 238
Classi ActionScript
Vedete anche
_parent (proprietà MovieClip._parent), _target (proprietà MovieClip._target), Proprietà _root
_quality (proprietà Button._quality)
public _quality : String
Proprietà (globale); imposta o recupera la qualità di rendering utilizzata per un file SWF. I caratteri del dispositivo
sono sottoposti ad aliasing e pertanto non vengono modificati dalla proprietà _quality.
La proprietà _quality può essere impostata sui valori seguenti:
• "LOW" Qualità di rendering bassa. Le immagini non vengono sottoposte ad aliasing e le bitmap non vengono
smussate.
• "MEDIUM" Qualità di rendering media. Le immagini vengono sottoposte ad aliasing utilizzando una griglia di 2 x 2
pixel, ma le bitmap non vengono smussate. Si tratta di una funzionalità adatta per i filmati che non contengono
testo.
• "HIGH" Qualità di rendering alta. Le immagini vengono sottoposte ad aliasing utilizzando una griglia di 4 x 4 pixel
e le bitmap vengono smussate se il filmato è statico. È l'impostazione predefinita di Flash per la qualità di rendering.
Nota: benché sia possibile specificare questa proprietà per un oggetto Button, si tratta in realtà di una proprietà globale
ed è possibile specificarne il valore semplicemente come _quality.
Disponibilità
Flash Lite 2.0
Esempio
Questo esempio imposta la qualità di rendering di un pulsante di nome my_btn su LOW:
my_btn._quality = "LOW";
_rotation (proprietà Button._rotation)
public _rotation : Number
La rotazione del pulsante, espressa in pixel, rispetto alla posizione originale. I valori da 0 a 180 rappresentano la
rotazione oraria, quelli da 0 a -180 la rotazione antioraria. I valori esterni a questo intervallo vengono aggiunti o
sottratti a 360 per ottenere un valore interno all'intervallo. Ad esempio, l'istruzione my_btn._rotation = 450 è
uguale a my_btn._rotation = 90.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente ruota due pulsanti sullo stage. Create due pulsanti sullo stage di nome control_btn e my_btn.
Assicuratevi che my_btn non sia perfettamente circolare, in modo da poterne osservare la rotazione. Quindi,
immettete il codice ActionScript seguente nel fotogramma 1 della linea temporale:
var control_btn:Button;
var my_btn:Button;
control_btn.onRelease = function() {
my_btn._rotation += 10;
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 239
Classi ActionScript
A questo punto, create un altro pulsante sullo stage di nome myOther_btn, verificando che non sia perfettamente
circolare, per poterne osservare la rotazione. Immettete il codice ActionScript seguente nel fotogramma 1 della linea
temporale.
var myOther_btn:Button;
this.createEmptyMovieClip("rotater_mc", this.getNextHighestDepth());
rotater_mc.onEnterFrame = function() {
myOther_btn._rotation += 2;
};
Vedete anche
_rotation (proprietà MovieClip._rotation), _rotation (proprietà TextField._rotation)
_soundbuftime (proprietà Button._soundbuftime)
public _soundbuftime : Number
Specifica il numero di secondi per cui un suono viene inserito nel prebuffer prima che ne inizi lo streaming.
Nota: benché sia possibile specificare questa proprietà per un oggetto Button, si tratta in realtà di una proprietà globale
che si applica a tutti i suoni caricati ed è possibile specificarne il valore semplicemente come _soundbuftime. Se si
imposta questa proprietà per un oggetto Button, in realtà viene impostata la proprietà globale.
Per ulteriori informazioni e un esempio, vedete _soundbuftime.
Disponibilità
Flash Lite 2.0
Vedete anche
Proprietà _soundbuftime
tabEnabled (proprietà Button.tabEnabled)
public tabEnabled : Boolean
Specifica se my_btn è incluso nell'ordine di tabulazione automatico. Non è definito per impostazione predefinita.
Se la proprietà tabEnablednon è definita o true, l'oggetto viene incluso nell'ordine di tabulazione automatico. Se
anche la proprietà tabIndex è impostata su un valore, l'oggetto viene incluso a sua volta nell'ordine di tabulazione
personalizzato. Se tabEnabled è false, l'oggetto non viene incluso nell'ordine di tabulazione automatico o
personalizzato, nemmeno nel caso in cui la proprietà tabIndex sia impostata.
Disponibilità
Flash Lite 2.0
Esempio
Il codice ActionScript seguente viene utilizzato per impostare la proprietà tabEnabled per un pulsante su quattro su
false. Tuttavia, tutti e quattro i pulsanti (one_btn, two_btn, three_btn e four_btn) vengono collocati in un ordine
di tabulazione personalizzato mediante tabIndex. Benché tabIndex sia impostato su three_btn, three_btn non è
incluso in un ordine di tabulazione personalizzato o automatico poiché tabIndex è impostato su false per tale
istanza. Per impostare l'ordine di tabulazione dei quattro pulsanti, aggiungere il codice ActionScript seguente nel
fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 240
Classi ActionScript
three_btn.tabEnabled = false;
two_btn.tabIndex = 1;
four_btn.tabIndex = 2;
three_btn.tabIndex = 3;
one_btn.tabIndex = 4;
Vedete anche
tabIndex (proprietà Button.tabIndex), tabEnabled (proprietà MovieClip.tabEnabled), tabEnabled
(proprietà TextField.tabEnabled)
tabIndex (proprietà Button.tabIndex)
public tabIndex : Number
Consente di personalizzare l'ordine di tabulazione in un file SWF. È possibile impostare la proprietà tabIndex su
un'istanza di pulsante, di clip filmato o di campo di testo; non è definita per impostazione predefinita.
Se un qualunque oggetto visualizzato nel file SWF contiene una proprietà tabIndex, l'ordine di tabulazione
automatico viene disabilitato e viene calcolato in base alle proprietà tabIndex degli oggetti presenti nel file SWF.
L'ordine di tabulazione automatico include solo gli oggetti dotati delle proprietà tabIndex.
La proprietà tabIndex può essere un numero intero non negativo. Gli oggetti vengono ordinati in base alle relative
proprietà tabIndex, in ordine ascendente. Un oggetto con un valore tabIndex di 1 precede un oggetto con il valore
tabIndex di 2. Se due oggetti hanno lo stesso valore tabIndex: quello che precede l'altro nell'ordine della scheda non
è definito.
L'ordine di tabulazione personalizzato definito dalla proprietà tabIndex è flat. In altre parole, non viene prestata
alcuna attenzione alle relazioni gerarchiche degli oggetti nel file SWF. Tutti gli oggetti del file SWF dotati delle
proprietà tabIndex vengono inseriti nell'ordine di tabulazione, il quale viene determinato dall'ordine dei valori di
tabIndex. Se due oggetti hanno lo stesso valore di tabIndex, quello che precede l'altro non è definito. Pertanto è
consigliabile non utilizzare lo stesso valore di tabIndex per più oggetti.
Disponibilità
Flash Lite 2.0
Esempio
Il codice ActionScript seguente viene utilizzato per impostare la proprietà tabEnabled per un pulsante su quattro su
false. Tuttavia, tutti e quattro i pulsanti (one_btn, two_btn, three_btn e four_btn) vengono collocati in un ordine
di tabulazione personalizzato mediante tabIndex. Benché tabIndex sia impostato su three_btn, three_btn non è
incluso in un ordine di tabulazione personalizzato o automatico poiché tabIndex è impostato su false per tale
istanza. Per impostare l'ordine di tabulazione dei quattro pulsanti, aggiungere il codice ActionScript seguente nel
fotogramma 1 della linea temporale:
three_btn.tabEnabled = false;
two_btn.tabIndex = 1;
four_btn.tabIndex = 2;
three_btn.tabIndex = 3;
one_btn.tabIndex = 4;
Vedete anche
tabEnabled (proprietà Button.tabEnabled), tabChildren (proprietà MovieClip.tabChildren),
tabEnabled (proprietà MovieClip.tabEnabled), tabIndex (proprietà MovieClip.tabIndex), tabIndex
(proprietà TextField.tabIndex)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 241
Classi ActionScript
_target (proprietà Button._target)
public _target : String [read-only]
Restituisce il percorso target dell'istanza di pulsante specificata da my_btn.
Disponibilità
Flash Lite 2.0
Esempio
Aggiungere allo stage un'istanza di pulsante di nome my_btn, quindi aggiungere il codice seguente nel fotogramma 1
della linea temporale:
trace(my_btn._target); //displays /my_btn
Selezionare my_btn e convertirlo in clip filmato. Assegnare al nuovo clip filmato il nome di istanza my_mc. Eliminare
il codice ActionScript esistente nel fotogramma 1 della linea temporale e sostituirlo con:
my_mc.my_btn.onRelease = function(){
trace(this._target); //displays /my_mc/my_btn
};
Per convertire la notazione dalla barra al punto, modificare il codice di esempio precedente nel modo seguente:
my_mc.my_btn.onRelease = function(){
trace(eval(this._target)); //displays _level0.my_mc.my_btn
};
In questo modo è possibile accedere ai metodi e ai parametri dell'oggetto target:
my_mc.my_btn.onRelease = function(){
var target_btn:Button = eval(this._target);
trace(target_btn._name); //displays my_btn
};
Vedete anche
_target (proprietà MovieClip._target)
trackAsMenu (proprietà Button.trackAsMenu)
public trackAsMenu : Boolean
Un valore booleano che indica se altri pulsanti o clip filmato possono ricevere eventi associati al rilascio del mouse o
dello stilo. Se si trascina uno stilo o un puntatore di mouse su un pulsante e successivamente lo si rilascia su un altro
pulsante, l'evento onRelease viene registrato per il secondo pulsante. In questo modo è possibile creare i menu per il
secondo pulsante. È possibile impostare la proprietà trackAsMenu su qualunque oggetto pulsante o clip filmato. Se la
proprietà trackAsMenu non è stata definita, il comportamento predefinito è false.
È possibile modificare la proprietà trackAsMenu in qualsiasi momento; al pulsante modificato viene immediatamente
associato il nuovo comportamento.
Nota: la proprietà trackAsMenu è supportata in Flash Lite 2.0 solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 242
Classi ActionScript
Esempio
L'esempio seguente mostra come registrare due pulsanti come menu. Collocare sullo stage due istanze di pulsante di
nome one_btn e two_btn. Immettere il codice ActionScript seguente nella linea temporale:
var one_btn:Button;
var two_btn:Button;
one_btn.trackAsMenu = true;
two_btn.trackAsMenu = true;
one_btn.onRelease = function() {
trace("clicked one_btn");
};
two_btn.onRelease = function() {
trace("clicked two_btn");
};
Per provare il file SWF, fare clic su one_btn sullo stage, tenendo premuto il pulsante del mouse e rilasciandolo su
two_btn. Quindi, provare a escludere le due righe del codice ActionScript che contengono trackAsMenu e provare
nuovamente il file SWF per osservare la differenza nel comportamento dei pulsanti.
Vedete anche
trackAsMenu (proprietà MovieClip.trackAsMenu)
_url (proprietà Button._url)
public _url : String [read-only]
Recupera l'URL del file SWF che ha creato il pulsante.
Disponibilità
Flash Lite 2.0
Esempio
Creare sullo stage due istanze di pulsante di nome one_btn e two_btn. Immettere il codice seguente nel fotogramma
1 della linea temporale:
var one_btn:Button;
var two_btn:Button;
this.createTextField("output_txt", 999, 0, 0, 100, 22);
output_txt.autoSize = true;
one_btn.onRelease = function() {
trace("clicked one_btn");
trace(this._url);
};
two_btn.onRelease = function() {
trace("clicked "+this._name);
var url_array:Array = this._url.split("/");
var my_str:String = String(url_array.pop());
output_txt.text = unescape(my_str);
};
Quando si fa clic su ciascun pulsante, il nome del file SWF che contiene i pulsanti viene visualizzato nel pannello
Output.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 243
Classi ActionScript
_visible (proprietà Button._visible)
public _visible : Boolean
Un valore booleano che indica se il pulsante specificato da my_btn è visibile. I pulsanti non visibili (quelli con la
proprietà _visible impostata su false) sono disabilitati.
Disponibilità
Flash Lite 2.0
Esempio
Creare due pulsanti sullo stage e assegnare loro i nomi di istanza myBtn1_btn e myBtn2_btn. Immettere il codice
seguente nel fotogramma 1 della linea temporale:
myBtn1_btn.onRelease = function() {
this._visible = false;
trace("clicked "+this._name);
};
myBtn2_btn.onRelease = function() {
this._alpha = 0;
trace("clicked "+this._name);
};
Si noti che è ancora possibile fare clic su myBtn2_btn dopo che il valore della trasparenza alfa è stata impostato su 0.
Vedete anche
_visible (proprietà MovieClip._visible), _visible (proprietà TextField._visible)
_width (proprietà Button._width)
public _width : Number
La larghezza del pulsante espressa in pixel.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente aumenta la proprietà width di un pulsante di nome my_btn e visualizza la larghezza nel pannello
Output. Immettere il codice seguente nel fotogramma 1 della linea temporale:
my_btn.onRelease = function() {
trace(this._width);
this._width ~= 1.1;
};
Vedete anche
_width (proprietà MovieClip._width)
_x (Button._x, proprietà)
public _x : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 244
Classi ActionScript
Un numero intero che imposta la coordinata x di un pulsante relativa alle coordinate locali del clip filmato principale.
Se un pulsante si trova sulla linea temporale principale, le sue coordinate considerano l'angolo superiore sinistro dello
stage come punto (0, 0). Se è all'interno di un clip filmato che contiene delle trasformazioni, il pulsante utilizza il
sistema di coordinate locali del clip filmato. Pertanto, se un clip filmato viene ruotato di 90 gradi in senso antiorario,
il pulsante racchiuso nel clip eredita un sistema di coordinate che è ruotato di 90 gradi in senso antiorario. Le
coordinate del pulsante sono relative al punto di registrazione.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta su 0 le coordinate di my_btn sullo stage. Creare un pulsante di nome my_btn, quindi
immettere il codice ActionScript seguente nel fotogramma 1 della linea temporale:
my_btn._x = 0;
my_btn._y = 0;
Vedete anche
_xscale (proprietà Button._xscale), _y (Button._y, proprietà), _yscale (proprietà
Button._yscale)
_xmouse (proprietà Button._xmouse)
public _xmouse : Number [read-only]
Restituisce la coordinata x della posizione del mouse relativa al pulsante.
Nota: la proprietà _xmouse è supportata in Flash Lite 2.0 solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente visualizza la coordinata x della posizione del mouse per lo stage e un pulsante di nome my_btn che
viene collocato sullo stage. Immettere il codice seguente nel fotogramma 1 della linea temporale:
this.createTextField("mouse_txt", 999, 5, 5, 150, 40);
mouse_txt.html = true;
mouse_txt.wordWrap = true;
mouse_txt.border = true;
mouse_txt.autoSize = true;
mouse_txt.selectable = false;
//
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
var table_str:String = "<textformat tabstops='[50,100]'>";
table_str += "<b>Stage</b>\t"+"x:"+_xmouse+"\t"+"y:"+_ymouse+newline;
table_str += "<b>Button</b>\t"+"x:"+my_btn._xmouse+"\t"+"y:"+my_btn._ymouse+newline;
table_str += "</textformat>";
mouse_txt.htmlText = table_str;
};
Mouse.addListener(mouseListener);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 245
Classi ActionScript
Vedete anche
_ymouse (proprietà Button._ymouse)
_xscale (proprietà Button._xscale)
public _xscale : Number
La scala orizzontale del pulsante applicata dal punto di registrazione del pulsante, espressa sotto forma di percentuale.
Il punto di registrazione predefinito è (0,0).
Se si modifica in scala il sistema di coordinate locale, vengono cambiate anche le impostazioni delle proprietà _x e _y,
che sono definite in pixel. Ad esempio, quando il clip filmato principale viene modificato in scala del 50%, se si imposta
la proprietà _x, un oggetto nel pulsante viene spostato per la metà dei pixel per cui verrebbe spostato se il file SWF fosse
al 100% delle proprie dimensioni.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente modifica in scala un pulsante di nome my_btn. Quando si fa clic sul pulsante e lo si rilascia, le
relative coordinate x e y aumentano del 10%. Immettere il codice seguente nel fotogramma 1 della linea temporale:
my_btn.onRelease = function(){
this._xscale ~= 1.1;
this._yscale ~= 1.1;
};
Vedete anche
_x (Button._x, proprietà), _y (Button._y, proprietà), _yscale (proprietà Button._yscale)
_y (Button._y, proprietà)
public _y : Number
La coordinata y del pulsante relativa alle coordinate locali del clip filmato principale. Se un pulsante si trova sulla linea
temporale principale, le sue coordinate considerano l'angolo superiore sinistro dello stage come punto (0, 0). Se è
all'interno di un altro clip filmato che contiene delle trasformazioni, il pulsante utilizza il sistema di coordinate locali
del clip filmato. Pertanto, se un clip filmato viene ruotato di 90 gradi in senso antiorario, il pulsante racchiuso nel clip
eredita un sistema di coordinate che è ruotato di 90 gradi in senso antiorario. Le coordinate del pulsante sono relative
al punto di registrazione.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta su 0 le coordinate di my_btn sullo stage. Creare un pulsante di nome my_btn, quindi
immettere il codice ActionScript seguente nel fotogramma 1 della linea temporale:
my_btn._x = 0;
my_btn._y = 0;
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 246
Classi ActionScript
Vedete anche
_x (Button._x, proprietà), _xscale (proprietà Button._xscale), _yscale (proprietà
Button._yscale)
_ymouse (proprietà Button._ymouse)
public _ymouse : Number [read-only]
Restituisce la coordinata y della posizione del mouse relativa al pulsante.
Nota: la proprietà _ymouse è supportata in Flash Lite 2.0 solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente visualizza la coordinata x della posizione del mouse per lo stage e un pulsante di nome my_btn che
viene collocato sullo stage. Immettere il codice seguente nel fotogramma 1 della linea temporale:
this.createTextField("mouse_txt", 999, 5, 5, 150, 40);
mouse_txt.html = true;
mouse_txt.wordWrap = true;
mouse_txt.border = true;
mouse_txt.autoSize = true;
mouse_txt.selectable = false;
//
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
var table_str:String = "<textformat tabstops='[50,100]'>";
table_str += "<b>Stage</b>\t"+"x:"+_xmouse+"\t"+"y:"+_ymouse+newline;
table_str += "<b>Button</b>\t"+"x:"+my_btn._xmouse+"\t"+"y:"+my_btn._ymouse+newline;
table_str += "</textformat>";
mouse_txt.htmlText = table_str;
};
Mouse.addListener(mouseListener);
Vedete anche
_xmouse (proprietà Button._xmouse)
_yscale (proprietà Button._yscale)
public _yscale : Number
La scala verticale del pulsante applicata dal punto di registrazione del pulsante, espressa sotto forma di percentuale. Il
punto di registrazione predefinito è (0,0).
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente modifica in scala un pulsante di nome my_btn. Quando si fa clic sul pulsante e lo si rilascia, le
relative coordinate x e y aumentano del 10%. Immettere il codice seguente nel fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 247
Classi ActionScript
my_btn.onRelease = function(){
this._xscale ~= 1.1;
this._yscale ~ 1.1;
};
Vedete anche
_y (Button._y, proprietà), _x (Button._x, proprietà), _xscale (proprietà Button._xscale)
capabilities (System.capabilities)
Object
|
+-System.capabilities
public class capabilities
extends Object
La classe Capabilities determina le funzionalità del sistema e del lettore che eseguono il file SWF, consentendo di
personalizzare il contenuto per diversi formati. Ad esempio, lo schermo di un dispositivo mobile è diverso da quello
di un computer. Per offrire il contenuto appropriato al maggior numero possibile di utenti, è possibile utilizzare
l'oggetto System.capabilities per determinare il tipo di dispositivo utilizzato da ogni singolo utente. È quindi
possibile specificare al server di inviare file SWF diversi a seconda delle funzionalità del dispositivo oppure indicare al
file SWF di alterare la propria presentazione in base alle funzionalità del dispositivo.
È possibile inviare informazioni sulle funzionalità mediante il metodo HTTP GET or POST.
L'esempio seguente mostra una stringa relativa a un dispositivo mobile:
• che indica un orientamento di schermo normale
• che esegue una lingua non determinata
• su cui è eseguito il sistema operativo Symbian7.0sSeries60V2
• configurato in modo che l'utente non possa accedere al disco rigido, alla fotocamera o al microfono
• che ha il lettore Flash Lite come versione ufficiale
• per il quale il lettore Flash Lite non supporta lo sviluppo né la riproduzione di applicazioni di trasmissione su
schermo da eseguire mediante Flash Media Server
• che non supporta la stampa sul dispositivo
• che indica che il lettore Flash Lite è in esecuzione su un dispositivo mobile che supporta il video incorporato
undefinedScreenOrientation=normal
language=xu
OS=Symbian7.0sSeries60V2
localFileReadDisable=true
avHardwareDisable=true
isDebugger=false
hasScreenBroadcast=false
hasScreenPlayback=false
hasPrinting=false
hasEmbeddedVideo=true
La maggior parte delle proprietà dell'oggetto System.capabilities è di sola lettura.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 248
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
audioMIMETypes:Array
[sola lettura]
Restituisce un array di tipi MIME per codec audio supportati da
un dispositivo mobile.
static
avHardwareDisable:Boole Un valore booleano che specifica se l'accesso alla fotocamera
an [sola lettura]
e al microfono dell'utente è stato negato (true) o consentito
(false) dall'amministratore.
static
has4WayKeyAS:Boolean
[sola lettura]
Valore booleano che è true se Flash Lite esegue il codice
ActionScript associato a gestori di eventi di tastiera che a loro
volta sono associati ai tasti sinistra, destra, su e giù.
static
hasAccessibility:Boolean
[sola lettura]
Un valore booleano, che è true se il lettore è in esecuzione in
un ambiente che supporta la comunicazione tra il player Flash
Lite e gli strumenti di supporto all'accessibilità, ed è false in
caso contrario.
static
hasAudio:Boolean [sola
lettura]
Specifica se il sistema è dotato di funzionalità audio.
static
hasAudioEncoder:Boolea
n [sola lettura]
Specifica se il player Flash Lite è in grado di codificare lo
streaming audio.
static
hasCMIDI:Boolean [sola
lettura]
Restituisce true se il dispositivo mobile è in grado di
riprodurre dati audio in formato CMIDI.
static
hasCompoundSound:Boo Restituisce true se il lettore Flash Lite è in grado di elaborare
lean [sola lettura]
dati audio composti.
static
hasDataLoading:Boolean
[sola lettura]
Restituisce true se il lettore Flash Lite è in grado di caricare
dati aggiuntivi in modo dinamico mediante chiamate a
funzioni specifiche.
static
hasEmail:Boolean [sola
lettura]
Restituisce true se il lettore Flash Lite è in grado di inviare
messaggi e-mail con il comando ActionScript GetURL.
static
hasEmbeddedVideo:Bool
ean [sola lettura]
Un valore booleano che indica se il dispositivo mobile
supporta il video incorporato.
static
hasMappableSoftKeys:Bo
olean
Restituisce true se il dispositivo mobile consente di
reimpostare o riassegnare etichette di tasti virtuali e gestire gli
eventi di tali tasti.
static
hasMFI:Boolean [sola
lettura]
Restituisce true se il dispositivo mobile è in grado di
riprodurre dati audio in formato MFi.
static
hasMIDI:Boolean [sola
lettura]
Restituisce true se il dispositivo mobile è in grado di
riprodurre dati audio in formato MIDI.
static
hasMMS:Boolean [sola
lettura]
Restituisce true se il dispositivo mobile è in grado di inviare
messaggi MMS con il comando ActionScript GetURL.
static
hasMouse:Boolean [sola
lettura]
Indica se il dispositivo mobile invia eventi collegati al mouse a
un lettore di Flash Lite.
static
hasMP3:Boolean [sola
lettura]
Specifica se il dispositivo mobile è dotato di decodificatore
MP3.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 249
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
static
hasPrinting:Boolean [sola
lettura]
Un valore booleano, che è true se il lettore è in esecuzione su
un dispositivo mobile che supporta la stampa; false in caso
contrario.
static
hasQWERTYKeyboard:Bo
olean [sola lettura]
Restituisce true se il lettore Flash Lite è in grado di elaborare
codice ActionScript associato a tutti i tasti di una tastiera
QWERTY standard, compreso il tasto BACKSPACE.
static
hasScreenBroadcast:Bool
ean [sola lettura]
Un valore booleano, che è true se il lettore supporta lo
sviluppo di applicazioni di trasmissione su schermo da
eseguire mediante Flash Media Server; false in caso
contrario.
static
hasScreenPlayback:Boole
an [sola lettura]
Un valore booleano, che è true se il lettore supporta la
riproduzione di applicazioni di trasmissione su schermo
eseguite mediante Flash Media Server; false in caso
contrario.
static
hasSharedObjects:Boolea
n [sola lettura]
Restituisce true se il contenuto Flash Lite che viene riprodotto
in un'applicazione può accedere alla versione Flash Lite degli
oggetti condivisi.
static
hasSMAF:Boolean [sola
lettura]
Restituisce true se il dispositivo mobile è in grado di
riprodurre dati audio in formato SMAF.
static
hasSMS:Number [sola
lettura]
Indica se il dispositivo mobile è in grado di inviare messaggi
SMS con il comando ActionScript GetURL.
static
hasStreamingAudio:Bool
ean [sola lettura]
Un valore booleano, che è true se il lettore è in grado di
riprodurre l'audio in streaming; false in caso contrario.
static
hasStreamingVideo:Boole Un valore booleano che indica se il lettore è in grado di
an [sola lettura]
riprodurre il video in streaming.
static
hasStylus:Boolean [sola
lettura]
Indica se il dispositivo mobile supporta eventi correlati allo
stilo.
static
hasVideoEncoder:Boolea
n [sola lettura]
Specifica se il player Flash Lite è in grado di codificare lo
streaming video.
static
hasXMLSocket:Number
[sola lettura]
Indica se l'applicazione host supporta i socket XML.
static
imageMIMETypes:Array
[sola lettura]
Restituisce un array che contiene tutti i tipi MIME che la
funzione loadMovie e i codec per un dispositivo mobile
supportano per l'elaborazione delle immagini.
static
isDebugger:Boolean [sola
lettura]
Un valore booleano che indica se il lettore è una release
ufficiale (false) o una speciale versione di debug (true).
static
language:String [sola
lettura]
Indica la lingua del sistema su cui è in esecuzione il lettore.
static
localFileReadDisable:Bool Un valore booleano che specifica se l'accesso in lettura al disco
ean [sola lettura]
rigido dell'utente è stato negato (true) o consentito (false)
dall'amministratore.
static
MIMETypes:Array [sola
lettura]
Restituisce un array che contiene tutti i tipi MIME supportati
dalla funzione loadMovie e dagli oggetti Sound e Video.
static
os:String [sola lettura]
Una stringa che indica il sistema operativo corrente.
static
screenOrientation:String
[sola lettura]
System.capabilities che indica l'orientamento attuale
Questa variabile membro dell'oggetto
dello schermo.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 250
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
static
screenResolutionX:Numb
er [sola lettura]
Un numero intero che indica la risoluzione orizzontale
massima dello schermo.
static
screenResolutionY:Numb
er [sola lettura]
Un numero intero che indica la risoluzione verticale massima
dello schermo.
static
softKeyCount:Number
[sola lettura]
Indica il numero di tasti virtuali rimappabili supportati dal
dispositivo mobile.
static
version:String [sola
lettura]
Una stringa che contiene le informazioni sulla piattaforma e la
versione del player Flash Lite (ad esempio "WIN 7,1,0,0").
static
videoMIMETypes:Array
[sola lettura]
Indica tutti i tipi MIME per video supportati dai codec del
dispositivo mobile.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo dei metodi
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
audioMIMETypes (proprietà capabilities.audioMIMETypes)
public static audioMIMETypes : Array [read-only]
Restituisce un array di tipi MIME per codec audio supportati da un dispositivo mobile.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.audioMIMETypes);
avHardwareDisable (proprietà capabilities.avHardwareDisable)
public static avHardwareDisable : Boolean [read-only]
Un valore booleano che specifica se l'accesso alla fotocamera e al microfono dell'utente è stato negato (true) o
consentito (false) dall'amministratore. La stringa server è AVD.
Nota: in Flash Lite 2.0, il valore restituito è sempre true.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 251
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.avHardwareDisable);
has4WayKeyAS (proprietà capabilities.has4WayKeyAS)
public static has4WayKeyAS : Boolean [read-only]
Valore booleano che è true se Flash Lite esegue il codice ActionScript associato a gestori di eventi di tastiera che a loro
volta sono associati ai tasti sinistra, destra, su e giù. In caso contrario, questa proprietà restituisce false.
Se il valore di questa variabile è true, quando viene premuto uno dei tasti a quattro direzioni, il lettore cerca
innanzitutto il gestore per il tasto. Se non ne viene trovato nessuno, viene eseguita la navigazione mediante i controlli
di Flash. Tuttavia, se viene trovato un gestore di eventi, per il tasto non viene eseguita alcuna azione di navigazione. In
altre parole, la presenza di un gestore "keypress" (pressione del tasto) per un tasto giù disabilita la possibilità di
spostarsi verso il basso.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.has4WayKeyAS);
hasAccessibility (proprietà capabilities.hasAccessibility)
public static hasAccessibility : Boolean [read-only]
Un valore booleano, che è true se il lettore è in esecuzione in un ambiente che supporta la comunicazione tra il player
Flash Lite e gli strumenti di supporto all'accessibilità, ed è false in caso contrario. La stringa server è ACC.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasAccessibility);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 252
Classi ActionScript
hasAudio (proprietà capabilities.hasAudio)
public static hasAudio : Boolean [read-only]
Specifica se il sistema è dotato di funzionalità audio. Un valore booleano, che è true se il lettore è in esecuzione in un
sistema dotato di funzionalità audio, ed è false in caso contrario. La stringa server è A.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasAudio);
hasAudioEncoder (proprietà capabilities.hasAudioEncoder)
public static hasAudioEncoder : Boolean [read-only]
Specifica se il player Flash Lite è in grado di codificare lo streaming audio. Un valore booleano, che è true se il lettore
è in grado di codificare uno streaming audio (ad esempio, quello catturato da un microfono); false in caso contrario.
La stringa server è AE.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasAudioEncoder);
hasCMIDI (proprietà capabilities.hasCMIDI)
public static hasCMIDI : Boolean [read-only]
Restituisce true se il dispositivo mobile è in grado di riprodurre dati audio in formato CMIDI. In caso contrario,
questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasCMIDI);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 253
Classi ActionScript
hasCompoundSound (proprietà capabilities.hasCompoundSound)
public static hasCompoundSound : Boolean [read-only]
Restituisce true se il lettore Flash Lite è in grado di elaborare dati audio composti. In caso contrario, restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasCompoundSound);
hasDataLoading (proprietà capabilities.hasDataLoading)
public static hasDataLoading : Boolean [read-only]
Restituisce true se il lettore Flash Lite è in grado di caricare dati aggiuntivi in modo dinamico mediante chiamate a
funzioni specifiche.
È possibile chiamare le funzioni specifiche seguenti:
•
loadMovie()
•
loadMovieNum()
•
loadVariables()
•
loadVariablesNum()
•
XML.parseXML()
•
Sound.loadSound()
•
MovieClip.loadVariables()
•
MovieClip.loadMovie()
•
MovieClipLoader.loadClip()
•
LoadVars.load()
•
LoadVars.sendAndLoad()
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasDataLoading);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 254
Classi ActionScript
hasEmail (proprietà capabilities.hasEmail)
public static hasEmail : Boolean [read-only]
Restituisce true se il lettore Flash Lite è in grado di inviare messaggi e-mail con il comando ActionScript GetURL.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasEmail);
hasEmbeddedVideo (proprietà capabilities.hasEmbeddedVideo)
public static hasEmbeddedVideo : Boolean [read-only]
Un valore booleano che indica se il dispositivo mobile supporta il video incorporato.
Nota: la proprietà hasEmbeddedVideo è sempre true in Flash Lite 2.0 e Flash Lite 2.1, per indicare il supporto delle
librerie per il video incorporato.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasEmbeddedVideo);
hasMappableSoftKeys (proprietà capabilities.hasMappableSoftKeys)
public static hasMappableSoftKeys : Boolean
Restituisce true se il dispositivo mobile consente di reimpostare o riassegnare etichette di tasti virtuali e gestire gli
eventi di tali tasti. In caso contrario, restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMappableSoftKeys);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 255
Classi ActionScript
hasMFI (proprietà capabilities.hasMFI)
public static hasMFI : Boolean [read-only]
Restituisce true se il dispositivo mobile è in grado di riprodurre dati audio in formato MFi.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMFI);
hasMIDI (proprietà capabilities.hasMIDI)
public static hasMIDI : Boolean [read-only]
Restituisce true se il dispositivo mobile è in grado di riprodurre dati audio in formato MIDI.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMIDI);
hasMMS (proprietà capabilities.hasMMS)
public static hasMMS : Boolean [read-only]
Restituisce true se il dispositivo mobile è in grado di inviare messaggi MMS con il comando ActionScript GetURL.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMMS);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 256
Classi ActionScript
hasMouse (proprietà capabilities.hasMouse)
public static hasMouse : Boolean [read-only]
Indica se il dispositivo mobile invia eventi collegati al mouse a un lettore di Flash Lite.
Questa proprietà restituisce true se il dispositivo mobile invia eventi collegati al mouse a un lettore di Flash Lite. In
caso contrario, restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMouse);
hasMP3 (proprietà capabilities.hasMP3)
public static hasMP3 : Boolean [read-only]
Specifica se il dispositivo mobile è dotato di decodificatore MP3. Un valore booleano, che è true se il lettore è in
esecuzione in un sistema dotato di decodificatore MP3, ed è false in caso contrario. La stringa server è MP3.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasMP3);
hasPrinting (proprietà capabilities.hasPrinting)
public static hasPrinting : Boolean [read-only]
Un valore booleano, che è true se il lettore è in esecuzione su un dispositivo mobile che supporta la stampa; false in
caso contrario. La stringa server è PR.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasPrinting);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 257
Classi ActionScript
hasQWERTYKeyboard (proprietà capabilities.hasQWERTYKeyboard)
public static hasQWERTYKeyboard : Boolean [read-only]
Restituisce true se il lettore Flash Lite è in grado di elaborare codice ActionScript associato a tutti i tasti di una tastiera
QWERTY standard, compreso il tasto BACKSPACE.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasQWERTYKeyboard);
hasScreenBroadcast (proprietà capabilities.hasScreenBroadcast)
public static hasScreenBroadcast : Boolean [read-only]
Un valore booleano, che è true se il lettore supporta lo sviluppo di applicazioni di trasmissione su schermo da eseguire
mediante Flash Media Server; false in caso contrario. La stringa server è SB.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasScreenBroadcast);
hasScreenPlayback (proprietà capabilities.hasScreenPlayback)
public static hasScreenPlayback : Boolean [read-only]
Un valore booleano, che è true se il lettore supporta la riproduzione di applicazioni di trasmissione su schermo
eseguite mediante Flash Media Server; false in caso contrario. La stringa server è SP.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 258
Classi ActionScript
trace(System.capabilities.hasScreenPlayback);
hasSharedObjects (proprietà capabilities.hasSharedObjects)
public static hasSharedObjects : Boolean [read-only]
Restituisce true se il contenuto Flash Lite che viene riprodotto in un'applicazione può accedere alla versione Flash Lite
degli oggetti condivisi.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasSharedObjects);
hasSMAF (proprietà capabilities.hasSMAF)
public static hasSMAF : Boolean [read-only]
Restituisce true se il dispositivo mobile è in grado di riprodurre dati audio in formato SMAF.
In caso contrario, questa proprietà restituisce false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasSMAF);
hasSMS (proprietà capabilities.hasSMS)
public static hasSMS : Number [read-only]
Indica se il dispositivo mobile è in grado di inviare messaggi SMS con il comando ActionScript GetURL.
Se Flash Lite è in grado di inviare messaggi SMS, questa variabile viene definita e ha il valore 1. In caso contrario, la
variabile non viene definita.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 259
Classi ActionScript
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasSMS);
hasStreamingAudio (proprietà capabilities.hasStreamingAudio)
public static hasStreamingAudio : Boolean [read-only]
Un valore booleano, che è true se il lettore è in grado di riprodurre l'audio in streaming; false in caso contrario. La
stringa server è SA.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasStreamingAudio);
hasStreamingVideo (proprietà capabilities.hasStreamingVideo)
public static hasStreamingVideo : Boolean [read-only]
Un valore booleano che indica se il lettore è in grado di riprodurre il video in streaming.
Nota: la proprietà hasStreamingVideo è sempre false in Flash Lite 2.0 e Flash Lite 2.1, per indicare che lo streaming
FLV non è supportato.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasStreamingVideo);
hasStylus (proprietà capabilities.hasStylus)
public static hasStylus : Boolean [read-only]
Indica se il dispositivo mobile supporta eventi correlati allo stilo.
Questa proprietà restituisce true se la piattaforma per il dispositivo mobile non supporta gli eventi collegati allo stilo.
In caso contrario, questa proprietà restituisce false.
Lo stilo non supporta l'evento on MouseMove. Questo flag capabilities consente al contenuto Flash di verificare se la
piattaforma di un dispositivo mobile supporta questo evento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 260
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasStylus);
hasVideoEncoder (proprietà capabilities.hasVideoEncoder)
public static hasVideoEncoder : Boolean [read-only]
Specifica se il player Flash Lite è in grado di codificare lo streaming video. Un valore booleano, che è true se il lettore
è in grado di codificare uno streaming video (ad esempio, quello catturato da una webcam); false in caso contrario.
La stringa server è VE.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.hasVideoEncoder);
hasXMLSocket (proprietà capabilities.hasXMLSocket)
public static hasXMLSocket : Number [read-only]
Indica se l'applicazione host supporta i socket XML.
In caso affermativo, questa variabile viene definita e ha il valore 1. In caso contrario, la variabile non viene definita.
imageMIMETypes (proprietà capabilities.imageMIMETypes)
public static imageMIMETypes : Array [read-only]
Restituisce un array che contiene tutti i tipi MIME che la funzione loadMovie e i codec per un dispositivo mobile
supportano per l'elaborazione delle immagini.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.imageMIMETypes);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 261
Classi ActionScript
isDebugger (proprietà capabilities.isDebugger)
public static isDebugger : Boolean [read-only]
Un valore booleano che indica se il lettore è una release ufficiale (false) o una speciale versione di debug (true). La
stringa server è DEB.
Nota: in Flash Lite 2.0, il valore restituito è sempre false.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.isDebugger);
***note about space instead of tab used for indents in code
language (proprietà capabilities.language)
public static language : String [read-only]
Indica la lingua del sistema su cui è in esecuzione il lettore. Questa proprietà è specificata sotto forma di codice della
lingua ISO 639-1 costituito da due lettere minuscole. Nel caso del cinese, un tag secondario del codice nazionale ISO
3166 a due lettere maiuscole distingue tra il cinese semplificato e quello tradizionale. Per i nomi delle lingue vengono
utilizzati i tag inglesi. Ad esempio, fr specifica il francese.
Questa proprietà è stata sottoposta a due tipi di modifica in Flash Player 7. Innanzi tutto, il codice di lingua per i sistemi
inglesi non include più il codice nazionale. In Flash Player 6, tutti i sistemi inglesi restituiscono il codice di lingua e il
tag secondario del codice nazionale a due lettere (en-US). In Flash Player 7, i sistemi inglesi restituiscono solo il codice
di lingua (en). Secondariamente, nei sistemi Microsoft Windows questa proprietà ora restituisce la lingua
dell'interfaccia utente (UI). In Flash Player 6 su piattaforma Microsoft Windows, System.capabilities.language
restituisce le impostazioni internazionali dell'utente, che controllano le impostazioni per la formattazione della data,
dell'ora, della valuta e dei numeri. In Flash Player 7 su piattaforma Microsoft Windows, questa proprietà ora restituisce
la lingua dell'interfaccia utente (UI), che fa riferimento alla lingua utilizzata per tutti i menu, le finestre di dialogo, i
messaggi di errore e i file della Guida in linea.
Lingua
Tag
Ceco (Czech)
cs
Danese (Danish)
da
Olandese (Dutch)
nl
Inglese (English)
en
Finlandese (Finnish)
fi
Francese (French)
fr
Tedesco (German)
de
Ungherese (Hungarian)
hu
Italiano
it
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 262
Classi ActionScript
Lingua
Tag
Giapponese (Japanese)
ja
Coreano (Korean)
ko
Norvegese (Norwegian)
no
Altre/sconosciute
xu
Polacco (Polish)
pl
Portoghese (Portuguese)
pt
Russo (Russian)
ru
Cinese semplificato (Simplified
Chinese)
zh-CN
Spagnolo (Spanish)
es
Svedese (Swedish)
sv
Cinese tradizionale (Traditional
Chinese)
zh-TW
Turco (Turkish)
tr
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.language);
localFileReadDisable (proprietà capabilities.localFileReadDisable)
public static localFileReadDisable : Boolean [read-only]
Un valore booleano che specifica se l'accesso in lettura al disco rigido dell'utente è stato negato (true) o consentito
(false) dall'amministratore. Se impostata su true, il player Flash Lite non è in grado di leggere i file (compreso il
primo file SWF con cui viene lanciato) dal disco rigido dell'utente. Ad esempio, i tentativi di leggere un file presente
nel disco rigido dell'utente mediante XML.load(), LoadMovie() o LoadVars.load() danno esito negativo se questa
proprietà è impostata su true.
Se la proprietà è impostata su true, anche la lettura delle librerie condivise di runtime viene bloccata, tuttavia la lettura
degli oggetti condivisi locali viene consentita a prescindere dal valore di questa proprietà. La stringa server è LFD.
Nota: in Flash Lite 2.0, il valore restituito è sempre true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 263
Classi ActionScript
trace(System.capabilities.localFileReadDisable);
MIMETypes (proprietà capabilities.MIMETypes)
public static MIMETypes : Array [read-only]
Restituisce un array che contiene tutti i tipi MIME supportati dalla funzione loadMovie e dagli oggetti Sound e Video.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.MIMETypes);
os (proprietà capabilities.os)
public static os : String [read-only]
Una stringa che indica il sistema operativo corrente. La proprietà os può restituire le stringhe seguenti: "Windows XP",
"Windows 2000", "Windows NT", "Windows 98/ME", "Windows 95", "Windows CE" (disponibile solo nel Flash Player
SDK e non nella versione desktop), "Linux" e "MacOS". La stringa server è OS.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.os);
screenOrientation (proprietà capabilities.screenOrientation)
public static screenOrientation : String [read-only]
Una variabile membro dell'oggetto System.capabilities che indica l'orientamento attuale dello schermo.
Valori possibili della proprietà screenOrientation:
•
normal lo schermo ha un orientamento normale
•
rotated90 lo schermo è ruotato di 90 gradi
•
rotated180 lo schermo è ruotato di 180 gradi
•
rotated270 lo schermo è ruotato di 270 gradi
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 264
Classi ActionScript
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.screenOrientation);
screenResolutionX (proprietà capabilities.screenResolutionX)
public static screenResolutionX : Number [read-only]
Un numero intero che indica la risoluzione orizzontale massima dello schermo. La stringa server è R (che restituisce
sia la larghezza che l'altezza dello schermo).
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.screenResolutionX);
screenResolutionY (proprietà capabilities.screenResolutionY)
public static screenResolutionY : Number [read-only]
Un numero intero che indica la risoluzione verticale massima dello schermo. La stringa server è R (che restituisce sia
la larghezza che l'altezza dello schermo).
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.screenResolutionY);
softKeyCount (proprietà capabilities.softKeyCount)
public static softKeyCount : Number [read-only]
Indica il numero di tasti virtuali rimappabili supportati dal dispositivo mobile.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 265
Classi ActionScript
trace(System.capabilities.softKeyCount);
version (proprietà capabilities.version)
public static version : String [read-only]
Una stringa che contiene le informazioni sulla piattaforma e la versione del player Flash Lite (ad esempio "WIN
7,1,0,0"). La stringa server è V.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.version);
videoMIMETypes (proprietà capabilities.videoMIMETypes)
public static videoMIMETypes : Array [read-only]
Indica tutti i tipi MIME per video supportati dai codec del dispositivo mobile.
Questa proprietà restituisce un array di tutti i tipi MIME per video supportati dai codec del dispositivo mobile.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente traccia il valore di questa proprietà di sola lettura:
trace(System.capabilities.videoMIMETypes);
Color
Object
|
+-Color
public class Color
extends Object
La classe Color consente di impostare il valore RGB del colore e il valore di trasformazione del colore dei clip filmato
e di recuperarli una volta che sono stati impostati.
Per creare un oggetto Color prima di chiamarne i metodi, utilizzare la funzione di costruzione new Color().
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 266
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Color(target:Object)
Crea un oggetto Color per il clip filmato specificato dal parametro target_mc.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
getRGB() : Number
Restituisce la combinazione R+G+B attualmente utilizzata
dall'oggetto color.
getTransform() : Object Restituisce il valore di trasformazione impostato dall'ultima
chiamata a Color.setTransform().
setRGB(offset:Number
) : Void
Specifica un colore RGB per un oggetto Color.
setTransform(transform Imposta le informazioni di trasformazione del colore per un
Object:Object) : Void oggetto Color.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Color (funzione di costruzione)
public Color(target:Object)
Crea un oggetto Color per il clip filmato specificato dal parametro target_mc. È possibile utilizzare i metodi di questo
oggetto Color per modificare il colore di un clip filmato target.
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Il nome dell'istanza di un clip filmato.
Esempio
L'esempio seguente crea un oggetto Color di nome my_color per il clip filmato my_mc e ne imposta il valore RGB sul
colore arancione:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 267
Classi ActionScript
var my_color:Color = new Color(my_mc);
my_color.setRGB(0xff9933);
getRGB (metodo Color.getRGB)
public getRGB() : Number
Restituisce la combinazione R+G+B attualmente utilizzata dall'oggetto color.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero che rappresenta il valore numerico RGB per il colore specificato.
Esempio
Il codice seguente recupera il valore RGB dell'oggetto Color my_color, converte il valore in una stringa esadecimale e
lo assegna alla variabile myValue. Per un esempio del funzionamento di questo codice, aggiungere un'istanza di clip
filmato allo stage, quindi assegnarle il nome di istanza mt_mc:
var my_color:Color = new Color(my_mc);
// set the color
my_color.setRGB(0xff9933);
var myValue:String = my_color.getRGB().toString(16);
// trace the color value
trace(myValue); // traces ff9933
Vedete anche
setRGB (metodo Color.setRGB)
getTransform (metodo Color.getTransform)
public getTransform() : Object
Restituisce il valore di trasformazione impostato dall'ultima chiamata a Color.setTransform().
Disponibilità
Flash Lite 2.0
Restituisce
Object - Un oggetto le cui proprietà contengono i valori correnti dell'offset e della percentuale del colore specificato.
Esempio
L'esempio seguente ottiene l'oggetto transform, quindi per i colori e l'alfa di my_mc imposta delle nuove percentuali
relative ai valori correnti. Per un esempio di funzionamento di questo codice, collocare un clip filmato a più colori sullo
stage con il nome di istanza my_mc. Quindi, collocare il codice seguente sul fotogramma 1 nella linea temporale
principale e selezionare Controllo > Prova filmato:
var my_color:Color = new Color(my_mc);
var myTransform:Object = my_color.getTransform();
myTransform = { ra: 50, ba: 50, aa: 30};
my_color.setTransform(myTransform);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 268
Classi ActionScript
Per consultare delle descrizioni dei parametri di un oggetto trasformazione colore, vedete Color.setTransform().
Vedete anche
setTransform (metodo Color.setTransform)
setRGB (metodo Color.setRGB)
public setRGB(offset:Number) : Void
Specifica un colore RGB per un oggetto Color. Se si chiama questo metodo, le eventuali impostazioni precedenti di
Color.setTransform() vengono ignorate.
Disponibilità
Flash Lite 2.0
Parametri
offset:Number - 0xRRGGBB Il colore esadecimale o RGB da impostare. RR, GG e BB sono composti da due cifre
esadecimali che specificano l'offset di ciascun componente di colore. 0x indica al compilatore ActionScript che il
numero è un valore esadecimale.
Esempio
Questo esempio imposta il valore di colore RGB per il clip filmato my_mc. Per un esempio di funzionamento di questo
codice, collocare un clip filmato sullo stage con il nome di istanza my_mc. Quindi, collocare il codice seguente sul
fotogramma 1 nella linea temporale principale e selezionare Controllo > Prova filmato:
var my_color:Color = new Color(my_mc);
my_color.setRGB(0xFF0000); // my_mc turns red
Vedete anche
setTransform (metodo Color.setTransform)
setTransform (metodo Color.setTransform)
public setTransform(transformObject:Object) : Void
Imposta le informazioni di trasformazione del colore per un oggetto Color. Il parametro colorTransformObject è un
oggetto generico che viene creato dalla funzione di costruzione new Object. È dotato di parametri che specificano i
valori percentuali e di offset dei componenti rosso, verde, blu e alfa (trasparenza) di un colore, nel formato
0xRRGGBBAA.
I parametri di un oggetto trasformazione colore corrispondono alle impostazioni della finestra di dialogo Effetto
avanzato e sono definiti nel modo seguente:
• ra è la percentuale relativa al componente rosso (da -100 a 100).
• rb è l'offset relativo al componente rosso (da -255 a 255).
• ga è la percentuale relativa al componente verde (da -100 a 100).
• gb è l'offset relativo al componente verde (da -255 a 255).
• ba è la percentuale relativa al componente blu (da -100 a 100).
• bb è l'offset relativo al componente blu (da -255 a 255).
• aa è la percentuale relativa all'alfa (da -100 a 100).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 269
Classi ActionScript
• ab è l'offset relativo all'alfa (da -255 a 255).
È possibile creare un parametro di colorTransformObject nel modo seguente:
var myColorTransform:Object = new Object();
myColorTransform.ra = 50;
myColorTransform.rb = 244;
myColorTransform.ga = 40;
myColorTransform.gb = 112;
myColorTransform.ba = 12;
myColorTransform.bb = 90;
myColorTransform.aa = 40;
myColorTransform.ab = 70;
Per creare un parametro di colorTransformObject è anche possibile utilizzare la sintassi seguente:
var myColorTransform:Object = { ra: 50, rb: 244, ga: 40, gb: 112, ba: 12, bb: 90, aa: 40, ab: 70}
Disponibilità
Flash Lite 2.0
Parametri
transformObject:Object - Un oggetto creato con la funzione di costruzione new Object. Questa istanza della classe
Object deve avere le seguenti proprietà che specificano i valori di trasformazione del colore: ra, rb, ga, gb, ba, bb,
aa, ab. Queste proprietà vengono illustrate di seguito.
Esempio
Questo esempio crea un oggetto new Color per un file SWF di destinazione, crea un oggetto generico di nome
myColorTransform con le proprietà definite in precedenza e utilizza il metodo setTransform() per passare
colorTransformObject ad un oggetto Color. Per utilizzare questo codice in un documento Flash (FLA), collocarlo sul
fotogramma 1 della linea temporale principale e posizionare un clip filmato sullo stage con il nome di istanza my_mc,
come accade nel codice seguente:
// Create a color object called my_color for the target my_mc
var my_color:Color = new Color(my_mc);
// Create a color transform object called myColorTransform using
// Set the values for myColorTransform
var myColorTransform:Object = { ra: 50, rb: 244, ga: 40, gb: 112, ba: 12, bb: 90, aa: 40, ab:
70};
// Associate the color transform object with the Color object
// created for my_mc
my_color.setTransform(myColorTransform);
Vedete anche
Object
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 270
Ultimo aggiornamento 4/5/2010
Classi ActionScript
ColorTransform (flash.geom.ColorTransform)
Object
|
+-flash.geom.ColorTransform
public class ColorTransform
extends Object
La classe ColorTransform consente di rettificare matematicamente tutti i valori di colore di un clip filmato. La
funzione di regolazione del colore o trasformazione del colore può essere applicata a tutti e quattro i canali: rosso, verde,
blu e trasparenza alfa.
Quando si applica un oggetto ColorTransform a un clip filmato, viene calcolato un nuovo valore per ciascun canale di
colore nel modo seguente:
• Nuovo valore rosso = (valore rosso precedente * redMultiplier + redOffset
• Nuovo valore verde = (valore verde precedente * greenMultiplier + greenOffset
• Nuovo valore blu = (valore blu precedente * blueMultiplier + blueOffset
• Nuovo valore alfa = (valore alfa precedente * alphaMultiplier + alphaOffset
I valori dei canali di colore che dopo il calcolo risultano maggiori di 255 vengono impostati su 255. I valori inferiori a
0 vengono impostati su 0.
Per poter chiamare i metodi dell'oggetto ColorTransform, è necessario prima utilizzare la funzione di costruzione new
ColorTransform() per creare un oggetto ColorTransform.
Le trasformazioni del colore non si applicano al colore di sfondo di un clip filmato (ad esempio, un oggetto SWF
caricato), ma solo agli elementi grafici e ai simboli associati al clip filmato.
Disponibilità
Flash Lite 3.1
Vedete anche
colorTransform (proprietà Transform.colorTransform)
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
alphaMultiplier:Number
Un valore decimale che viene moltiplicato per il valore del canale
di trasparenza alfa.
alphaOffset:Number
Un numero da -255 a 255 che viene aggiunto al valore del canale
di trasparenza alfa dopo che questo è stato moltiplicato per il
valore alphaMultiplier.
blueMultiplier:Number
Un valore decimale che viene moltiplicato per il valore del canale
blu.
blueOffset:Number
Un numero da -255 a 255 che viene aggiunto al valore del canale
blu dopo che questo è stato moltiplicato per il valore
blueMultiplier.
greenMultiplier:Number
Un valore decimale che viene moltiplicato per il valore del canale
verde.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 271
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
greenOffset:Number
Un numero da -255 a 255 che viene aggiunto al valore del canale
verde dopo che questo è stato moltiplicato per il valore
greenMultiplier.
redMultiplier:Number
Un valore decimale che viene moltiplicato per il valore del canale
rosso.
redOffset:Number
Un numero da -255 a 255 che viene aggiunto al valore del canale
rosso dopo che questo è stato moltiplicato per il valore
redMultiplier.
rgb:Number
Il valore di colore RGB per un oggetto ColorTransform.
“constructor (proprietà Object.constructor)” a pagina 507, __proto__ (proprietà
Object._proto), prototype (proprietà Object.prototype), “__resolve (proprietà
Object.__resolve)” a pagina 512
Riepilogo delle funzioni di costruzione
Firma
Descrizione
ColorTransform([redMult Crea un oggetto ColorTransform per un oggetto di visualizzazione con i valori dei
iplier:Number],
canali di colore e alfa specificati.
[greenMultiplier:Number
],
[blueMultiplier:Number]
,
[alphaMultiplier:Number
],
[redOffset:Number],
[greenOffset:Number],
[blueOffset:Number],
[alphaOffset:Number])
Riepilogo dei metodi
Modificatori
Firma
Descrizione
concat(second:ColorT
ransform) : Void
Applica al clip filmato una seconda trasformazione di colore
additiva.
toString() : String
Formatta e restituisce una stringa che descrive tutte le proprietà
dell'oggetto ColorTransform.
“addProperty (metodo Object.addProperty)” a pagina 505, “hasOwnProperty (metodo
Object.hasOwnProperty)” a pagina 508, “isPropertyEnumerable (metodo
Object.isPropertyEnumerable)” a pagina 508, “isPrototypeOf (metodo
Object.isPrototypeOf)” a pagina 509, “registerClass (metodo Object.registerClass)” a
pagina 511, “toString (metodo Object.toString)” a pagina 515, “unwatch (metodo
Object.unwatch)” a pagina 516, valueOf (metodo Object.valueOf),“watch (metodo
Object.watch)” a pagina 518
alphaMultiplier (proprietà ColorTransform.alphaMultiplier)
public alphaMultiplier : Number
Un valore decimale che viene moltiplicato per il valore del canale di trasparenza alfa.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 272
Classi ActionScript
Se impostate direttamente il valore di trasparenza alfa di un clip filmato utilizzando la proprietà MovieClip._alpha,
quest'ultima modifica il valore della proprietà alphaMultiplier dell'oggetto ColorTransform di quel clip filmato.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore alphaMultiplier da 1 a .5.
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.alphaMultiplier); // 1
colorTrans.alphaMultiplier = .5;
trace(colorTrans.alphaMultiplier); // .5
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
Vedete anche
_alpha (MovieClip._alpha, proprietà)
alphaOffset (proprietà ColorTransform.alphaOffset)
public alphaOffset : Number
Un numero da -255 a 255 che viene aggiunto al valore del canale trasparenza di alfa dopo che questo è stato
moltiplicato per il valore alphaMultiplier.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore alphaOffset da 0 a -128.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 273
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.alphaOffset); // 0
colorTrans.alphaOffset = -128;
trace(colorTrans.alphaOffset); // -128
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
blueMultiplier (proprietà ColorTransform.blueMultiplier)
public blueMultiplier : Number
Un valore decimale che viene moltiplicato per il valore del canale blu.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore blueMultiplier da 1 a .5.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 274
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.blueMultiplier); // 1
colorTrans.blueMultiplier = .5;
trace(colorTrans.blueMultiplier); // .5
var rect:MovieClip = createRectangle(20, 80, 0x0000FF);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
blueOffset (proprietà ColorTransform.blueOffset)
public blueOffset : Number
Un numero da -255 a 255 che viene aggiunto al valore del canale blu dopo che questo è stato moltiplicato per il valore
blueMultiplier.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore blueOffset da 0 a 255.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 275
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.blueOffset); // 0
colorTrans.blueOffset = 255;
trace(colorTrans.blueOffset); // 255
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
Funzione di costruzione ColorTransform
public ColorTransform([redMultiplier:Number], [greenMultiplier:Number],
[blueMultiplier:Number], [alphaMultiplier:Number], [redOffset:Number], [greenOffset:Number],
[blueOffset:Number], [alphaOffset:Number])
Crea un oggetto ColorTransform per un oggetto di visualizzazione con i valori dei canali di colore e alfa specificati.
Disponibilità
Flash Lite 3.1
Parametri
redMultiplier:Number [opzionale] - Il valore del moltiplicatore del canale rosso, compreso nell'intervallo 0-1. Il
valore predefinito è 1.
greenMultiplier:Number opzionale] - Il valore del moltiplicatore del canale verde, compreso nell'intervallo 0-1. Il
valore predefinito è 1.
blueMultiplier:Number [opzionale] - Il valore del moltiplicatore del canale blu, compreso nell'intervallo 0-1. Il valore
predefinito è 1.
alphaMultiplier:Number [opzionale] - Il valore del moltiplicatore della trasparenza alfa, compreso nell'intervallo 01. Il valore predefinito è 1.
redOffset:Number [opzionale] - L'offset del valore del canale rosso (da -255 a 255). Il valore predefinito è 0.
greenOffset:Number [opzionale] - L'offset del valore del canale verde (da -255 a 255). Il valore predefinito è 0.
blueOffset:Number [opzionale] - L'offset del valore del canale blu (da -255 a 255). Il valore predefinito è 0.
alphaOffset:Number [opzionale] - L'offset del valore della trasparenza alfa (da -255 a 255). Il valore predefinito è 0.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 276
Classi ActionScript
Esempio
Nell'esempio seguente viene creato un oggetto ColorTransform denominato greenTransform:
var greenTransform:flash.geom.ColorTransform = new flash.geom.ColorTransform(0.5, 1.0, 0.5,
0.5, 10, 10, 10, 0);
Nell'esempio seguente viene creato l'oggetto ColorTransform colorTrans_1 con i valori predefiniti della funzione di
costruzione. Il fatto che colorTrans_1 e colorTrans_2 traccino gli stessi valori prova che vengono utilizzati i valori
predefiniti della funzione di costruzione.
import flash.geom.ColorTransform;
var colorTrans_1:ColorTransform = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
trace(colorTrans_1);
//(redMultiplier=1, greenMultiplier=1, blueMultiplier=1, alphaMultiplier=1, redOffset=0,
greenOffset=0, blueOffset=0, alphaOffset=0)
var colorTrans_2:ColorTransform = new ColorTransform();
trace(colorTrans_2);
//(redMultiplier=1, greenMultiplier=1, blueMultiplier=1, alphaMultiplier=1, redOffset=0,
greenOffset=0, blueOffset=0, alphaOffset=0)
concat (metodo ColorTransform.concat)
public concat(second:ColorTransform) : Void
Applica al clip filmato una seconda trasformazione di colore additivo. Il secondo gruppo di parametri di
trasformazione viene applicato ai colori del clip filmato dopo che è stata completata la prima trasformazione.
Disponibilità
Flash Lite 3.1
Parametri
second:ColorTransform - Un secondo oggetto ColorTransform da combinare con l'oggetto ColorTransform
corrente.
Esempio
L'esempio seguente concatena l'oggetto ColorTransform colorTrans_2 a colorTrans_1 determinando l'offset
completo del rosso combinato con il moltiplicatore alfa di .5.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 277
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans_1:ColorTransform = new ColorTransform(1, 1, 1, 1, 255, 0, 0, 0);
trace(colorTrans_1);
// (redMultiplier=1, greenMultiplier=1, blueMultiplier=1, alphaMultiplier=1, redOffset=255,
greenOffset=0, blueOffset=0, alphaOffset=0)
var colorTrans_2:ColorTransform = new ColorTransform(1, 1, 1, .5, 0, 0, 0, 0);
trace(colorTrans_2);
// (redMultiplier=1, greenMultiplier=1, blueMultiplier=1, alphaMultiplier=0.5, redOffset=0,
greenOffset=0, blueOffset=0, alphaOffset=0)
colorTrans_1.concat(colorTrans_2);
trace(colorTrans_1);
// (redMultiplier=1, greenMultiplier=1, blueMultiplier=1, alphaMultiplier=0.5, redOffset=255,
greenOffset=0, blueOffset=0, alphaOffset=0)
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans_1;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
greenMultiplier (proprietà ColorTransform.greenMultiplier)
public greenMultiplier : Number
Un valore decimale che viene moltiplicato per il valore del canale verde.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore greenMultiplier da 1 a .5.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 278
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.greenMultiplier); // 1
colorTrans.greenMultiplier = .5;
trace(colorTrans.greenMultiplier); // .5
var rect:MovieClip = createRectangle(20, 80, 0x00FF00), this;
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
greenOffset (proprietà ColorTransform.greenOffset)
public greenOffset : Number
Un numero da -255 a 255 che viene aggiunto al valore del canale verde dopo che questo è stato moltiplicato per il valore
greenMultiplier.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore greenOffset da 0 a 255.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 279
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.greenOffset); // 0
colorTrans.greenOffset = 255;
trace(colorTrans.greenOffset); // 255
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
redMultiplier (proprietà ColorTransform.redMultiplier)
public redMultiplier : Number
Un valore decimale che viene moltiplicato per il valore del canale rosso.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore redMultiplier da 1 a .5.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 280
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.redMultiplier); // 1
colorTrans.redMultiplier = .5;
trace(colorTrans.redMultiplier); // .5
var rect:MovieClip = createRectangle(20, 80, 0xFF0000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
redOffset (proprietà ColorTransform.redOffset)
public redOffset : Number
Un numero da -255 a 255 che viene aggiunto al valore del canale rosso dopo che questo è stato moltiplicato per il valore
redMultiplier.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e ne modifica il valore redOffset da 0 a 255.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 281
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.redOffset); // 0
colorTrans.redOffset = 255;
trace(colorTrans.redOffset); // 255
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
rgb (proprietà ColorTransform.rgb)
public rgb : Number
Il valore di colore RGB per un oggetto ColorTransform.
Quando viene impostata, questa proprietà modifica i tre valori di offset del colore (redOffset, greenOffset e
blueOffset) e imposta i tre valori dei moltiplicatori (redMultiplier, greenMultiplier e blueMultiplier) a 0. I
valori del moltiplicatore e dell'offset della trasparenza alfa restano invariati.
Passate un valore per questa proprietà utilizzando il formato seguente: 0xRRGGBB. RR, GG e BB sono composti da due
cifre esadecimali che specificano l'offset di ciascun componente di colore. 0x indica al compilatore ActionScript che il
numero è un valore esadecimale.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e modifica il valore rgb a 0xFF0000.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 282
Classi ActionScript
import flash.geom.ColorTransform;
import flash.geom.Transform;
var colorTrans:ColorTransform = new ColorTransform();
trace(colorTrans.rgb); // 0
colorTrans.rgb = 0xFF0000;
trace(colorTrans.rgb); // 16711680
trace("0x" + colorTrans.rgb.toString(16)); // 0xff0000
var rect:MovieClip = createRectangle(20, 80, 0x000000);
var trans:Transform = new Transform(rect);
trans.colorTransform = colorTrans;
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
toString (metodo ColorTransform.toString)
public toString() : String
Formatta e restituisce una stringa che descrive tutte le proprietà dell'oggetto ColorTransform.
Disponibilità
Flash Lite 2.0
Restituisce
String Una stringa che elenca tutte le proprietà dell'oggetto ColorTransform.
Esempio
L'esempio seguente crea l'oggetto ColorTransform colorTrans e chiama il relativo metodo toSting(). Il risultato del
metodo è una stringa con il formato seguente: (redMultiplier=RM, greenMultiplier=GM, blueMultiplier=BM,
alphaMultiplier=AM, redOffset=RO, greenOffset=GO, blueOffset=BO, alphaOffset=AO).
import flash.geom.ColorTransform;
var colorTrans:ColorTransform = new ColorTransform(1, 2, 3, 4, -255, -128, 128, 255);
trace(colorTrans.toString());
// (redMultiplier=1, greenMultiplier=2, blueMultiplier=3, alphaMultiplier=4, redOffset=-255,
greenOffset=-128, blueOffset=128, alphaOffset=255)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 283
Classi ActionScript
Date
Object
|
+-Date
public class Date
extends Object
La classe Date consente di recuperare i valori relativi alla data e all'ora dell'ora universale (UTC; precedentemente
definita GMT, Greenwich Mean Time) o del sistema operativo su cui è in esecuzione il player Flash Lite. I metodi della
classe Date non sono statici ma si applicano solo al singolo oggetto Date specificato quando viene chiamato il metodo.
Il metodo Date.UTC() è un'eccezione ed è un metodo statico.
La classe Date gestisce l'ora legale in modo diverso a seconda del sistema operativo e della versione di Flash Player. La
versione 6 e successive di Flash Player gestiscono l'ora legale sui seguenti sistemi operativi nei modi indicati di seguito:
• Windows - L'oggetto Date regola automaticamente l'output per l'ora legale. L'oggetto Date rileva se l'ora legale è
adottata nella versione locale corrente e, in caso affermativo, rileva la data e l'ora di transizione dall'ora standard
all'ora legale. Tuttavia, le date di transizione attualmente in vigore vengono applicate alle date passate e future, e
pertanto potrebbe essere calcolata una variazione non corretta dell'ora legale per le ore del passato per cui la
versione locale prevedeva date di transizione diverse.
• Mac OS X - L'oggetto Date regola automaticamente l'output per l'ora legale. Per determinare se a una data o a un'ora
del presente o del passato deve essere applicata la variazione dell'ora legale viene utilizzato il database delle
informazioni sui fusi orari di Mac OS X.
• Mac OS 9 - Il sistema operativo fornisce solo le informazioni sufficienti a determinare se alla data e all'ora corrente
deve essere applicata la variazione dell'ora legale. Di conseguenza, l'oggetto Date presuppone che la variazione
corrente dell'ora legale viene applicata a tutte le date e le ore nel passato e nel futuro.
La versione 5 di Flash Player gestisce l'ora legale sui seguenti sistemi operativi nel modo indicato di seguito:
• Windows - Vengono sempre applicate le regole statunitensi per l'ora legale e questo comporta delle transizioni non
corrette in Europa e nelle altre aree del mondo che adottano l'ora legale ma hanno ore di transizione diverse rispetto
agli Stati Uniti. Flash rileva in modo corretto se nella versione locale corrente è utilizzata l'ora legale.
Per chiamare i metodi della classe Date, è prima necessario creare un oggetto Date mediante la funzione di
costruzione della classe Date, descritta più avanti in questa sezione.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 284
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Date([yearOrTimevalue:Number],
[month:Number], [date:Number],
[hour:Number],
[minute:Number],
[second:Number],
[millisecond:Number])
Crea un nuovo oggetto Date che contiene la data e l'ora specificate.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
getDate():Number
Restituisce il giorno del mese (un numero intero compreso tra
1 e 31) dell'oggetto Date specificato, in base all'ora locale.
getDay():Number
Restituisce il giorno della settimana (0 per domenica, 1 per
lunedì, e così via) dell'oggetto Date specificato, in base all'ora
locale.
getFullYear() : Number Restituisce l'anno completo (un numero di quattro cifre, ad
esempio 2000) dell'oggetto Date specificato, in base all'ora
locale.
getHours() : Number
Restituisce l'ora (un numero intero compreso tra 0 e 23)
dell'oggetto Date specificato, in base all'ora locale.
getLocaleLongDate() :
String
Restituisce una stringa che rappresenta la data corrente in
formato esteso e formattata in base alle impostazioni
internazionali attualmente definite.
getLocaleShortDate() :
String
Restituisce una stringa che rappresenta la data corrente in
formato breve e formattata in base alle impostazioni
internazionali attualmente definite.
getLocaleTime() :
String
Restituisce una stringa che rappresenta l'ora corrente
formattata in base alle impostazioni internazionali
attualmente definite.
getMilliseconds() :
Number
Restituisce i millisecondi (un numero intero compreso tra 0 e
999) dell'oggetto Date specificato, in base all'ora locale.
getMinutes() : Number Restituisce i minuti (un numero intero compreso tra 0 e 59)
dell'oggetto Date specificato, in base all'ora locale.
getMonth() : Number
Restituisce il mese (0 per gennaio, 1 per febbraio, e così via)
dell'oggetto Date specificato, in base all'ora locale.
getSeconds() : Number Restituisce i secondi (un numero intero compreso tra 0 e 59)
dell'oggetto Date specificato, in base all'ora locale.
getTime() : Number
Restituisce il numero di millisecondi trascorsi dalla mezzanotte
del 1° gennaio 1970 (ora universale) per l'oggetto Date
specificato.
getTimezoneOffset() :
Number
Restituisce la differenza, espressa in minuti, tra l'ora locale del
computer e l'ora universale.
getUTCDate() : Number Restituisce il giorno del mese (un numero intero compreso tra
1 e 31) dell'oggetto Date specificato, in base all'ora universale.
getUTCDay() : Number Restituisce il giorno della settimana (0 per domenica, 1 per
lunedì, e così via) dell'oggetto Date specificato, in base all'ora
universale.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 285
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
getUTCFullYear() :
Number
Restituisce l'anno completo (un numero di quattro cifre)
dell'oggetto Date specificato, in base all'ora universale.
getUTCHours() :
Number
Restituisce l'ora (un numero intero compreso tra 0 e 23)
dell'oggetto Date specificato, in base all'ora universale.
getUTCMilliseconds() :
Number
Restituisce i millisecondi (un numero intero compreso tra 0 e
999) dell'oggetto Date specificato, in base all'ora universale.
getUTCMinutes() :
Number
Restituisce i minuti (un numero intero compreso tra 0 e 59)
dell'oggetto Date specificato, in base all'ora universale.
getUTCMonth() :
Number
Restituisce il mese (un numero intero compreso tra 0 [gennaio]
e 11 [dicembre]) dell'oggetto Date specificato, in base all'ora
universale.
getUTCSeconds() :
Number
Restituisce i secondi (un numero intero compreso tra 0 e 59)
dell'oggetto Date specificato, in base all'ora universale.
getUTCYear() : Number Restituisce l'anno di questo oggetto Date in base all'ora
universale (UTC, Coordinated Universal Time).
getYear() : Number
Restituisce l'anno dell'oggetto Date specificato, in base all'ora
locale.
setDate(date:Number)
: Number
Imposta il giorno del mese per l'oggetto Date specificato, in
base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi.
setFullYear(year:Numbe Imposta l'anno dell'oggetto Date specificato, in base all'ora
r, [month:Number],
locale, e restituisce il nuovo valore, espresso in millisecondi.
[date:Number]) :
Number
setHours(hour:Number) Imposta le ore dell'oggetto Date specificato, in base all'ora
: Number
locale, e restituisce il nuovo valore, espresso in millisecondi.
setMilliseconds(millise
cond:Number) :
Number
Imposta i millisecondi per l'oggetto Date specificato, in base
all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi.
setMinutes(minute:Nu
mber) : Number
Imposta i minuti per un oggetto Date specificato, in base all'ora
locale, e restituisce il nuovo valore, espresso in millisecondi.
setMonth(month:Numbe Imposta il mese per l'oggetto Date specificato, in base all'ora
r, [date:Number]) : locale, e restituisce il nuovo valore, espresso in millisecondi.
Number
setSeconds(second:Nu
mber) : Number
Imposta i secondi per l'oggetto Date specificato, in base all'ora
locale, e restituisce il nuovo valore, espresso in millisecondi.
setTime(millisecond:
Number) : Number
Imposta la data per l'oggetto Date specificato, espressa in
millisecondi dalla mezzanotte del 1° gennaio 1970, e
restituisce il nuovo valore, espresso in millisecondi.
setUTCDate(date:Numb
er) : Number
Imposta la data per l'oggetto Date specificato, in base all'ora
universale, e restituisce il nuovo valore, espresso in
millisecondi.
setUTCFullYear(year:Nu
mber,
[month:Number],
[date:Number]) :
Number
Imposta l'anno per l'oggetto Date specificato (my_date) in
base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 286
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
setUTCHours(hour:Num
ber,
[minute:Number],
[second:Number],
[millisecond:Number
]) : Number
Imposta l'ora per l'oggetto Date specificato, in base all'ora
universale, e restituisce il nuovo valore, espresso in
millisecondi.
setUTCMilliseconds(mill
isecond:Number) :
Imposta i millisecondi per l'oggetto Date specificato, in base
all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
Number
setUTCMinutes(minute:
Number,
[second:Number],
[millisecond:Number
]) : Number
Imposta i minuti per l'oggetto Date specificato, in base all'ora
universale, e restituisce il nuovo valore, espresso in
millisecondi.
setUTCMonth(month:Nu
mber,
[date:Number]) :
Number
Imposta il mese, e facoltativamente il giorno, per l'oggetto
Date specificato, in base all'ora universale, e restituisce il nuovo
valore, espresso in millisecondi.
setUTCSeconds(second: Imposta i secondi per l'oggetto Date specificato, in base all'ora
Number,
universale, e restituisce il nuovo valore, espresso in
[millisecond:Number millisecondi.
]) : Number
static
setYear(year:Number)
: Number
Imposta l'anno per l'oggetto Date specificato, in base all'ora
locale, e restituisce il nuovo valore, espresso in millisecondi.
toString() : String
Restituisce un valore di tipo stringa per l'oggetto Date
specificato in formato leggibile.
UTC(year:Number,
month:Number,
[date:Number],
[hour:Number],
[minute:Number],
[second:Number],
[millisecond:Number
]) : Number
Restituisce il numero di millisecondi trascorsi tra la mezzanotte
del 1° gennaio 1970 (ora universale) e il tempo specificato nei
parametri.
valueOf() : Number
Restituisce il numero di millisecondi trascorsi a partire dalla
mezzanotte del 1 gennaio 1970 (ora universale) per l'oggetto
Date specificato.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Date (funzione di costruzione)
public Date([yearOrTimevalue:Number], [month:Number], [date:Number], [hour:Number],
[minute:Number], [second:Number], [millisecond:Number])
Crea un nuovo oggetto Date che contiene la data e l'ora specificate.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 287
Classi ActionScript
La funzione di costruzione Date() richiede fino a sette parametri per specificare una data e un'ora al millisecondo. In
alternativa, è possibile passare un singolo valore alla funzione di costruzione Date() che indica un valore temporale
basato sul numero di millisecondi trascorsi dal 1 gennaio 1970 alle 0:00:000 GMT. Oppure è possibile non specificare
alcun parametro, per fare in modo che all'oggetto data Date() vengano assegnate la data e l'ora correnti.
Il codice seguente mostra diversi modi per creare un oggetto Date:
var
var
var
var
d1:Date
d3:Date
d4:Date
d5:Date
=
=
=
=
new
new
new
new
Date();
Date(2000, 0, 1);
Date(65, 2, 6, 9, 30, 15, 0);
Date(-14159025000);
Nella prima riga di codice, un oggetto Date viene impostato sull'ora in cui viene eseguita l'istruzione assignment.
Nella seconda riga, viene creato un oggetto Date a cui vengono passati i parametri year, month e date, con la data e
l'ora corrispondenti alle 0:00:00 GMT del 1 gennaio 2000.
Nella terza riga, viene creato un oggetto Date a cui vengono passati i parametri year, month e date, con la data e l'ora
corrispondenti alle 09:30:15 GMT (+ 0 millisecondi) del 6 marzo 1965. Poiché il parametro year è specificato sotto
forma di numero intero a due cifre, viene interpretato come 1965.
Nella quarta riga, viene passato solo un parametro, ovvero un valore temporale che rappresenta il numero di
millisecondi prima o dopo le 0:00:00 GMT del 1 gennaio 1970; dal momento che il valore è negativo, rappresenta un
tempo precedente alle 0:00:00 GMT del 1 gennaio 1970 e in questo caso l'ora e la data sono le seguenti: 02:56:15 GMT
del 21 luglio 1969.
Disponibilità
Flash Lite 2.0
Parametri
yearOrTimevalue:Number [opzionale] - Se vengono specificati altri parametri, questo numero rappresenta un anno
(ad esempio, 1965); in caso contrario, rappresenta un valore dell'ora. Se il numero rappresenta un anno, un valore
compreso tra 0 e 99 indica un anno compreso tra il 1900 e il 1999; in caso contrario, è necessario specificare tutte e
quattro le cifre dell'anno. Se il numero rappresenta un valore dell'ora (ovvero se non vengono specificati altri
parametri), si tratta del numero di millisecondi prima o dopo le 0:00:00 GMT del 1 gennaio 1970; un valore negativo
rappresenta un'ora precedente le 0:00:00 GMT del 1 gennaio 1970, mentre un valore positivo rappresenta un'ora
successiva.
month:Number [opzionale] - Un numero intero da 0 (gennaio) a 11 (dicembre).
date:Number [opzionale] - Un numero intero compreso tra 1 e 31.
hour:Number [opzionale] - Un numero intero compreso tra 0 (mezzanotte) e 23 (11 p.m.).
minute:Number [opzionale] - Un numero intero compreso tra 0 e 59.
second:Number [opzionale] - Un numero intero compreso tra 0 e 59.
millisecond:Number [opzionale] - Un numero intero compreso tra 0 e 999.
Esempio
L'esempio seguente recupera la data e l'ora correnti:
var now_date:Date = new Date();
L'esempio seguente crea un nuovo oggetto Date per il compleanno di Mary del 12 agosto 1974 (dal momento che il
parametro month è a base zero, l'esempio utilizza il numero 7 per il mese, anziché il numero 8):
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 288
Classi ActionScript
var maryBirthday:Date = new Date (74, 7, 12);
L'esempio seguente crea un nuovo oggetto Date e concatena i valori restituiti di Date.getMonth(), Date.getDate()
e Date.getFullYear():
var today_date:Date = new Date();
var date_str:String =
((today_date.getMonth()+1)+"/"+today_date.getDate()+"/"+today_date.getFullYear());
trace(date_str); // displays current date in United States date format
Vedete anche
getMonth (metodo Date.getMonth), getDate (metodo Date.getDate), getFullYear (metodo
Date.getFullYear)
getDate (metodo Date.getDate)
public getDate() : Number
Restituisce il giorno del mese (un numero intero compreso tra 1 e 31) dell'oggetto Date specificato, in base all'ora
locale. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e concatena i valori restituiti di Date.getMonth(), Date.getDate()
e Date.getFullYear():
var today_date:Date = new Date();
var date_str:String =
(today_date.getDate()+"/"+(today_date.getMonth()+1)+"/"+today_date.getFullYear());
trace(date_str); // displays current date in United States date format
Vedete anche
getMonth (metodo Date.getMonth), getFullYear (metodo Date.getFullYear)
getDay (metodo Date.getDay)
public getDay() : Number
Restituisce il giorno della settimana (0 per domenica, 1 per lunedì, e così via) dell'oggetto Date specificato, in base
all'ora locale. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number -- Un numero intero che rappresenta il giorno della settimana.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 289
Classi ActionScript
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza getDay() per determinare il giorno corrente della
settimana:
var dayOfWeek_array:Array = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday");
var today_date:Date = new Date();
var day_str:String = dayOfWeek_array[today_date.getDay()];
trace("Today is "+day_str);
getFullYear (metodo Date.getFullYear)
public getFullYear() : Number
Restituisce l'anno completo (un numero di quattro cifre, ad esempio 2000) dell'oggetto Date specificato, in base all'ora
locale. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero che rappresenta l'anno.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date. L'istruzione trace mostra il valore
restituito dal metodo getFullYear().
var my_date:Date = new Date();
trace(my_date.getYear()); // displays 104
trace(my_date.getFullYear()); // displays current year
getHours (metodo Date.getHours)
public getHours() : Number
Restituisce l'ora (un numero intero compreso tra 0 e 23) dell'oggetto Date specificato, in base all'ora locale. La data e
l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getHours() per visualizzare i valori dell'ora di tale oggetto:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 290
Classi ActionScript
var my_date:Date = new Date();
trace(my_date.getHours());
var my_date:Date = new Date();
var hourObj:Object = getHoursAmPm(my_date.getHours());
trace(hourObj.hours);
trace(hourObj.ampm);
function getHoursAmPm(hour24:Number):Object {
var returnObj:Object = new Object();
returnObj.ampm = (hour24<12) ? "AM" : "PM";
var hour12:Number = hour24%12;
if (hour12 == 0) {
hour12 = 12;
}
returnObj.hours = hour12;
return returnObj;
}
getLocaleLongDate (metodo Date.getLocaleLongDate)
public getLocaleLongDate() : String
Restituisce una stringa che rappresenta la data corrente in formato esteso e formattata in base alle impostazioni
internazionali attualmente definite.
Nota: il formato della data dipende dal dispositivo mobile e dalle impostazioni internazionali definite.
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa che rappresenta la data corrente in formato esteso, formattata in base alle impostazioni
internazionali attualmente definite.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date in base all'ora corrente. Inoltre,
utilizza il metodo getLocaleLongDate() per restituire una stringa che rappresenta la data corrente in formato esteso
e formattata in base alle impostazioni internazionali attualmente definite, nel modo seguente:
var my_date:Date = new Date();
trace(my_date.getLocaleLongDate());
Seguono alcuni esempi di valori restituiti da getLocaleLongDate():
October 16, 2005
16 October 2005
getLocaleShortDate (metodo Date.getLocaleShortDate)
public getLocaleShortDate() : String
Restituisce una stringa che rappresenta la data corrente in formato breve e formattata in base alle impostazioni
internazionali attualmente definite.
Nota: il formato della data dipende dal dispositivo mobile e dalle impostazioni internazionali definite.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 291
Classi ActionScript
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa che rappresenta la data corrente in formato breve, formattata in base alle impostazioni
internazionali attualmente definite.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date in base all'ora corrente. Inoltre,
utilizza il metodo getLocaleShortDate() per restituire una stringa che rappresenta la data corrente in formato breve
e formattata in base alle impostazioni internazionali attualmente definite, nel modo seguente:
var my_date:Date = new Date();
trace(my_date.getLocaleShortDate());
Seguono alcuni esempi di valori restituiti da getLocaleLongDate():
10/16/2005
16-10-2005
getLocaleTime (metodo Date.getLocaleTime)
public getLocaleTime() : String
Restituisce una stringa che rappresenta l'ora corrente formattata in base alle impostazioni internazionali attualmente
definite.
Nota: il formato della data dipende dal dispositivo mobile e dalle impostazioni internazionali definite.
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa che rappresenta l'ora corrente, formattata in base alle impostazioni internazionali attualmente
definite.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date in base all'ora corrente. Inoltre,
utilizza il metodo getLocaleTime() per restituire l'ora locale corrente, nel modo seguente:
var my_date:Date = new Date();
trace(my_date.getLocaleTime());
Seguono alcuni esempi di valori restituiti da getLocaleTime():
6:10:44 PM
18:10:44
getMilliseconds (metodo Date.getMilliseconds)
public getMilliseconds() : Number
Restituisce i millisecondi (un numero intero compreso tra 0 e 999) dell'oggetto Date specificato, in base all'ora locale.
La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 292
Classi ActionScript
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getMilliseconds() per visualizzare il valore dei millisecondi di tale oggetto:
var my_date:Date = new Date();
trace(my_date.getMilliseconds());
getMinutes (metodo Date.getMinutes)
public getMinutes() : Number
Restituisce i minuti (un numero intero compreso tra 0 e 59) dell'oggetto Date specificato, in base all'ora locale. La data
e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getMinutes() per visualizzare il valore dei minuti di tale oggetto:
var my_date:Date = new Date();
trace(my_date.getMinutes());
getMonth (metodo Date.getMonth)
public getMonth() : Number
Restituisce il mese (0 per gennaio, 1 per febbraio, e così via) dell'oggetto Date specificato, in base all'ora locale. La data
e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getMonth() per visualizzare il valore del mese di tale oggetto:
var my_date:Date = new Date();
trace(my_date.getMonth());
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 293
Classi ActionScript
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getMonth() per visualizzare il mese corrente sotto forma di valore numerico, oltre al nome del mese.
var my_date:Date = new Date();
trace(my_date.getMonth());
trace(getMonthAsString(my_date.getMonth()));
function getMonthAsString(month:Number):String {
var monthNames_array:Array = new Array("January", "February", "March", "April", "May",
"June", "July", "August", "September", "October", "November", "December");
return monthNames_array[month];
}
getSeconds (metodo Date.getSeconds)
public getSeconds() : Number
Restituisce i secondi (un numero intero compreso tra 0 e 59) dell'oggetto Date specificato, in base all'ora locale. La data
e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getSeconds() per visualizzare il valore dei secondi di tale oggetto:
var my_date:Date = new Date();
trace(my_date.getSeconds());
getTime (metodo Date.getTime)
public getTime() : Number
Restituisce il numero di millisecondi trascorsi dalla mezzanotte del 1 gennaio 1970 (ora universale) per l'oggetto Date
specificato. Utilizzare questo metodo per rappresentare un istante specifico nel tempo in cui confrontare due o più
oggetti Date.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente utilizza la funzione di costruzione per creare un oggetto Date basato sull'ora corrente e utilizza il
metodo getTime() per visualizzare il numero dei millisecondi trascorsi dalla mezzanotte del 1 gennaio 1970:
var my_date:Date = new Date();
trace(my_date.getTime());
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 294
Classi ActionScript
getTimezoneOffset (metodo Date.getTimezoneOffset)
public getTimezoneOffset() : Number
Restituisce la differenza, espressa in minuti, tra l'ora locale del computer e l'ora universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente restituisce la differenza tra l'ora legale di San Francisco e l'ora universale. L'ora legale è fattorizzata
nel risultato restituito solo se la data definita nell'oggetto Date ha luogo durante l'ora legale. L'output di questo esempio
è 420 minuti e viene visualizzato nel pannello Output (7 ore * 60 minuti/ora = 420 minuti). Questo esempio riguarda
l'ora legale del Pacifico (GMT -07:00). Il risultato varia a seconda del luogo e del periodo dell'anno.
var my_date:Date = new Date();
trace(my_date.getTimezoneOffset());
getUTCDate (metodo Date.getUTCDate)
public getUTCDate() : Number
Restituisce il giorno del mese (un numero intero compreso tra 1 e 31) dell'oggetto Date specificato, in base all'ora
universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCDate() e Date.getDate(). Il valore restituito
da Date.getUTCDate() può essere diverso dal valore restituito da Date.getDate(), a seconda del rapporto che esiste
tra il fuso orario locale e l'ora universale.
var my_date:Date = new Date(2004,8,25);
trace(my_date.getUTCDate()); // output: 25
Vedete anche
getDate (metodo Date.getDate)
getUTCDay (metodo Date.getUTCDay)
public getUTCDay() : Number
Restituisce il giorno della settimana (0 per domenica, 1 per lunedì, e così via) dell'oggetto Date specificato, in base
all'ora universale.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 295
Classi ActionScript
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCDay() e Date.getDay(). Il valore restituito
da Date.getUTCDay() può essere diverso dal valore restituito da Date.getDay(), a seconda del rapporto che esiste
tra il fuso orario locale e l'ora universale.
var today_date:Date = new Date();
trace(today_date.getDay()); // output will be based on local timezone
trace(today_date.getUTCDay()); // output will equal getDay() plus or minus one
Vedete anche
getDay (metodo Date.getDay)
getUTCFullYear (metodo Date.getUTCFullYear)
public getUTCFullYear() : Number
Restituisce l'anno completo (un numero di quattro cifre) dell'oggetto Date specificato, in base all'ora universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCFullYear() e Date.getFullYear(). Il valore
restituito da Date.getUTCFullYear() può essere diverso dal valore restituito da Date.getFullYear() se la data
corrente è 31 dicembre o 1 gennaio, a seconda del rapporto che esiste tra il fuso orario locale e l'ora universale.
var today_date:Date = new Date();
trace(today_date.getFullYear()); // display based on local timezone
trace(today_date.getUTCFullYear()); // displays getYear() plus or minus 1
Vedete anche
getFullYear (metodo Date.getFullYear)
getUTCHours (metodo Date.getUTCHours)
public getUTCHours() : Number
Restituisce l'ora (un numero intero compreso tra 0 e 23) dell'oggetto Date specificato, in base all'ora universale.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 296
Classi ActionScript
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCHours() e Date.getHours(). Il valore
restituito da Date.getUTCHours() può essere diverso dal valore restituito da Date.getHours(), a seconda del
rapporto che esiste tra il fuso orario locale e l'ora universale.
var today_date:Date = new Date();
trace(today_date.getHours()); // display based on local timezone
trace(today_date.getUTCHours()); // display equals getHours() plus or minus 12
Vedete anche
getHours (metodo Date.getHours)
getUTCMilliseconds (metodo Date.getUTCMilliseconds)
public getUTCMilliseconds() : Number
Restituisce i millisecondi (un numero intero compreso tra 0 e 999) dell'oggetto Date specificato, in base all'ora
universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCMilliseconds() per restituire il valore dei
millisecondi dell'oggetto Date.
var today_date:Date = new Date();
trace(today_date.getUTCMilliseconds());
getUTCMinutes (metodo Date.getUTCMinutes)
public getUTCMinutes() : Number
Restituisce i minuti (un numero intero compreso tra 0 e 59) dell'oggetto Date specificato, in base all'ora universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCMinutes() per restituire il valore dei minuti
dell'oggetto Date.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 297
Classi ActionScript
var today_date:Date = new Date();
trace(today_date.getUTCMinutes());
getUTCMonth (metodo Date.getUTCMonth)
public getUTCMonth() : Number
Restituisce il mese (un numero intero compreso tra 0 [gennaio] e 11 [dicembre]) dell'oggetto Date specificato, in base
all'ora universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCMonth() e Date.getMonth(). Il valore
restituito da Date.getUTCMonth() può essere diverso dal valore restituito da Date.getMonth() se la data corrente è
il primo o l'ultimo giorno del mese, a seconda del rapporto che esiste tra il fuso orario locale e l'ora universale.
var today_date:Date = new Date();
trace(today_date.getMonth()); // output based on local timezone
trace(today_date.getUTCMonth()); // output equals getMonth() plus or minus 1
Vedete anche
getMonth (metodo Date.getMonth)
getUTCSeconds (metodo Date.getUTCSeconds)
public getUTCSeconds() : Number
Restituisce i secondi (un numero intero compreso tra 0 e 59) dell'oggetto Date specificato, in base all'ora universale.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza getUTCSeconds() per restituire il valore dei secondi
dell'oggetto Date.
var today_date:Date = new Date();
trace(today_date.getUTCSeconds());
getUTCYear (metodo Date.getUTCYear)
public getUTCYear() : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 298
Classi ActionScript
Restituisce l'anno della Date in base all'ora universale (UTC, Coordinated Universal Time). L'anno è l'anno completo
meno 1900. Ad esempio, l'anno 2000 viene rappresentato come 100.
Disponibilità
Flash Lite 2.0
Restituisce
Number Esempio
L'esempio seguente crea un nuovo oggetto Date e utilizza Date.getUTCFullYear() e Date.getFullYear(). Il valore
restituito da Date.getUTCFullYear() può essere diverso dal valore restituito da Date.getFullYear() se la data
corrente è 31 dicembre o 1 gennaio, a seconda del rapporto che esiste tra il fuso orario locale e l'ora universale.
var today_date:Date = new Date();
trace(today_date.getFullYear()); // display based on local timezone
trace(today_date.getUTCFullYear()); // displays getYear() plus or minus 1
getYear (metodo Date.getYear)
public getYear() : Number
Restituisce l'anno dell'oggetto Date specificato, in base all'ora locale. La data e l'ora locali vengono determinate in base
al sistema operativo su cui il player Flash Lite è in esecuzione. L'anno è l'anno completo meno 1900. Ad esempio, l'anno
2000 viene rappresentato come 100.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date con il mese e l'anno impostati su maggio 2004. Il metodo
Date.getYear() restituisce 104, mentre Date.getFullYear() restituisce 2004:
var today_date:Date = new Date(2004,4);
trace(today_date.getYear()); // output: 104
trace(today_date.getFullYear()); // output: 2004
Vedete anche
getFullYear (metodo Date.getFullYear)
setDate (metodo Date.setDate)
public setDate(date:Number) : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 299
Classi ActionScript
Imposta il giorno del mese per l'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
date:Number - Un numero intero compreso tra 1 e 31.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date, impostando come data il 15 maggio 2004, e utilizza Date.setDate()
per trasformare la data in 25 maggio 2004:
var today_date:Date = new Date(2004,4,15);
trace(today_date.getDate()); //displays 15
today_date.setDate(25);
trace(today_date.getDate()); //displays 25
setFullYear (metodo Date.setFullYear)
public setFullYear(year:Number, [month:Number], [date:Number]) : Number
Imposta l'anno dell'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in millisecondi.
Se i parametri month e date vengono specificati, vengono impostati sull'ora locale. La data e l'ora locali vengono
determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Se si chiama questo metodo, gli altri campi dell'oggetto Date non vengono modificati, ma è possibile che
Date.getUTCDay() e Date.getDay() riportino un nuovo valore se il giorno della settimana cambia come
conseguenza della chiamata a questo metodo.
Disponibilità
Flash Lite 2.0
Parametri
year:Number - Un numero di quattro cifre che specifica un anno. I numeri a due cifre non rappresentano gli anni a
quattro cifre; ad esempio, 99 non corrisponde all'anno 1999, bensì all'anno 99.
month:Number [opzionale] - Un numero intero da 0 (gennaio) a 11 (dicembre). Se si omette questo parametro, il
campo del mese dell'oggetto Date specificato non viene modificato.
date:Number [opzionale] - Un numero compreso tra -1 e 31. Se si omette questo parametro, il campo della data
dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 300
Classi ActionScript
Esempio
L'esempio seguente crea un nuovo oggetto Date, impostando come data il 15 maggio 2004, e utilizza
Date.setFullYear() per trasformare la data in 15 maggio 2002:
var my_date:Date = new Date(2004,4,15);
trace(my_date.getFullYear()); //output: 2004
my_date.setFullYear(2002);
trace(my_date.getFullYear()); //output: 2002
Vedete anche
getUTCDay (metodo Date.getUTCDay), getDay (metodo Date.getDay)
setHours (metodo Date.setHours)
public setHours(hour:Number) : Number
Imposta le ore dell'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in millisecondi.
La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
hour:Number - Un numero intero compreso tra 0 (mezzanotte) e 23 (11 p.m.).
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 8:00 a.m. del 15 maggio
2004, e utilizza Date.setHours() per trasformare l'ora in 4:00 p.m.:
var my_date:Date = new Date(2004,4,15,8);
trace(my_date.getHours()); // output: 8
my_date.setHours(16);
trace(my_date.getHours()); // output: 16
setMilliseconds (metodo Date.setMilliseconds)
public setMilliseconds(millisecond:Number) : Number
Imposta i millisecondi per l'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
millisecond:Number - Un numero intero compreso tra 0 e 999.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 301
Classi ActionScript
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come data le 8:30 a.m. del 15 maggio 2004
con il valore dei millisecondi impostato su 250, quindi utilizza Date.setMilliseconds() per modificare il valore dei
millisecondi con 575:
var my_date:Date = new Date(2004,4,15,8,30,0,250);
trace(my_date.getMilliseconds()); // output: 250
my_date.setMilliseconds(575);
trace(my_date.getMilliseconds()); // output: 575
setMinutes (metodo Date.setMinutes)
public setMinutes(minute:Number) : Number
Imposta i minuti per un oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
minute:Number - Un numero intero compreso tra 0 e 59.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 8:00 a.m. del 15 maggio
2004, e utilizza Date.setMinutes() per trasformare l'ora in 8:30 a.m.:
var my_date:Date = new Date(2004,4,15,8,0);
trace(my_date.getMinutes()); // output: 0
my_date.setMinutes(30);
trace(my_date.getMinutes()); // output: 30
setMonth (metodo Date.setMonth)
public setMonth(month:Number, [date:Number]) : Number
Imposta il mese per l'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
month:Number - Un numero intero da 0 (gennaio) a 11 (dicembre).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 302
Classi ActionScript
date:Number [opzionale] - Un numero intero compreso tra 1 e 31. Se omettete questo parametro, il campo della data
dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date, impostando come data il 15 maggio 2004, e utilizza
Date.setMonth() per trasformare la data in 15 giugno 2004:
var my_date:Date = new Date(2004,4,15);
trace(my_date.getMonth()); //output: 4
my_date.setMonth(5);
trace(my_date.getMonth()); //output: 5
setSeconds (metodo Date.setSeconds)
public setSeconds(second:Number) : Number
Imposta i secondi per l'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Parametri
second:Number - Un numero intero compreso tra 0 e 59.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 08:00:00 a.m. del 15
maggio 2004, e utilizza Date.setSeconds() per trasformare l'ora in 8:00:45 a.m.:
var my_date:Date = new Date(2004,4,15,8,0,0);
trace(my_date.getSeconds()); // output: 0
my_date.setSeconds(45);
trace(my_date.getSeconds()); // output: 45
setTime (metodo Date.setTime)
public setTime(millisecond:Number) : Number
Imposta la data per l'oggetto Date specificato, espressa in millisecondi e dalla mezzanotte del 1 gennaio 1970, e
restituisce il nuovo valore, espresso in millisecondi.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 303
Classi ActionScript
Parametri
millisecond:Number - Un numero; un valore intero in cui 0 corrisponde alla mezzanotte del 1 gennaio, secondo l'ora
universale.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 08:00:00 a.m. del 15
maggio 2004, e utilizza Date.setTime() per trasformare l'ora in 08:30 a.m.:
var my_date:Date = new Date(2004,4,15,8,0,0);
var myDate_num:Number = my_date.getTime(); // convert my_date to milliseconds
myDate_num += 30 * 60 * 1000; // add 30 minutes in milliseconds
my_date.setTime(myDate_num); // set my_date Date object 30 minutes forward
trace(my_date.getFullYear()); // output: 2004
trace(my_date.getMonth()); // output: 4
trace(my_date.getDate()); // output: 15
trace(my_date.getHours()); // output: 8
trace(my_date.getMinutes()); // output: 30
setUTCDate (metodo Date.setUTCDate)
public setUTCDate(date:Number) : Number
Imposta la data per l'oggetto Date specificato, in base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi. Se si chiama questo metodo, gli altri campi dell'oggetto Date non vengono modificati, ma è possibile che
Date.getUTCDay() e Date.getDay() riportino un nuovo valore se il giorno della settimana cambia come
conseguenza della chiamata a questo metodo.
Disponibilità
Flash Lite 2.0
Parametri
date:Number - Un numero; un numero intero compreso tra 1 e 31.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date con la data corrente, utilizza Date.setUTCDate() per
modificare il valore della data in 10, quindi lo modifica nuovamente in 25:
var my_date:Date = new Date();
my_date.setUTCDate(10);
trace(my_date.getUTCDate()); // output: 10
my_date.setUTCDate(25);
trace(my_date.getUTCDate()); // output: 25
Vedete anche
getUTCDay (metodo Date.getUTCDay), getDay (metodo Date.getDay)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 304
Classi ActionScript
setUTCFullYear (metodo Date.setUTCFullYear)
public setUTCFullYear(year:Number, [month:Number], [date:Number]) : Number
Imposta l'anno per l'oggetto Date specificato (my_date) in base all'ora universale, e restituisce il nuovo valore, espresso
in millisecondi.
Facoltativamente, questo metodo può anche impostare il mese e la data rappresentati dall'oggetto Date specificato. Se
si chiama questo metodo, gli altri campi dell'oggetto Date non vengono modificati, ma è possibile che
Date.getUTCDay() e Date.getDay() riportino un nuovo valore se il giorno della settimana cambia come
conseguenza della chiamata a questo metodo.
Disponibilità
Flash Lite 2.0
Parametri
year:Number - Un numero intero che rappresenta l'anno specificato come anno a quattro cifre (ad esempio, 2000).
month:Number [opzionale] - Un numero intero da 0 (gennaio) a 11 (dicembre). Se si omette questo parametro, il
campo del mese dell'oggetto Date specificato non viene modificato.
date:Number [opzionale] - Un numero intero compreso tra 1 e 31. Se si omette questo parametro, il campo della data
dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date con la data corrente, utilizza Date.setUTCFullYear()
per modificare il valore dell'anno in 2001, quindi lo modifica in 25 maggio 1995:
var my_date:Date = new Date();
my_date.setUTCFullYear(2001);
trace(my_date.getUTCFullYear()); // output: 2001
my_date.setUTCFullYear(1995, 4, 25);
trace(my_date.getUTCFullYear()); // output: 1995
trace(my_date.getUTCMonth()); // output: 4
trace(my_date.getUTCDate()); // output: 25
Vedete anche
getUTCDay (metodo Date.getUTCDay), getDay (metodo Date.getDay)
setUTCHours (metodo Date.setUTCHours)
public setUTCHours(hour:Number, [minute:Number], [second:Number], [millisecond:Number]) :
Number
Imposta l'ora per l'oggetto Date specificato, in base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 305
Classi ActionScript
Parametri
hour:Number - Un numero; un numero intero compreso tra 0 (mezzanotte) e 23 (11 p.m.).
minute:Number [opzionale] - Un numero; un numero intero compreso tra 0 e 59. Se omettete questo parametro, il
campo dei minuti dell'oggetto Date specificato non viene modificato.
second:Number [opzionale] - Un numero; un numero intero compreso tra 0 e 59. Se omettete questo parametro, il
campo dei secondi dell'oggetto Date specificato non viene modificato.
millisecond:Number [opzionale] - Un numero; un numero intero compreso tra 0 e 999. Se omettete questo
parametro, il campo dei millisecondi dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date con la data corrente, utilizza Date.setUTCHours() per
modificare l'ora in 8:30 a.m., quindi la modifica nuovamente in 5:30:47 p.m.:
var my_date:Date = new Date();
my_date.setUTCHours(8,30);
trace(my_date.getUTCHours()); // output: 8
trace(my_date.getUTCMinutes()); // output: 30
my_date.setUTCHours(17,30,47);
trace(my_date.getUTCHours()); // output: 17
trace(my_date.getUTCMinutes()); // output: 30
trace(my_date.getUTCSeconds()); // output: 47
setUTCMilliseconds (metodo Date.setUTCMilliseconds)
public setUTCMilliseconds(millisecond:Number) : Number
Imposta i millisecondi per l'oggetto Date specificato, in base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
Disponibilità
Flash Lite 2.0
Parametri
millisecond:Number - Un numero intero compreso tra 0 e 999.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come data le 8:30 a.m. del 15 maggio 2004
con il valore dei millisecondi impostato su 250, quindi utilizza Date.setUTCMilliseconds() per modificare il valore
dei millisecondi con 575:
var my_date:Date = new Date(2004,4,15,8,30,0,250);
trace(my_date.getUTCMilliseconds()); // output: 250
my_date.setUTCMilliseconds(575);
trace(my_date.getUTCMilliseconds()); // output: 575
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 306
Classi ActionScript
setUTCMinutes (metodo Date.setUTCMinutes)
public setUTCMinutes(minute:Number, [second:Number], [millisecond:Number]) : Number
Imposta i minuti per l'oggetto Date specificato, in base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
Disponibilità
Flash Lite 2.0
Parametri
minute:Number - Un numero intero compreso tra 0 e 59.
second:Number [opzionale] - Un numero intero compreso tra 0 e 59. Se omettete questo parametro, il campo dei
secondi dell'oggetto Date specificato non viene modificato.
millisecond:Number [opzionale] - Un numero intero compreso tra 0 e 999. Se omettete questo parametro, il campo
dei millisecondi dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 08:00 a.m. del 15 maggio
2004, e utilizza Date.setUTCMinutes() per trasformare l'ora in 08:30 a.m.:
var my_date:Date = new Date(2004,4,15,8,0);
trace(my_date.getUTCMinutes()); // output: 0
my_date.setUTCMinutes(30);
trace(my_date.getUTCMinutes()); // output: 30
setUTCMonth (metodo Date.setUTCMonth)
public setUTCMonth(month:Number, [date:Number]) : Number
Imposta il mese, e facoltativamente il giorno, per l'oggetto Date specificato, in base all'ora universale, e restituisce il
nuovo valore, espresso in millisecondi. Se si chiama questo metodo, gli altri campi dell'oggetto Date non vengono
modificati ma è possibile che Date.getUTCDay() e Date.getDay() riportino un nuovo valore se il giorno della
settimana cambia come conseguenza del fatto che sia stato specificato un valore per il parametro date.
Disponibilità
Flash Lite 2.0
Parametri
month:Number - Un numero intero da 0 (gennaio) a 11 (dicembre).
date:Number [opzionale] - Un numero intero compreso tra 1 e 31. Se omettete questo parametro, il campo della data
dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 307
Classi ActionScript
Esempio
L'esempio seguente crea un nuovo oggetto Date, impostando come data il 15 maggio 2004, e utilizza
Date.setMonth() per trasformare la data in 15 giugno 2004:
var today_date:Date = new Date(2004,4,15);
trace(today_date.getUTCMonth()); // output: 4
today_date.setUTCMonth(5);
trace(today_date.getUTCMonth()); // output: 5
Vedete anche
getUTCDay (metodo Date.getUTCDay), getDay (metodo Date.getDay)
setUTCSeconds (metodo Date.setUTCSeconds)
public setUTCSeconds(second:Number, [millisecond:Number]) : Number
Imposta i secondi per l'oggetto Date specificato, in base all'ora universale, e restituisce il nuovo valore, espresso in
millisecondi.
Disponibilità
Flash Lite 2.0
Parametri
second:Number - Un numero intero compreso tra 0 e 59.
millisecond:Number [opzionale] - Un numero intero compreso tra 0 e 999. Se omettete questo parametro, il campo
dei millisecondi dell'oggetto Date specificato non viene modificato.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea inizialmente un nuovo oggetto Date, impostando come ora e data le 08:00:00 a.m. del 15
maggio 2004, e utilizza Date.setSeconds() per trasformare l'ora in 08:30:45 a.m.:
var my_date:Date = new Date(2004,4,15,8,0,0);
trace(my_date.getUTCSeconds()); // output: 0
my_date.setUTCSeconds(45);
trace(my_date.getUTCSeconds()); // output: 45
setYear (metodo Date.setYear)
public setYear(year:Number) : Number
Imposta l'anno per l'oggetto Date specificato, in base all'ora locale, e restituisce il nuovo valore, espresso in
millisecondi. La data e l'ora locali vengono determinate in base al sistema operativo su cui il player Flash Lite è in
esecuzione.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 308
Classi ActionScript
Parametri
year:Number - Un numero che rappresenta l'anno. Se year è un numero intero compreso tra 0 e 99, setYear imposta
l'anno come 1900 + year; in caso contrario, l'anno è il valore del parametro year.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date con la data impostata sul 25 maggio 2004, utilizza setYear() per
modificare l'anno in 1999, quindi modifica l'anno in 2003:
var my_date:Date = new Date(2004,4,25);
trace(my_date.getYear()); // output: 104
trace(my_date.getFullYear()); // output: 2004
my_date.setYear(99);
trace(my_date.getYear()); // output: 99
trace(my_date.getFullYear()); // output: 1999
my_date.setYear(2003);
trace(my_date.getYear()); // output: 103
trace(my_date.getFullYear()); // output: 2003
toString (metodo Date.toString)
public toString() : String
Restituisce un valore di tipo stringa per l'oggetto Date specificato in formato leggibile.
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa.
Esempio
L'esempio seguente restituisce le informazioni presenti nell'oggetto Date di nome dateOfBirth_date sotto forma di
stringa. L'output dalle istruzioni trace sono espressi in ora locale e variano di conseguenza. Per l'ora legale del Pacifico
l'output precede di sette ore l'ora universale: Mon Aug 12 18:15:00 GMT-0700 1974.
var dateOfBirth_date:Date = new Date(74, 7, 12, 18, 15);
trace (dateOfBirth_date);
trace (dateOfBirth_date.toString());
UTC (metodo Date.UTC)
public static UTC(year:Number, month:Number, [date:Number], [hour:Number], [minute:Number],
[second:Number], [millisecond:Number]) : Number
Restituisce il numero di millisecondi trascorsi tra la mezzanotte del 1 gennaio 1970 (ora universale) e il tempo
specificato nei parametri. Si tratta di un metodo statico che viene richiamato attraverso la funzione di costruzione
dell'oggetto Date e non attraverso un oggetto Date specifico. Questo metodo consente di creare un oggetto Date che
presuppone l'ora universale, mentre la funzione di costruzione di Date presuppone l'ora locale.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 309
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
year:Number - Un numero intero a quattro cifre che rappresenta l'anno (ad esempio, 2000).
month:Number - Un numero intero da 0 (gennaio) a 11 (dicembre).
date:Number [opzionale] - Un numero intero compreso tra 1 e 31.
hour:Number [opzionale] - Un numero intero compreso tra 0 (mezzanotte) e 23 (11 p.m.).
minute:Number [opzionale] - Un numero intero compreso tra 0 e 59.
second:Number [opzionale] - Un numero intero compreso tra 0 e 59.
millisecond:Number [opzionale] - Un numero intero compreso tra 0 e 999.
Restituisce
Number - Un numero intero.
Esempio
L'esempio seguente crea un nuovo oggetto Date di nome maryBirthday_date definito nell'ora universale. Si tratta
della variazione in base all'ora universale dell'esempio utilizzato per il metodo della funzione di costruzione new Date.
L'output è in ora locale e varia di conseguenza. Per l'ora legale del Pacifico l'output precede di sette ore l'ora universale.
Sun Aug 11 17:00:00 GMT-0700 1974.
var maryBirthday_date:Date = new Date(Date.UTC(1974, 7, 12));
trace(maryBirthday_date);
valueOf (metodo Date.valueOf)
public valueOf() : Number
Restituisce il numero di millisecondi trascorsi a partire dalla mezzanotte del 1 gennaio 1970 (ora universale) per
l'oggetto Date specificato.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Il numero di millisecondi.
Error
Object
|
+-Error
public class Error
extends Object
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 310
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Contiene informazioni su un errore che si è verificato in uno script. È possibile creare un oggetto Error mediante la
funzione di costruzione Error. Di solito, un nuovo oggetto Error viene generato (throw) dall'interno di un blocco di
codice try, che viene successivamente rilevato da un blocco di codice catch o finally.
È anche possibile creare una sottoclasse della classe Error e generare delle istanze di tale sottoclasse.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
message:String
Contiene il messaggio associato all'oggetto Error.
name:String
Contiene il nome dell'oggetto Error.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Error([message:String
Crea un nuovo oggetto Error.
])
Riepilogo dei metodi
Modificatori
Firma
Descrizione
toString() : String
Restituisce la stringa "Error" per impostazione predefinita
oppure il valore contenuto in Error.message, se definito.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Error (funzione di costruzione)
public Error([message:String])
Crea un nuovo oggetto Error. Se si passa un parametro message, il suo valore viene assegnato alla proprietà
Error.message.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 311
Classi ActionScript
Parametri
message:String [opzionale] - Una stringa associata all'oggetto Error.
Esempio
Nell'esempio seguente, una funzione genera un errore (con un messaggio specificato) se le due stringhe che le vengono
passate non sono identiche:
function compareStrings(str1_str:String, str2_str:String):Void {
if (str1_str != str2_str) {
throw new Error("Strings do not match.");
}
}
try {
compareStrings("Dog", "dog");
// output: Strings do not match.
} catch (e_err:Error) {
trace(e_err.toString());
}
Vedete anche
Istruzione throw, Istruzione try..catch..finally
message (proprietà Error.message)
public message : String
Il messaggio associato all'oggetto Error. Per impostazione predefinita, il valore di questa proprietà è "Error". È
possibile specificare una proprietà message quando si crea un oggetto Error passando la stringa di errore alla funzione
di costruzione Error.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione genera un messaggio specificato a seconda dei parametri immessi in theNum. Se
è possibile dividere due numeri, vengono visualizzati SUCCESS e il numero. Gli errori specifici vengono visualizzati se
si tenta di dividere per 0 o se si immette solo un parametro:
function divideNum(num1:Number, num2:Number):Number {
if (isNaN(num1) || isNaN(num2)) {
throw new Error("divideNum function requires two numeric parameters.");
} else if (num2 == 0) {
throw new Error("cannot divide by zero.");
}
return num1/num2;
}
try {
var theNum:Number = divideNum(1, 0);
trace("SUCCESS! "+theNum);
} catch (e_err:Error) {
trace("ERROR! "+e_err.message);
trace("\t"+e_err.name);
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 312
Classi ActionScript
Se si prova questo codice ActionScript senza alcuna modifica ai numeri che si sta dividendo, un errore viene
visualizzato nel pannello Output poiché si sta tentando di dividere per 0.
Vedete anche
Istruzione throw, Istruzione try..catch..finally
name (proprietà Error.name)
public name : String
Contiene il nome dell'oggetto Error. Per impostazione predefinita, il valore di questa proprietà è "Error".
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, una funzione genera un errore specificato a seconda dei due numeri che si tenta di dividere.
Aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
function divideNumber(numerator:Number, denominator:Number):Number {
if (isNaN(numerator) || isNaN(denominator)) {
throw new Error("divideNumber() function requires two numeric parameters.");
} else if (denominator == 0) {
throw new DivideByZeroError();
}
return numerator/denominator;
}
try {
var theNum:Number = divideNumber(1, 0);
trace("SUCCESS! "+theNum);
// output: DivideByZeroError -> Unable to divide by zero.
} catch (e_err:DivideByZeroError) {
// divide by zero error occurred
trace(e_err.name+" -> "+e_err.toString());
} catch (e_err:Error) {
// generic error occurred
trace(e_err.name+" -> "+e_err.toString());
}
Aggiungere il codice seguente a un file .as denominato DivideByZeroError.as e salvare il file della classe nella stessa
directory del documento fla.
class DivideByZeroError extends Error {
var name:String = "DivideByZeroError";
var message:String = "Unable to divide by zero.";
}
Vedete anche
Istruzione throw, Istruzione try..catch..finally
toString (metodo Error.toString)
public toString() : String
Restituisce la stringa "Error" oppure il valore contenuto in Error.message, se definito.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 313
Classi ActionScript
Disponibilità
Flash Lite 2.0
Restituisce
String - Una stringa.
Esempio
Nell'esempio seguente, una funzione genera un errore (con un messaggio specificato) se le due stringhe che le vengono
passate non sono identiche:
function compareStrings(str1_str:String, str2_str:String):Void {
if (str1_str != str2_str) {
throw new Error("Strings do not match.");
}
}
try {
compareStrings("Dog", "dog");
// output: Strings do not match.
} catch (e_err:Error) {
trace(e_err.toString());
}
Vedete anche
message (proprietà Error.message), Istruzione throw, Istruzione try..catch..finally
ExtendedKey
Object
|
+-ExtendedKey
public class ExtendedKey
extends Object
Fornisce codici tasto estesi che possono essere restituiti dal metodo Key.getCode().
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea un listener che viene chiamato quando viene premuto un tasto. Utilizza il metodo
Key.getCode() per ottenere il codice tasto del tasto che era stato premuto:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 314
Ultimo aggiornamento 4/5/2010
Classi ActionScript
var myListener = new Object();
myListener.onKeyDown = function() {
var code = Key.getCode();
trace(code + " down");
}
myListener.onKeyUp = function() {
trace("onKeyUp called");
}
Key.addListener(myListener);
Vedete anche
getCode (metodo Key.getCode)
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
SOFT1:String
Il valore del codice tasto per il tasto virtuale SOFT1.
static
SOFT3:String
Il valore del codice tasto per il tasto virtuale SOFT3.
static
SOFT4:String
Il valore del codice tasto per il tasto virtuale SOFT4.
static
SOFT5:String
Il valore del codice tasto per il tasto virtuale SOFT5.
static
SOFT6:String
Il valore del codice tasto per il tasto virtuale SOFT6.
static
SOFT7:String
Il valore del codice tasto per il tasto virtuale SOFT7.
static
SOFT8:String
Il valore del codice tasto per il tasto virtuale SOFT8.
static
SOFT9:String
Il valore del codice tasto per il tasto virtuale SOFT9.
static
SOFT10:String
Il valore del codice tasto per il tasto virtuale SOFT10.
static
SOFT11:String
Il valore del codice tasto per il tasto virtuale SOFT11.
static
SOFT12:String
Il valore del codice tasto per il tasto virtuale SOFT12.
static
SOFT2:String
Il valore del codice tasto per il tasto virtuale SOFT2.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo dei metodi
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 315
Classi ActionScript
SOFT1 (proprietà ExtendedKey.SOFT1)
public static SOFT1 : String
Il valore del codice tasto per il tasto virtuale SOFT1. Il codice tasto SOFT1 corrisponde sempre al tasto virtuale sinistro;
SOFT2 sempre al tasto virtuale destro.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea un listener che gestisce i tasti virtuali sinistro e destro:
var myListener:Object = new Object();
myListener.onKeyDown = function () {
var keyCode = Key.getCode();
switch (keyCode) {
case ExtendedKey.SOFT1:
// Handle left soft key.
break;
case ExtendedKey.SOFT2:
// Handle right soft key
break;
}
}
Key.addListener(myListener);
SOFT2 (proprietà ExtendedKey.SOFT2)
public static SOFT2 : String
Il valore del codice tasto per il tasto virtuale SOFT2. Il codice tasto SOFT2 corrisponde sempre al tasto virtuale destro;
SOFT1 sempre al tasto virtuale sinistro.
Disponibilità
Flash Lite 2.0
Vedete anche
SOFT1 (proprietà ExtendedKey.SOFT1)
SOFT3 (proprietà ExtendedKey.SOFT3)
public static SOFT3 : String
Il valore del codice tasto per il tasto virtuale SOFT3.
Disponibilità
Flash Lite 2.0
SOFT4 (proprietà ExtendedKey.SOFT4)
public static SOFT4 : String
Il valore del codice tasto per il tasto virtuale SOFT4.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 316
Classi ActionScript
Disponibilità
Flash Lite 2.0
SOFT5 (proprietà ExtendedKey.SOFT5)
public static SOFT5 : String
Il valore del codice tasto per il tasto virtuale SOFT5.
Disponibilità
Flash Lite 2.0
SOFT6 (proprietà ExtendedKey.SOFT6)
public static SOFT6 : String
Il valore del codice tasto per il tasto virtuale SOFT6.
Disponibilità
Flash Lite 2.0
SOFT7 (proprietà ExtendedKey.SOFT7)
public static SOFT7 : String
Il valore del codice tasto per il tasto virtuale SOFT7.
Disponibilità
Flash Lite 2.0
SOFT8 (proprietà ExtendedKey.SOFT8)
public static SOFT8 : String
Il valore del codice tasto per il tasto virtuale SOFT8.
Disponibilità
Flash Lite 2.0
SOFT9 (proprietà ExtendedKey.SOFT9)
public static SOFT9 : String
Il valore del codice tasto per il tasto virtuale SOFT9.
SOFT10 (proprietà ExtendedKey.SOFT10)
public static SOFT10 : String
Il valore del codice tasto per il tasto virtuale SOFT10.
Disponibilità
Flash Lite 2.0
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 317
Ultimo aggiornamento 4/5/2010
Classi ActionScript
SOFT11 (proprietà ExtendedKey.SOFT11)
public static SOFT11 : String
Il valore del codice tasto per il tasto virtuale SOFT11.
Disponibilità
Flash Lite 2.0
SOFT12 (proprietà ExtendedKey.SOFT12)
public static SOFT12 : String
Il valore del codice tasto per il tasto virtuale SOFT12.
Disponibilità
Flash Lite 2.0
Function
Object
|
+-Function
public dynamic class Function
extends Object
Sia le funzioni ActionScript definite dall'utente che quelle incorporate sono rappresentate da oggetti Function, che a
loro volta sono istanze della classe Function.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo dei metodi
Modificatori
Firma
Descrizione
apply(thisObject:Obje Specifica il valore di thisObject da utilizzare all'interno delle
ct, [argArray:Array]) funzioni chiamate da ActionScript.
call(thisObject:Object
,
[parameter1:Object])
Metodi ereditati dalla classe Object
Richiama la funzione rappresentata da un oggetto Function.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 318
Classi ActionScript
addProperty (metodo Object.addProperty), hasOwnProperty (metodo
Object.hasOwnProperty)isPropertyEnumerable (metodo
Object.isPropertyEnumerable)isPrototypeOf (metodo Object.isPrototypeOf)registerClass
(metodo Object.registerClass), toString (metodo Object.toString)unwatch (metodo
Object.unwatch), valueOf (metodo Object.valueOf)watch (metodo Object.watch)
apply (metodo Function.apply)
public apply(thisObject:Object, [argArray:Array])
Specifica il valore di thisObject da utilizzare all'interno delle funzioni chiamate da ActionScript. Questo metodo
specifica inoltre i parametri da passare a ogni funzione chiamata. Dal momento che apply() è un metodo della classe
Function, è anche un metodo di ogni oggetto Function in ActionScript.
I parametri sono specificati sotto forma di oggetto Array, a differenza di Function.call() in cui sono specificati sotto
forma di elenco delimitato da virgole. Ciò risulta spesso utile quando non si conosce il numero dei parametri da
passare finché lo script non viene effettivamente eseguito.
Restituisce il valore che la funzione chiamata specifica come valore restituito.
Disponibilità
Flash Lite 2.0
Parametri
thisObject:Object - L'oggetto a cui viene applicato myFunction.
argArray:Array [opzionale] - Un array i cui elementi vengono passati come parametri a myFunction.
Restituisce
Qualunque valore specificato dalla funzione chiamata.
Esempio
Le chiamate alla funzione seguenti sono equivalenti:
Math.atan2(1, 0)
Math.atan2.apply(null, [1, 0])
L'esempio seguente mostra il modo in cui apply() passa un array di parametri:
function theFunction() {
trace(arguments);
}
// create a new array to pass as a parameter to apply()
var firstArray:Array = new Array(1,2,3);
theFunction.apply(null,firstArray);
// outputs: 1,2,3
// create a second array to pass as a parameter to apply()
var secondArray:Array = new Array("a", "b", "c");
theFunction.apply(null,secondArray);
// outputs a,b,c
L'esempio seguente mostra il modo in cui apply() passa un array di parametri e ne specifica il valore:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 319
Classi ActionScript
// define a function
function theFunction() {
trace("this == myObj? " + (this == myObj));
trace("arguments: " + arguments);
}
// instantiate an object
var myObj:Object = new Object();
// create arrays to pass as a parameter to apply()
var firstArray:Array = new Array(1,2,3);
var secondArray:Array = new Array("a", "b", "c");
// use apply() to set the value of this to be myObj and send firstArray
theFunction.apply(myObj,firstArray);
// output:
// this == myObj? true
// arguments: 1,2,3
// use apply() to set the value of this to be myObj and send secondArray
theFunction.apply(myObj,secondArray);
// output:
// this == myObj? true
// arguments: a,b,c
Vedete anche
call (metodo Function.call)
call (metodo Function.call)
public call(thisObject:Object, [parameter1:Object])
Richiama la funzione rappresentata da un oggetto Function. Ogni funzione di ActionScript è rappresentata da un
oggetto Function, pertanto tutte le funzioni supportano questo metodo.
Nella maggior parte dei casi, è possibile utilizzare l'operatore di chiamata della funzione (()) anziché questo metodo.
L'operatore di chiamata della funzione crea un codice conciso e leggibile. Questo metodo risulta utile soprattutto
quando il parametro thisObject della richiamata della funzione deve essere esplicitamente controllato. In genere, se
una funzione viene richiamata come metodo di un oggetto all'interno del corpo della funzione, thisObject viene
impostato su myObject, come illustrato di seguito:
myObject.myMethod(1, 2, 3);
In alcuni casi, può essere necessario impostare il parametro thisObject in modo che faccia riferimento a un'altra
posizione; ad esempio, per richiamare una funzione come metodo di un oggetto quando la funzione non è
effettivamente memorizzata in questo modo.
myObject.myMethod.call(myOtherObject, 1, 2, 3);
È possibile passare il valore null per il parametro thisObject per richiamare una funzione come funzione regolare e
non come metodo di un oggetto. Ad esempio, le seguenti invocazioni di funzione sono equivalenti:
Math.sin(Math.PI / 4)
Math.sin.call(null, Math.PI / 4)
Restituisce il valore che la funzione chiamata specifica come valore restituito.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 320
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
thisObject:Object - Un oggetto che specifica il valore di thisObject all'interno del corpo della funzione.
parameter1:Object [opzionale] - Un parametro da passare a myFunction. È possibile specificare zero o più parametri.
Esempio
L'esempio seguente utilizza Function.call() per fare in modo che una funzione si comporti come metodo di un
altro oggetto, senza memorizzare la funzione nell'oggetto:
function myObject() {
}
function myMethod(obj) {
trace("this == obj? " + (this == obj));
}
var obj:Object = new myObject();
myMethod.call(obj, obj);
Viene visualizzata l'istruzione trace:
this == obj? true
Vedete anche
apply (metodo Function.apply)
Key
Object
|
+-Key
public class Key
extends Object
La classe Key è una classe di primo livello di cui è possibile utilizzare metodi e proprietà senza ricorrere a una funzione
di costruzione. Per creare le interfacce, utilizzare i metodi della classe Key. Le proprietà delle classi Key sono costanti
che rappresentano i tasti utilizzati più frequentemente per il controllo delle applicazioni, quali i tasti freccia, Pg su e Pg
giù. Per determinare quali sono i tasti supportati da un dispositivo, utilizzare le proprietà System.capabilities.
Non tutti i dispositivi e i tipi di contenuto Flash Lite supportano tutti i tasti. I dispositivi che supportano la navigazione
in due direzioni, ad esempio, non supportano i tasti di navigazione sinistro e destro. Non tutti i dispositivi inoltre
hanno accesso ai tasti virtuali del dispositivo. Per ulteriori informazioni, vedete Sviluppo di applicazioni Flash Lite 2.x
e 3.x.
Disponibilità
Flash Lite 2.0
Vedete anche
ExtendedKey
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 321
Ultimo aggiornamento 4/5/2010
Classi ActionScript
“has4WayKeyAS (proprietà capabilities.has4WayKeyAS)” a pagina 251
“hasMappableSoftKeys (proprietà capabilities.hasMappableSoftKeys)” a pagina 254
“hasQWERTYKeyboard (proprietà capabilities.hasQWERTYKeyboard)” a pagina 257
“softKeyCount (proprietà capabilities.softKeyCount)” a pagina 264
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
BACKSPACE:Number
Il valore del codice tasto per il tasto Backspace (8).
static
CAPSLOCK:Number
Il valore del codice tasto per il tasto Bloc Maiusc (20).
static
CONTROL:Number
Il valore del codice tasto per il tasto Ctrl (17).
static
DELETEKEY:Number
Il valore del codice tasto per il tasto Canc (46).
static
DOWN:Number
Il valore del codice tasto per il tasto freccia giù (40).
static
END:Number
Il valore del codice tasto per il tasto Fine (35).
static
ENTER:Number
Il valore del codice tasto per il tasto Invio (13).
static
ESCAPE:Number
Il valore del codice tasto per il tasto Esc (27).
static
HOME:Number
Il valore del codice tasto per il tasto Home (36).
static
INSERT:Number
Il valore del codice tasto per il tasto Ins (45).
static
LEFT:Number
Il valore del codice tasto per il tasto freccia sinistra (37).
static
_listeners:Array [sola
lettura]
Un elenco dei riferimenti a tutti gli oggetti listener registrati
con l'oggetto Key.
static
PGDN:Number
Il valore del codice tasto per il tasto Pg giù (34).
static
PGUP:Number
Il valore del codice tasto per il tasto Pg su (33).
static
RIGHT:Number
Il valore del codice tasto per il tasto freccia destra (39).
static
SHIFT:Number
Il valore del codice tasto per il tasto Maiusc (16).
static
SPACE:Number
Il valore del codice tasto per la barra spaziatrice (32).
static
TAB:Number
Il valore del codice tasto per il tasto Tab (9).
static
UP:Number
Il valore del codice tasto per il tasto freccia su (38).
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo degli eventi
Evento
Descrizione
onKeyDown =
Notificato quando viene premuto un tasto.
function() {}
onKeyUp =
function() {}
Notificato quando viene rilasciato un tasto.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 322
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo dei metodi
Modificatori
Firma
Descrizione
static
addListener(listener:
Object) : Void
Registra un oggetto per ricevere la notifica di onKeyDown e
onKeyUp.
static
getAscii() : Number
Restituisce il codice ASCII dell'ultimo tasto premuto o
rilasciato.
static
getCode() : Number
Restituisce il valore del codice tasto dell'ultimo tasto premuto
o rilasciato.
static
isDown(code:Number)
: Boolean
Restituisce true se viene premuto il tasto specificato in code;
false in caso contrario.
static
removeListener(listene Rimuove un oggetto registrato in precedenza con
r:Object) : Boolean
Key.addListener().
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf)registerClass (metodo Object.registerClass), toString (metodo
Object.toString)unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
addListener (metodo Key.addListener)
public static addListener(listener:Object) : Void
Registra un oggetto per ricevere le notifiche di onKeyDown e onKeyUp. Quando un tasto viene premuto o rilasciato, a
prescindere dal fatto che sia stato attivato, per tutti gli oggetti "in ascolto" registrati con addListener() viene
richiamato il metodo onKeyDown oppure onKeyUp. Più oggetti possono "ascoltare" le notifiche della tastiera.
Disponibilità
Flash Lite 2.0
Parametri
listener:Object - Un oggetto con metodi onKeyDown and onKeyUp.
Esempio
L'esempio seguente crea un nuovo oggetto listener e definisce le funzioni per onKeyDown e onKeyUp. L'ultima riga
chiama addListener() per registrare il listener con l'oggetto Key in modo che possa ricevere le notifiche dagli eventi
key down (tasto premuto) e key up (tasto rilasciato).
var myListener:Object = new Object();
myListener.onKeyDown = function () {
trace ("You pressed a key.");
}
myListener.onKeyUp = function () {
trace ("You released a key.");
}
Key.addListener(myListener);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 323
Classi ActionScript
Vedete anche
getCode (metodo Key.getCode), isDown (metodo Key.isDown), onKeyDown (listener di eventi
Key.onKeyDown), onKeyUp (listener di eventi Key.onKeyUp), removeListener (metodo
Key.removeListener)
BACKSPACE (proprietà Key.BACKSPACE)
public static BACKSPACE : Number
Il valore del codice tasto per il tasto Backspace (8).
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea un nuovo oggetto listener e definisce una funzione per onKeyDown. L'ultima riga utilizza
addListener() per registrare il listener con l'oggetto Key in modo che possa ricevere le notifiche dagli eventi key
down (tasto premuto).
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
if (Key.isDown(Key.BACKSPACE)) {
trace("you pressed the Backspace key.");
} else {
trace("you DIDN'T press the Backspace key.");
}
};
Key.addListener(keyListener);
CAPSLOCK (proprietà Key.CAPSLOCK)
public static CAPSLOCK : Number
Il valore del codice tasto per il tasto Bloc Maiusc (20).
Disponibilità
Flash Lite 2.0
CONTROL (proprietà Key.CONTROL)
public static CONTROL : Number
Il valore del codice tasto per il tasto Ctrl (17).
Disponibilità
Flash Lite 2.0
DELETEKEY (proprietà Key.DELETEKEY)
public static DELETEKEY : Number
Il valore del codice tasto per il tasto Canc (46).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 324
Classi ActionScript
Disponibilità
Flash Lite 2.0
DOWN (proprietà Key.DOWN)
public static DOWN : Number
Il valore del codice tasto per il tasto freccia giù (40).
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, un clip filmato di nome car_mc viene spostato di una distanza costante (10) quando si
premono i tasti freccia. Inserire un clip filmato sullo stage e assegnare il nome di istanza car_mc.
var DISTANCE:Number = 10;
var keyListener_obj:Object = new Object();
keyListener_obj.onKeyDown = function() {
switch (Key.getCode()) {
case Key.LEFT :
car_mc._x -= DISTANCE;
break;
case Key.UP :
car_mc._y -= DISTANCE;
break;
case Key.RIGHT :
car_mc._x += DISTANCE;
break;
case Key.DOWN :
car_mc._y += DISTANCE;
break;
}
};
Key.addListener(keyListener_obj);
END (proprietà Key.END)
public static END : Number
Il valore del codice tasto per il tasto Fine (35).
Disponibilità
Flash Lite 2.0
ENTER (proprietà Key.ENTER)
public static ENTER : Number
Il valore del codice tasto per il tasto Invio (13).
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 325
Classi ActionScript
Esempio
Nell'esempio seguente, un clip filmato viene spostato quando si premono i tasti freccia. Il clip filmato si arresta quando
si preme il tasto di selezionare e si elimina l'evento onEnterFrame. Inserire un clip filmato sullo stage e assegnare il
nome di istanza car_mc.
var DISTANCE:Number = 5;
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
switch (Key.getCode()) {
case Key.LEFT :
car_mc.onEnterFrame = function() {
this._x -= DISTANCE;
};
break;
case Key.UP :
car_mc.onEnterFrame = function() {
this._y -= DISTANCE;
};
break;
case Key.RIGHT :
car_mc.onEnterFrame = function() {
this._x += DISTANCE;
};
break;
case Key.DOWN :
car_mc.onEnterFrame = function() {
this._y += DISTANCE;
};
break;
case Key.ENTER :
delete car_mc.onEnterFrame;
break;
}
};
Key.addListener(keyListener);
ESCAPE (proprietà Key.ESCAPE)
public static ESCAPE : Number
Il valore del codice tasto per il tasto Esc (27).
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente imposta un timer. Quando si preme il tasto di selezione, il pannello Output visualizza il tempo
impiegato per premere il tasto.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 326
Classi ActionScript
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
if (Key.isDown(Key.ENTER)) {
// get the current timer, convert the value
// to seconds and round it to two decimal places.
var timer:Number = Math.round(getTimer()/10)/100;
trace("You pressed the Select key after: "+getTimer()+"ms ("+timer+"s)");
}
};
Key.addListener(keyListener);
getAscii (metodo Key.getAscii)
public static getAscii() : Number
Restituisce il codice ASCII dell'ultimo tasto premuto o rilasciato. I valori ASCII restituiti sono i valori della tastiera
inglese. Ad esempio, se si preme Maiusc+2 su una tastiera giapponese o americana, Key.getAscii() restituisce @.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Il valore ASCII dell'ultimo tasto premuto. Il metodo restituisce 0 se non è stato premuto o rilasciato alcun
tasto oppure se il valore ASCII non è accessibile per motivi di sicurezza.
Esempio
L'esempio seguente chiama il metodo getAscii() ogni volta che viene premuto un tasto. L'esempio crea un oggetto
listener di nome keyListener e definisce una funzione che risponde all'evento onKeyDown chiamando
Key.getAscii(). L'oggetto keyListener viene quindi registrato nell'oggetto Key, che trasmette il messaggio
onKeyDown ogni volta che viene premuto un tasto durante la riproduzione del file SWF.
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
trace("The ASCII code for the last key typed is: "+Key.getAscii());
};
Key.addListener(keyListener);
L'esempio seguente aggiunge una chiamata a Key.getAscii() per mostrare la differenza tra i due metodi
getAscii() e getCode(). La differenza principale con Key.getAscii() consiste nel fatto che Key.getCode() non
fa distinzione tra lettere maiuscole e minuscole.
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
trace("For the last key typed:");
trace("\tThe Key code is: "+Key.getCode());
trace("\tThe ASCII value is: "+Key.getAscii());
trace("");
};
Key.addListener(keyListener);
getCode (metodo Key.getCode)
public static getCode() : Number
Restituisce il valore del codice tasto dell'ultimo tasto premuto o rilasciato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 327
Classi ActionScript
l'implementazione Flash Lite di questo metodo restituisce una stringa o un numero, a seconda del codice del tasto
passato dalla piattaforma. Gli unici codici tasto validi sono quelli standard accettati da questa classe, nonché i codici
tasto speciali elencati come proprietà della classe ExtendedKey.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Il codice tasto dell'ultimo tasto premuto. Il metodo restituisce 0 se non è stato premuto o rilasciato alcun
tasto oppure se il codice del tasto non è accessibile per motivi di sicurezza.
Esempio
L'esempio seguente chiama il metodo getCode() ogni volta che viene premuto un tasto. L'esempio crea un oggetto
listener di nome keyListener e definisce una funzione che risponde all'evento onKeyDown chiamando
Key.getCode(). L'oggetto keyListener viene registrato nell'oggetto Key, che trasmette il messaggio onKeyDown ogni
volta che viene premuto un tasto durante la riproduzione del file SWF.
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
// Compare return value of getCode() to constant
if (Key.getCode() == Key.ENTER) {
trace ("Virtual key code: "+Key.getCode()+" (ENTER key)");
}
else {
trace("Virtual key code: "+Key.getCode());
}
};
Key.addListener(keyListener);
L'esempio seguente aggiunge una chiamata a Key.getAscii() per mostrare la differenza tra i due metodi. La
differenza principale con Key.getAscii() consiste nel fatto che Key.getCode() non fa distinzione tra lettere
maiuscole e minuscole.
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
trace("For the last key typed:");
trace("\tThe Key code is: "+Key.getCode());
trace("\tThe ASCII value is: "+Key.getAscii());
trace("");
};
Key.addListener(keyListener);
Disponibilità
Flash Lite 2.0
Vedete anche
getAscii (metodo Key.getAscii)
HOME (proprietà Key.HOME)
public static HOME : Number
Il valore del codice tasto per il tasto Home (36).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 328
Classi ActionScript
Disponibilità
Flash Lite 2.0
INSERT (proprietà Key.INSERT)
public static INSERT : Number
Il valore del codice tasto per il tasto Ins (45).
Disponibilità
Flash Lite 2.0
isDown (metodo Key.isDown)
public static isDown(code:Number) : Boolean
Restituisce true se viene premuto il tasto specificato in code; false in caso contrario.
Disponibilità
Flash Lite 2.0
Parametri
code:Number - Il valore del codice tasto assegnato a un tasto specifico oppure una proprietà della classe Key associata
a un tasto specifico.
Restituisce
Boolean - Restituisce il valore true se viene premuto il tasto specificato in code; false in caso contrario.
Esempio
Lo script seguente consente all'utente di utilizzare i tasti freccia sinistra e destra per controllare la posizione di un clip
filmato sullo stage denominato car_mc:
car_mc.onEnterFrame = function() {
if (Key.isDown(Key.RIGHT)) {
this._x += 10;
} else if (Key.isDown(Key.LEFT)) {
this._x -= 10;
}
};
LEFT (proprietà Key.LEFT)
public static LEFT : Number
Il valore del codice tasto per il tasto freccia sinistra (37).
Disponibilità
Flash Lite 2.0
_listeners (proprietà Key._listeners)
public static _listeners : Array [read-only]
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 329
Classi ActionScript
Un elenco dei riferimenti a tutti gli oggetti listener registrati con l'oggetto Key. Questa proprietà è destinata all'uso
interno, tuttavia può risultare utile per determinare il numero di listener attualmente registrati con l'oggetto key. Gli
oggetti vengono aggiunti e rimossi da questo array per mezzo di chiamate ai metodi addListener() e removelistener().
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente mostra come utilizzare la proprietà length per determinare il numero di oggetti listener
attualmente registrati nell'oggetto Key.
var myListener:Object = new Object();
myListener.onKeyDown = function () {
trace ("You pressed a key.");
}
Key.addListener(myListener);
trace(Key._listeners.length); // Output: 1
onKeyDown (listener di eventi Key.onKeyDown)
onKeyDown = function() {}
Notificato quando viene premuto un tasto. Per utilizzare onKeyDown è necessario creare un oggetto listener. Quindi è
possibile definire una funzione per onKeyDown e utilizzare addListener() per registrare il listener con l'oggetto Key,
come illustrato nell'esempio seguente:
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
trace("DOWN -> Code: "+Key.getCode()+"\tACSII: "+Key.getAscii()+"\tKey:
"+chr(Key.getAscii()));
};
keyListener.onKeyUp = function() {
trace("UP -> Code: "+Key.getCode()+"\tACSII: "+Key.getAscii()+"\tKey:
"+chr(Key.getAscii()));
};
Key.addListener(keyListener);
I listener consentono a parti di codice diverse di cooperare, dal momento che più listener possono ricevere notifiche
relative allo stesso evento.
Disponibilità
Flash Lite 2.0
Vedete anche
addListener (metodo Key.addListener)
onKeyUp (listener di eventi Key.onKeyUp)
onKeyUp = function() {}
Notificato quando viene rilasciato un tasto. Per utilizzare onKeyUp è necessario creare un oggetto listener. Quindi è
possibile definire una funzione per onKeyUp e utilizzare addListener() per registrare il listener con l'oggetto Key,
come illustrato nell'esempio seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 330
Classi ActionScript
var keyListener:Object = new Object();
keyListener.onKeyDown = function() {
trace("DOWN -> Code: "+Key.getCode()+"\tACSII: "+Key.getAscii()+"\tKey:
"+chr(Key.getAscii()));
};
keyListener.onKeyUp = function() {
trace("UP -> Code: "+Key.getCode()+"\tACSII: "+Key.getAscii()+"\tKey:
"+chr(Key.getAscii()));
};
Key.addListener(keyListener);
I listener consentono a parti di codice diverse di cooperare, dal momento che più listener possono ricevere notifiche
relative allo stesso evento.
Disponibilità
Flash Lite 2.0
Vedete anche
addListener (metodo Key.addListener)
PGDN (proprietà Key.PGDN)
public static PGDN : Number
Il valore del codice tasto per il tasto Pg giù (34).
Disponibilità
Flash Lite 2.0
PGUP (proprietà Key.PGUP)
public static PGUP : Number
Il valore del codice tasto per il tasto Pg su (33).
Disponibilità
Flash Lite 2.0
removeListener (metodo Key.removeListener)
public static removeListener(listener:Object) : Boolean
Rimuove un oggetto registrato in precedenza con Key.addListener().
Disponibilità
Flash Lite 2.0
Parametri
listener:Object - Un oggetto.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 331
Classi ActionScript
Restituisce
Boolean - Se listener è stato rimosso correttamente, il metodo restituisce true. Se listener non è stato rimosso
correttamente (ad esempio, se listener non faceva parte dell'elenco dei listener dell'oggetto Key), il metodo restituisce
false.
RIGHT (proprietà Key.RIGHT)
public static RIGHT : Number
Il valore del codice tasto per il tasto freccia destra (39).
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, un clip filmato di nome car_mc viene spostato quando si premono i tasti freccia.
var DISTANCE:Number = 10;
var keyListener_obj:Object = new Object();
keyListener_obj.onKeyDown = function() {
switch (Key.getCode()) {
case Key.LEFT :
car_mc._x -= DISTANCE;
break;
case Key.UP :
car_mc._y -= DISTANCE;
break;
case Key.RIGHT :
car_mc._x += DISTANCE;
break;
case Key.DOWN :
car_mc._y += DISTANCE;
break;
}
};
Key.addListener(keyListener_obj);
SHIFT (proprietà Key.SHIFT)
public static SHIFT : Number
Il valore del codice tasto per il tasto Maiusc (16).
Disponibilità
Flash Lite 2.0
SPACE (proprietà Key.SPACE)
public static SPACE : Number
Il valore del codice tasto per la barra spaziatrice (32).
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 332
Classi ActionScript
TAB (proprietà Key.TAB)
public static TAB : Number
Il valore del codice tasto per il tasto Tab (9).
Disponibilità
Flash Lite 2.0
UP (proprietà Key.UP)
public static UP : Number
Il valore del codice tasto per il tasto freccia su (38).
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, un clip filmato sullo stage di nome car_mc viene spostato di una distanza costante (10) quando
si premono i tasti freccia.
var DISTANCE:Number = 10;
var keyListener_obj:Object = new Object();
keyListener_obj.onKeyDown = function() {
switch (Key.getCode()) {
case Key.LEFT :
car_mc._x -= DISTANCE;
break;
case Key.UP :
car_mc._y -= DISTANCE;
break;
case Key.RIGHT :
car_mc._x += DISTANCE;
break;
case Key.DOWN :
car_mc._y += DISTANCE;
break;
}
};
Key.addListener(keyListener_obj);
LoadVars
Object
|
+-LoadVars
public dynamic class LoadVars
extends Object
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 333
Ultimo aggiornamento 4/5/2010
Classi ActionScript
La classe LoadVars rappresenta un'alternativa alla funzione loadVariables() quando si desidera trasferire le variabili
tramite HTTP tra Flash Lite e un server Web. Utilizzare la classe LoadVars per ottenere la verifica del corretto
caricamento dei dati e per monitorare l'avanzamento dello scaricamento.
La classe LoadVars consente di inviare tutte le variabili di un oggetto a un URL specificato e di caricare in un oggetto
tutte le variabili in corrispondenza di un URL specificato. Inoltre, consente di inviare delle variabili specifiche, anziché
tutte le variabili, per migliorare l'efficienza dell'applicazione. Utilizzare il gestore LoadVars.onLoad per garantire che
l'applicazione venga eseguita quando vengono caricati i dati, e non prima.
La classe LoadVars funziona in modo molto simile alla classe XML; utilizza i metodi load(), send() e sendAndLoad()
per comunicare con un server. La differenza principale tra le classi LoadVars e XML sta nel fatto che LoadVars
trasferisce coppie nome/valore di ActionScript anziché una struttura ad albero DOM (Document Object Model) XML
memorizzata nell'oggetto XML. La classe LoadVars segue le stesse restrizioni di sicurezza della classe XML.
Disponibilità
Flash Lite 2.0
Vedete anche
Funzione loadVariables, onLoad (gestore LoadVars.onLoad), hasXMLSocket (proprietà
capabilities.hasXMLSocket)
Riepilogo delle proprietà
Modificatori
Proprietà
contentType:String
Descrizione
Il tipo MIME che viene inviato al server quando chiamate
LoadVars.send() o LoadVars.sendAndLoad().
loaded:Boolean
Un valore booleano che indica se un'operazione load o
sendAndLoad è stata completata; non è definito per
impostazione predefinita.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà
Object._proto)prototype (proprietà Object.prototype), __resolve (proprietà
Object.__resolve)
Riepilogo degli eventi
Evento
Descrizione
onData =
function(src:String)
{}
Richiamato quando i dati sono stati completamente scaricati dal server o quando si
verifica un errore mentre i dati vengono scaricati da un server.
Richiamato quando un'operazione LoadVars.load() o
function(success:Bo LoadVars.sendAndLoad() è terminata.
olean) {}
onLoad =
Riepilogo delle funzioni di costruzione
Firma
Descrizione
LoadVars()
Crea un oggetto LoadVars.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 334
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo dei metodi
Modificatori
Firma
Descrizione
addRequestHeader(head
er:Object,
headerValue:String) :
Aggiunge o modifica intestazioni di richieste HTTP, ad esempio
Content-Type o SOAPAction, inviate con azioni POST.
Void
decode(queryString:S
tring) : Void
Converte la stringa variabile in proprietà dell'oggetto LoadVars
specificato.
getBytesLoaded() :
Number
Restituisce il numero di byte scaricati da LoadVars.load() o
LoadVars.sendAndLoad().
getBytesTotal() :
Number
Restituisce il numero di byte scaricati da LoadVars.load() o
LoadVars.sendAndLoad().
load(url:String) :
Boolean
Scarica le variabili dall'URL specificato, ne analizza i dati e
inserisce le variabili risultanti nell'oggetto LoadVars.
send(url:String,
target:String,
[method:String]) :
Boolean
Invia le variabili dell'oggetto LoadVars all'URL specificato.
sendAndLoad(url:Strin
g, target:Object,
[method:String]) :
Boolean
Invia le variabili dell'oggetto LoadVars all'URL specificato.
toString() : String
Restituisce una stringa che contiene tutte le variabili
enumerabili nell'oggetto LoadVars, con la codifica del
contenuto MIME application/x-www-form-urlencoded.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable)isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString)unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
addRequestHeader (metodo LoadVars.addRequestHeader)
public addRequestHeader(header:Object, headerValue:String) : Void
Aggiunge o modifica intestazioni di richiesta HTTP, quali Content-Type o SOAPAction, inviate con azioni POST. Nel
primo uso, al metodo si passano due stringhe: header e headerValue. Nel secondo uso; si passa un array di stringhe,
alternando i nomi e i valori delle intestazioni.
Se vengono effettuate più chiamate per impostare lo stesso nome di intestazione, ciascun valore successivo sostituisce
il valore impostato nella chiamata precedente.
Le seguenti intestazioni HTTP standard non non possono essere aggiunte o modificate con questo metodo: AcceptRanges, Age, Allow, Allowed, Connection, Content-Length, Content-Location, Content-Range, ETag, Host,
Last-Modified, Locations, Max-Forwards, Proxy-Authenticate, Proxy-Authorization, Public, Range,
Retry-After, Server, TE, Trailer, Transfer-Encoding, Upgrade, URI, Vary, Via, Warning e WWW-Authenticate.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 335
Classi ActionScript
Parametri
header:Object - Una stringa o un array di stringhe che rappresenta il nome di intestazione di una richiesta HTTP.
headerValue:String - Una stringa che rappresenta il valore associato a header.
Esempio
L'esempio seguente aggiunge un'intestazione HTTP personalizzata di nome SOAPAction con un valore Foo all'oggetto
my_lv:
my_lv.addRequestHeader("SOAPAction", "'Foo'");
Nell'esempio seguente viene creato un array denominato headers che contiene due intestazioni HTTP alternate e i
relativi valori associati. L'array viene passato come argomento a addRequestHeader().
var headers = ["Content-Type", "text/plain", "X-ClientAppVersion", "2.0"];
my_lv.addRequestHeader(headers);
L'esempio seguente crea un nuovo oggetto LoadVars che aggiunge un'intestazione di richiesta di nome FLASH-UUID.
L'intestazione contiene una variabile che può essere verificata dal server.
var my_lv:LoadVars = new LoadVars();
my_lv.addRequestHeader("FLASH-UUID", "41472");
my_lv.name = "Mort";
my_lv.age = 26;
my_lv.send("http://flash-mx.com/mm/cgivars.cfm", "_blank", "POST");
Vedete anche
addRequestHeader (metodo XML.addRequestHeader)
contentType (proprietà LoadVars.contentType)
public contentType : String
Il tipo MIME che viene inviato al server quando si chiama LoadVars.send() o LoadVars.sendAndLoad(). Il valore
predefinito è application/x-www-form-urlencoded.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente crea un oggetto LoadVars e visualizza il tipo di contenuto predefinito dei dati che vengono inviati
al server.
var my_lv:LoadVars = new LoadVars();
trace(my_lv.contentType); // output: application/x-www-form-urlencoded
Vedete anche
send (metodo LoadVars.send), sendAndLoad (metodo LoadVars.sendAndLoad)
decode (metodo LoadVars.decode)
public decode(queryString:String) : Void
Converte la stringa variabile in proprietà dell'oggetto LoadVars specificato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 336
Classi ActionScript
Questo metodo è utilizzato internamente dal gestore di eventi LoadVars.onData. Per la maggior parte degli utenti
non è necessario chiamare questo metodo direttamente. Se si ignora il gestore di eventi LoadVars.onData, è possibile
chiamare esplicitamenteLoadVars.decode() per analizzare la sintassi di una stringa di variabili.
Disponibilità
Flash Lite 2.0
Parametri
queryString:String - Una stringa di query con codifica URL che contiene coppie nome/valore.
Esempio
L'esempio seguente traccia le tre variabili:
// Create a new LoadVars object
var my_lv:LoadVars = new LoadVars();
//Convert the variable string to properties
my_lv.decode("name=Mort&score=250000");
trace(my_lv.toString());
// Iterate over properties in my_lv
for (var prop in my_lv) {
trace(prop+" -> "+my_lv[prop]);
}
Vedete anche
onData (gestore LoadVars.onData), parseXML (metodo XML.parseXML)
getBytesLoaded (metodo LoadVars.getBytesLoaded)
public getBytesLoaded() : Number
Restituisce il numero di byte scaricati da una chiamata a LoadVars.load() o LoadVars.sendAndLoad(). Questo
metodo restituisce il valore non definito se non è in corso o non è ancora iniziata alcuna operazione di caricamento.
Nota: non è possibile utilizzare questo metodo per restituire informazioni relative a un file locale sul disco rigido.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Vedete anche
load (metodo LoadVars.load), sendAndLoad (metodo LoadVars.sendAndLoad)
getBytesTotal (metodo LoadVars.getBytesTotal)
public getBytesTotal() : Number
Restituisce il numero di byte scaricati da LoadVars.load() o LoadVars.sendAndLoad(). Questo metodo restituisce
non definito se non è in corso o non è ancora iniziata alcuna operazione di caricamento. Il valore undefined viene
restituito anche se non è possibile determinare il numero di byte totali (ad esempio, nel caso in cui lo scaricamento sia
stato iniziato ma il server non abbia trasmesso un valore HTTP content-length).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 337
Classi ActionScript
Nota: non è possibile utilizzare questo metodo per restituire informazioni relative a un file locale sul disco rigido.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero.
Vedete anche
load (metodo LoadVars.load), sendAndLoad (metodo LoadVars.sendAndLoad)
load (metodo LoadVars.load)
public load(url:String) : Boolean
Scarica le variabili dall'URL specificato, ne analizza i dati e colloca le variabili risultanti in un oggetto LoadVars.
Qualsiasi proprietà dell'oggetto LoadVars con lo stesso nome delle variabili scaricate viene sovrascritta. Qualsiasi
proprietà dell'oggetto LoadVars con un nome diverso delle variabili scaricate non viene sovrascritta. Questa azione è
asincrona.
I dati scaricati devono essere del tipo contenuto MIME application/x-www-form-urlencoded.
Si tratta dello stesso formato utilizzato da loadVariables().
Nei file SWF eseguiti in una versione di Flash Player precedente alla 7, l'url deve trovarsi nello stesso superdominio
del file SWF che emette la chiamata. Un superdominio può essere derivato rimovendo il componente più a sinistra
dell'URL di un file. Ad esempio, un file SWF all'indirizzo www.someDomain.com può scaricare i dati da origini
presenti in store.someDomain.com poiché entrambi i file si trovano nello stesso superdominio di nome
someDomain.com.
Nei file SWF di qualunque versione eseguita in Flash Player 7 o superiore, url deve trovarsi esattamente nello stesso
dominio. Ad esempio, un file SWF che si trova nel sito www.someDomain.com può caricare dati solo da altre origini
presenti nel sito www.someDomain.com. Per caricare dati da un dominio diverso, è possibile collocare un file di criteri
dei domini sul server che ospita il file SWF.
Inoltre, nei file pubblicati per Flash Player 7, la distinzione tra maiuscole e minuscole è supportata per le variabili
esterne caricate con LoadVars.load().
Questo metodo è simile a XML.load().
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL da cui scaricare le variabili. Se il file SWF che emette la chiamata viene eseguito in un browser Web,
l'url deve trovarsi nello stesso dominio del file SWF; per informazioni dettagliate, consultare la sezione Descrizione.
Restituisce
Boolean - Se non viene passato alcun parametro (null), restituisce false; in caso contrario true. Utilizzare il gestore
di eventi onLoad() per verificare la riuscita del caricamento dei dati.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 338
Classi ActionScript
Esempio
Il codice seguente definisce un gestore onLoad() che segnala quando i dati vengono restituiti all'applicazione da un
file di testo, quindi carica i dati dal file di testo e li invia alla finestra Output.
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
if (success) {
trace(this.toString());
} else {
trace("Error loading/parsing LoadVars.");
}
};
my_lv.load("http://www.helpexamples.com/flash/params.txt");
Vedete anche
load (metodo XML.load), loaded (proprietà LoadVars.loaded), onLoad (gestore LoadVars.onLoad)
loaded (proprietà LoadVars.loaded)
public loaded : Boolean
Un valore booleano che indica se un'operazione load o sendAndLoad è stata completata; non è definito per
impostazione predefinita. Quando viene avviata un'operazione LoadVars.load() o LoadVars.sendAndLoad(), la
proprietà loaded viene impostata su false; al completamento dell'operazione, la proprietà loaded viene impostata
su true. Se l'operazione non è ancora completata oppure non è riuscita a causa di un errore, la proprietà loaded
rimane impostata su false.
La proprietà è simile alla proprietà XML.loaded.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente carica un file di testo e visualizza le informazioni nel pannello Output quando l'operazione viene
completata.
var my_lv:LoadVars = new LoadVars();
my_lv.onLoad = function(success:Boolean) {
trace("LoadVars loaded successfully: "+this.loaded);
};
my_lv.load("http://www.helpexamples.com/flash/params.txt");
Vedete anche
load (metodo LoadVars.load), sendAndLoad (metodo LoadVars.sendAndLoad), load (metodo XML.load)
LoadVars (funzione di costruzione)
public LoadVars()
Crea un oggetto LoadVars. Chiama i metodi dell'oggetto LoadVars per inviare e caricare dati.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 339
Classi ActionScript
Esempio
Nell'esempio seguente viene creato un oggetto LoadVars denominato my_lv:
var my_lv:LoadVars = new LoadVars();
onData (gestore LoadVars.onData)
onData = function(src:String) {}
Richiamato quando i dati sono stati completamente scaricati dal server o quando si verifica un errore mentre si stanno
scaricando i dati da un server. Questo gestore viene richiamato prima che i dati vengano analizzati e può essere
utilizzato per chiamare una routine di analisi sintattica personalizzata anziché quella incorporata in Flash Lite. Il valore
del parametro src passato alla funzione assegnata a LoadVars.onData può essere non definito o una stringa che
contiene le coppie nome/valore con codifica URL scaricate dal server. Se il parametro srcnon è definito, significa
che si è verificato un errore durante lo scaricamento dei dati dal server.
L'implementazione predefinita di LoadVars.onData chiama LoadVars.onLoad. È possibile sostituire questa
implementazione predefinita mediante l'assegnazione di una funzione personalizzata a LoadVars.onData, ma
LoadVars.onLoad viene chiamato solo nell'implementazione di LoadVars.onData.
Disponibilità
Flash Lite 2.0
Parametri
src:String - Un valore di stringa o undefined; i dati originari (non analizzati) di una chiamata a un metodo
LoadVars.load() o LoadVars.sendAndLoad().
Esempio
L'esempio seguente carica un file di testo e visualizza le informazioni in un'istanza TextField di nome content_txt
quando l'operazione viene completata. Se si verifica un errore, le informazioni vengono visualizzate nel pannello
Output.
var my_lv:LoadVars = new LoadVars();
my_lv.onData = function(src:String) {
if (src == undefined) {
trace("Error loading content.");
return;
}
content_txt.text = src;
};
my_lv.load("http://www.helpexamples.com/flash/params.txt", my_lv, "GET");
Vedete anche
onLoad (gestore LoadVars.onLoad), load (metodo LoadVars.load), sendAndLoad (metodo
LoadVars.sendAndLoad)
onLoad (gestore LoadVars.onLoad)
onLoad = function(success:Boolean) {}
Richiamato quando un'operazione LoadVars.load() o LoadVars.sendAndLoad() è terminata. Se l'operazione è
stata eseguita correttamente, my_lv viene compilato con le variabili scaricate dall'operazione, che sono disponibili
quando viene richiamato questo gestore.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 340
Classi ActionScript
Questo gestore non è definito per impostazione predefinita.
Questo gestore di eventi è simile a XML.onLoad.
Disponibilità
Flash Lite 2.0
Parametri
success:Boolean - Indica se l'operazione di caricamento ha avuto esito positivo (true) o negativo (false).
Esempio
Vedere l'esempio per il metodo LoadVars.sendAndLoad().
Vedete anche
onLoad (gestore XML.onLoad), loaded (proprietà LoadVars.loaded), load (metodo LoadVars.load),
sendAndLoad (metodo LoadVars.sendAndLoad)
send (metodo LoadVars.send)
public send(url:String, target:String, [method:String]) : Boolean
Invia le variabili dell'oggetto LoadVars all'URL specificato. Le variabili vengono concatenate in una stringa nel formato
application/x-www-form-urlencoded o nel valore di LoadVars.contentType. Viene sempre utilizzato il metodo POST, a
meno che non sia specificato GET.
È necessario specificare il parametro target per eseguire lo script o l'applicazione corrispondente all'URL specificato.
Se si omette il parametro target, la funzione restituisce true, ma non viene eseguito lo script o l'applicazione.
Il metodo send() è utile se si desidera che la risposta del server:
• Sostituisca il contenuto SWF (utilizzare "_self" come parametro target);
• Venga visualizzata in una nuova finestra (utilizzare "_blank" come parametro target);
• Venga visualizzata nel frame principale o di primo livello (utilizzare "_parent" o "_top" come parametro
target);
• Venga visualizzata in un frame con nome (utilizzare il nome del frame come stringa per il parametro target);
Una chiamata al metodo send() con esito positivo apre sempre una nuova finestra del browser o sostituisce il
contenuto di una finestra o di un frame esistente. Se invece si desidera inviare informazioni a un server e continuare a
riprodurre il file SWF senza aprire una nuova finestra o senza sostituire il contenuto di una finestra o di un frame,
utilizzare il metodo LoadVars.sendAndLoad().
Questo metodo è simile a XML.send().
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL su cui caricare le variabili.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 341
Classi ActionScript
target:String - La finestra o il frame del browser in cui viene visualizzata una risposta. È possibile immettere il nome
di una finestra specifica o selezionare tra i seguenti nomi riservati di destinazioni:
•
"_self" indica il frame corrente nella finestra corrente.
•
"_blank" indica una nuova finestra.
•
"_parent" indica l'elemento principale del frame corrente.
•
"_top" specifica il frame di primo livello nella finestra corrente.
method:String (opzionale) - Il metodo GET o POST del protocollo HTTP. Il valore predefinito è POST.
Restituisce
Boolean - False, se non è specificato alcun parametro, in caso contrario true.
Esempio
L'esempio seguente copia due valori dai campi di testo e invia i dati a uno script CFM, che viene utilizzato per gestire
le informazioni. Ad esempio, lo script può verificare se l'utente ha totalizzato un punteggio elevato e successivamente
inserire tale dato in una tabella di database.
var my_lv:LoadVars = new LoadVars();
my_lv.playerName = playerName_txt.text;
my_lv.playerScore = playerScore_txt.text;
my_lv.send("setscore.cfm", "_blank", "POST");
Vedete anche
sendAndLoad (metodo LoadVars.sendAndLoad), send (metodo XML.send)
sendAndLoad (metodo LoadVars.sendAndLoad)
public sendAndLoad(url:String, target:Object, [method:String]) : Boolean
Invia le variabili dell'oggetto LoadVars all'URL specificato. La risposta del server viene scaricata e analizzata, quindi le
variabili risultanti vengono collocate nell'oggetto target.
Le variabili vengono inviate allo stesso modo di LoadVars.send(). Le variabili vengono scaricate in target allo stesso
modo di LoadVars.load().
Nei file SWF eseguiti in una versione di Flash Player precedente alla 7 (ad esempio, Flash Lite 1.x), l'url deve trovarsi
nello stesso superdominio del file SWF che emette la chiamata. Un superdominio può essere derivato rimovendo il
componente più a sinistra dell'URL di un file. Ad esempio, un file SWF all'indirizzo www.someDomain.com può
scaricare i dati da origini presenti in store.someDomain.com poiché entrambi i file si trovano nello stesso
superdominio di nome someDomain.com.
Nei file SWF di qualunque versione eseguita in Flash Player 7 o superiore (ad esempio, Flash Lite 2.x e 3.x), l'url deve
trovarsi esattamente nello stesso dominio. Ad esempio, un file SWF che si trova nel sito www.someDomain.com può
caricare dati solo da altre origini presenti nel sito www.someDomain.com. Per caricare dati da un dominio diverso, è
possibile collocare un file di criteri dei domini sul server che ospita il file SWF.
Questo metodo è simile a XML.sendAndLoad().
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 342
Classi ActionScript
Parametri
url:String - L'URL su cui caricare le variabili. Se il file SWF che emette la chiamata viene eseguito in un browser Web,
url deve trovarsi nello stesso dominio del file SWF.
target:Object - L'oggetto LoadVars o XML che riceve le variabili scaricate.
method:String (opzionale) - Il metodo GET o POST del protocollo HTTP. Il valore predefinito è POST.
Restituisce
Boolean
Esempio
Per l'esempio seguente, aggiungere allo stage un campo di testo di nome name_txt, un campo di testo dinamico di
nome result_txt e un pulsante di nome submit_btn. Quando l'utente fa clic sul pulsante, vengono creati due oggetti
LoadVars: send_lv e result_lv. L'oggetto send_lv copia il nome dall'istanza name_txt e invia i dati a greeting.cfm.
Il risultato di questo script viene caricato nell'oggetto result_lv e la risposta del server viene visualizzata nel campo di
testo result_txt. Aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
var send_lv:LoadVars = new LoadVars();
var result_lv:LoadVars = new LoadVars();
result_lv.onLoad = function(success:Boolean) {
if (success) {
result_txt.text = result_lv.welcomeMessage;
} else {
result_txt.text = "Error connecting to server.";
}
};
submit_btn.onRelease = function(){
send_lv.name = name_txt.text;
send_lv.sendAndLoad("http://www.flash-mx.com/mm/greeting.cfm", result_lv);
}
Vedete anche
send (metodo LoadVars.send), load (metodo LoadVars.load), sendAndLoad (metodo XML.sendAndLoad)
toString (metodo LoadVars.toString)
public toString() : String
Restituisce una stringa che contiene tutte le variabili enumerabili nell'oggetto LoadVars, con la codifica del contenuto
MIME application/x-www-form-urlencoded.
Disponibilità
Flash Lite 2.0
Restituisce
String
Esempio
L'esempio seguente crea un'istanza di un nuovo oggetto LoadVars(), crea due proprietà e utilizza toString() per
restituire una stringa che contiene entrambe le proprietà in formato con codifica URL:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 343
Classi ActionScript
var my_lv:LoadVars = new LoadVars();
my_lv.name = "Gary";
my_lv.age = 26;
trace (my_lv.toString()); //output: age=26&name=Gary
LocalConnection
Object
|
+-LocalConnection
public dynamic class LocalConnection
extends Object
La classe LocalConnection consente di sviluppare file SWF in grado di inviare istruzioni gli uni agli altri senza
utilizzare fscommand() o JavaScript. Gli oggetti LocalConnection possono comunicare solo tra file SWF in esecuzione
sulla stessa unità client; tuttavia, possono essere eseguiti in applicazioni diverse. È possibile utilizzare gli oggetti
LocalConnection per inviare e ricevere dati in un solo file SWF, ma non si tratta di un'implementazione standard; tutti
gli esempi di questa sezione descrivono la comunicazione tra file SWF diversi.
usate i metodi LocalConnection.send() e LocalConnection.connect()per inviare e ricevere dati. Notate che i
comandi LocalConnection.send() e LocalConnection.connect() specificano entrambi lo stesso nome di
connessione, lc_name:
// Code in the receiving SWF file
this.createTextField("result_txt", 1, 10, 10, 100, 22);
result_txt.border = true;
var receiving_lc:LocalConnection = new LocalConnection();
receiving_lc.methodToExecute = function(param1:Number, param2:Number) {
result_txt.text = param1+param2;
};
receiving_lc.connect("lc_name");
// Code in the sending SWF file
var sending_lc:LocalConnection = new LocalConnection();
sending_lc.send("lc_name", "methodToExecute", 5, 7);
Il modo più semplice per utilizzare un oggetto LocalConnection consiste nel consentire la comunicazione solo tra gli
oggetti LocalConnection di uno stesso dominio, per evitare problemi legati alla sicurezza. Tuttavia, se è necessario
consentire la comunicazione tra domini diversi, esistono diversi modi per implementare delle misure di sicurezza. Per
ulteriori informazioni, consultate la descrizione del parametro connectionName in LocalConnection.send() e le
voci relative a LocalConnection.allowDomain e LocalConnection.domain().
Disponibilità
Flash Lite 3.1
Riepilogo delle proprietà
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 344
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo degli eventi
Evento
Descrizione
allowDomain =
Richiamato ogni volta che un oggetto LocalConnection riceve la richiesta di richiamare un
metodo di un altro oggetto LocalConnection.
function([sendi
ngDomain:])
{}String
allowInsecureDomai
n =
function([sendi
ngDomain:])
{}String
onStatus =
function(infoOb
ject:Object){}
Richiamato ogni volta che un oggetto LocalConnection ricevente, contenuto in un file SWF
residente in un dominio che utilizza un protocollo di sicurezza (HTTPS), riceve la richiesta di
richiamare un metodo da un oggetto LocalConnection mittente contenuto in un file SWF
residente in un dominio che non utilizza un protocollo di sicurezza.
Richiamato dopo che un oggetto LocalConnection mittente tenta di inviare un comando a
un oggetto LocalConnection ricevente.
Riepilogo delle funzioni di costruzione
Firma
Descrizione
LocalConnection()
Crea un oggetto LocalConnection.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
close() : Void
Chiude (disconnette) un oggetto LocalConnection.
connect(connectionNa
me:String) :Boolean
Prepara un oggetto LocalConnection a ricevere i comandi
provenienti da un comando LocalConnection.send() (detto
oggetto LocalConnection mittente).
domain() : String
Restituisce una stringa che rappresenta il dominio della posizione
del file SWF corrente.
send(connectionName:
String,
methodName:String,
[args: Object])
:Boolean
Richiama il metodo di nome method su una connessione aperta
con il comando
LocalConnection.connect(connectionName) (l'oggetto
LocalConnection ricevente).
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
allowDomain (gestore LocalConnection.allowDomain)
allowDomain = function([sendingDomain:String]) {}
Richiamato ogni volta che receiving_lc riceve la richiesta di richiamare un metodo da un oggetto LocalConnection
mittente. Flash prevede che il codice implementato in questo gestore restituisca un valore booleano true o false. Se il
gestore non restituisce il valore true, la richiesta dell'oggetto mittente viene ignorata e il metodo non viene richiamato.
Quando questo gestore di eventi è assente, il player Flash Lite applica la politica per la sicurezza predefinita, che
equivale al codice seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 345
Classi ActionScript
my_lc.allowDomain = function (sendingDomain)
{
return (sendingDomain == this.domain());
}
Utilizzare LocalConnection.allowDomain per consentire esplicitamente agli oggetti LocalConnection dei domini
specificati, o di qualunque dominio, di eseguire i metodi dell'oggetto LocalConnection ricevente. Se non si dichiara il
parametro sendingDomain, vengono accettati i comandi provenienti da qualsiasi dominio e il codice del gestore
restituisce semplicemente il valore true. Se si dichiara sendingDomain, il valore di sendingDomain viene confrontato
con i domini da cui si desidera accettare i comandi. Gli esempi seguenti descrivono entrambe le implementazioni.
Nei file creati per Flash Player 6 (ad esempio, Flash Lite 1.x), il parametro sendingDomain contiene il superdominio
del chiamante. Nei file creati per Flash Player 7 (ad esempio, Flash Lite 2.x e 3.x), il parametro sendingDomain
contiene il dominio esatto del chiamante. In quest'ultimo caso, per consentire l'accesso da parte dei file SWF che
risiedono in www.domain.com o in store.domain.com, consentire esplicitamente l'accesso da entrambi i domini.
// For Flash Player 6
receiving_lc.allowDomain = function(sendingDomain) {
return(sendingDomain=="domain.com");
}
// For Flash Player 7 or later
receiving_lc.allowDomain = function(sendingDomain) {
return(sendingDomain=="www.domain.com" ||
sendingDomain=="store.domain.com");
}
Inoltre, per i file creati per Flash Player 7 o versioni successive (ad esempio, Flash Lite 2.x e 3.x), non è possibile
utilizzare questo metodo per consentire ai file SWF che risiedono su domini che utilizzano un protocollo di sicurezza
(HTTPS) di autorizzare l'accesso da parte di file SWF che risiedono su domini che non utilizzano protocolli di
sicurezza; in tal caso utilizzare il gestore di eventi LocalConnection.allowInsecureDomain.
Talvolta può verificarsi la situazione seguente. Si supponga di caricare un file SWF secondario da un dominio diverso.
È possibile implementare questo metodo in modo che il file SWF secondario sia in grado di effettuare chiamate
LocalConnection al file SWF principale quando non si conosce il dominio finale da cui proviene il file SWF secondario.
Questa situazione può verificarsi ad esempio quando si utilizzano i reindirizzamenti per il bilanciamento del carico di
lavoro o i server di terze parti.
In questa situazione, è possibile utilizzare la proprietà MovieClip._url nell'implementazione di questo metodo. Ad
esempio, se si carica un file SWF in my_mc, successivamente è possibile implementare questo metodo verificando se
l'argomento domain corrisponde al dominio di my_mc._url. (È necessario analizzare il dominio fuori dell'URL
completo contenuto in my_mc._url).
In tal caso, attendere che il file SWF in my_mc sia caricato, poiché il valore della proprietà _url non è definitivo e
corretto finché il file non è stato completamente caricato. Il modo migliore per determinare se un file SWF secondario
ha terminato il caricamento consiste nell'utilizzare MovieClipLoader.onLoadComplete.
In realtà può verificarsi anche la situazione opposta: è possibile creare un file SWF secondario impostato per accettare
le chiamate LocalConnection dal proprio elemento principale ma di cui non conosce il dominio. In questa situazione,
implementare questo metodo verificando se l'argomento domain corrisponde al dominio di _parent._url. Anche in
questo caso è necessario analizzare il dominio fuori dell'URL completo contenuto in _parent._url. In questo caso, non
è necessario attendere il caricamento del file SWF principale poiché sarà già stato completato al momento del
caricamento dell'elemento secondario.
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 346
Classi ActionScript
Parametri
sendingDomain:String [opzionale] - Una stringa che specifica il dominio del file SWF che contiene l'oggetto
LocalConnection mittente.
Esempio
L'esempio seguente mostra il modo in cui un oggetto LocalConnection in un file SWF ricevente può autorizzare la
chiamata dei propri metodi da parte dei file SWF di qualunque dominio. Confrontare questo esempio con quello
relativo a LocalConnection.connect(), in cui solo i file SWF dello stesso dominio possono richiamare il metodo
trace() nel file SWF ricevente. Per una descrizione dell'uso di underscore (_) nel nome della connessione, vedete
LocalConnection.send().
this.createTextField("welcome_txt", this.getNextHighestDepth(), 10, 10, 100, 20);
var my_lc:LocalConnection = new LocalConnection();
my_lc.allowDomain = function(sendingDomain:String) {
domain_txt.text = sendingDomain;
return true;
};
my_lc.allowInsecureDomain = function(sendingDomain:String) {
return (sendingDomain == this.domain());
}
my_lc.sayHello = function(name:String) {
welcome_txt.text = "Hello, "+name;
};
my_lc.connect("_mylc");
L'esempio seguente invia una stringa al file SWF precedente e visualizza un messaggio di stato che indica se la
connessione locale è riuscita a collegarsi al file. Per visualizzare il contenuto vengono utilizzati un componente
TextInput di nome name_ti, un'istanza TextArea di nome status_ta e un'istanza Button di nome send_button.
var sending_lc:LocalConnection;
var sendListener:Object = new Object();
sendListener.click = function(evt:Object) {
sending_lc = new LocalConnection();
sending_lc.onStatus = function(infoObject:Object) {
switch (infoObject.level) {
case 'status' :
status_ta.text = "LocalConnection connected successfully.";
break;
case 'error' :
status_ta.text = "LocalConnection encountered an error.";
break;
}
};
sending_lc.send("_mylc", "sayHello", name_ti.text);
};
send_button.addEventListener("click", sendListener);
Nell'esempio seguente, il file SWF ricevente, che si trova in thisDomain.com, accetta i comandi solo dai file SWF
appartenenti a thisDomain.com o thatDomain.com:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 347
Classi ActionScript
var aLocalConn:LocalConnection = new LocalConnection();
aLocalConn.Trace = function(aString) {
aTextField += aString+newline;
};
aLocalConn.allowDomain = function(sendingDomain) {
return (sendingDomain == this.domain() || sendingDomain == "www.macromedia.com");
};
aLocalConn.connect("_mylc");
Quando si pubblica per Flash Player 7 o versioni successive (Flash Lite 2.x e 3.x), viene utilizzata la corrispondenza
esatta dei domini. Pertanto l'esempio dà esito negativo se i file SWF si trovano in www.thatDomain.com e dà esito
positivo se i file si trovano in thatDomain.com.
Vedete anche
connect (metodo LocalConnection.connect), domain (metodo LocalConnection.domain), send (metodo
LocalConnection.send), _url (proprietà MovieClip._url), onLoadComplete (listener di eventi
MovieClipLoader.onLoadComplete), Proprietà _parent
allowInsecureDomain (gestore LocalConnection.allowInsecureDomain)
allowInsecureDomain = function([sendingDomain:String]) {}
Richiamato ogni volta che receiving_lc, che è un file SWF che risiede in un dominio che utilizza un protocollo di
sicurezza (HTTPS), riceve la richiesta di richiamare un metodo da un oggetto LocalConnection mittente contenuto in
un file SWF che risiede in un dominio che non utilizza un protocollo di sicurezza. Flash prevede che il codice
implementato in questo gestore restituisca un valore booleano true o false. Se il gestore non restituisce il valore true,
la richiesta dell'oggetto mittente viene ignorata e il metodo non viene richiamato.
Per impostazione predefinita, i file SWF che risiedono su domini che utilizzano il protocollo HTTPS sono accessibili
solo da altri file SWF che risiedono su domini che utilizzano il protocollo HTTPS. Questa implementazione conserva
l'integrità fornita dal protocollo HTTPS.
Non è consigliabile utilizzare questo metodo per ignorare il comportamento predefinito, poiché la sicurezza HTTPS
viene compromessa. Tuttavia, può essere necessario utilizzarlo per consentire l'accesso ai file HTTPS pubblicati per
Flash Player 7 o versioni successive (ad esempio, Flash Lite 2.x e 3.x) da parte dei file HTTP pubblicati per Flash Player 6.
Un file SWF pubblicato per Flash Player 6 può utilizzare il gestore di eventi LocalConnection.allowDomain per
consentire l'accesso HTTPS al protocollo HTTP. Tuttavia, poiché la sicurezza è implementata in modo diverso in Flash
Player 7, è necessario utilizzare il metodo LocalConnection.allowInsecureDomain() per consentire tale accesso
nei file SWF pubblicati per Flash Player 7 o versioni successive.
Disponibilità
Flash Lite 3.1
Parametri
sendingDomain:String [opzionale] - Una stringa che specifica il dominio del file SWF che contiene l'oggetto
LocalConnection mittente.
Esempio
L'esempio seguente consente le connessioni dal dominio corrente o da www.macromedia.com o consente le
connessioni non sicure solo dal dominio corrente.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 348
Classi ActionScript
this.createTextField("welcome_txt", this.getNextHighestDepth(), 10, 10, 100, 20);
var my_lc:LocalConnection = new LocalConnection();
my_lc.allowDomain = function(sendingDomain:String) {
domain_txt.text = sendingDomain;
return (sendingDomain == this.domain() || sendingDomain == "www.macromedia.com");
};
my_lc.allowInsecureDomain = function(sendingDomain:String) {
return (sendingDomain == this.domain());
}
my_lc.sayHello = function(name:String) {
welcome_txt.text = "Hello, "+name;
};
my_lc.connect("lc_name");
Vedete anche
allowDomain (gestore LocalConnection.allowDomain), connect (metodo LocalConnection.connect)
close (metodo LocalConnection.close)
public close() : Void
Chiude (disconnette) un oggetto LocalConnection. Eseguite questo comando se non desiderate più che l'oggetto
accetti i comandi: ad esempio, per eseguire un comando LocalConnection.connect() che utilizza lo stesso
parametro connectionName in un altro file SWF.
Disponibilità
Flash Lite 3.1
Vedete anche
connect (metodo LocalConnection.connect)
connect (metodo LocalConnection.connect)
public connect(connectionName:String) : Boolean
Prepara un oggetto LocalConnection a ricevere i comandi provenienti da un comando LocalConnection.send()
(definito oggetto LocalConnection mittente). L'oggetto che chiama questo comando viene definito oggetto
LocalConnection ricevente. Gli oggetti mittenti e riceventi devono essere in esecuzione sullo stesso computer client.
Assicurarsi di aver definito i metodi associati a receiving_lc prima di chiamare questo metodo, come indicato in tutti
gli esempi di questa sezione.
Per impostazione predefinita, Flash Lite risolve connectionName nel valore "superdomain:connectionName", dove
superdomain è il superdominio del file SWF che contiene il comando LocalConnection.connect(). Ad esempio, se
il file SWF che contiene l'oggetto LocalConnection ricevente si trova in www.someDomain.com, connectionName
risolve a "someDomain.com:connectionName". Se un file SWF si trova sul computer client, il valore assegnato a
superdomain è "localhost".
Sempre per impostazione predefinita, Flash Lite consente all'oggetto LocalConnection ricevente di accettare comandi
solo dagli oggetti LocalConnection mittenti per cui anche il nome di connessione risolve al valore
"superdomain:connectionName". In questo modo, Flash Lite rende più semplice la comunicazione tra i file SWF di
uno stesso dominio.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 349
Classi ActionScript
Se si implementa la comunicazione solo tra file SWF dello stesso dominio, specificare una stringa per
connectionName che non inizi con un carattere di sottolineatura (_) e che non specifichi un nome di dominio (ad
esempio, "myDomain:connectionName"). Utilizzare la stessa stringa nel comando
LocalConnection.connect(connectionName).
Se si implementa la comunicazione solo tra file SWF di domini diversi e si specifica una stringa per connectionName
che inizia con un carattere di sottolineatura (_), si rende il file SWF con l'oggetto LocalConnection ricevente più
portabile tra i domini. Di seguito sono illustrati i due casi possibili:
• Se la stringa per connectionName non inizia con un carattere di sottolineatura (_), Flash Lite aggiunge un prefisso
composto dal superdominio e da un segno di due punti (ad esempio, "myDomain:connectionName"). Benché
questo assicuri che la connessione non entri in conflitto con le connessioni con lo stesso nome di altri domini, tutti
gli oggetti LocalConnection mittenti devono specificare questo superdominio (ad esempio,
"myDomain:connectionName"). Se il SWF con l'oggetto LocalConnection ricevente viene spostato in un altro
dominio, il lettore modifica il prefisso per rispecchiare il nuovo superdominio (ad esempio,
"anotherDomain:connectionName"). Tutti gli oggetti LocalConnection mittenti devono quindi essere modificati
manualmente in modo da puntare al nuovo superdominio.
• Se la stringa per connectionName inizia con un carattere di sottolineatura (ad esempio, "_connectionName"),
Flash Lite non aggiunge alcun prefisso alla stringa. Questo significa che gli oggetti LocalConnection riceventi e
mittenti utilizzeranno stringhe identiche per connectionName. Se l'oggetto ricevente utilizza
LocalConnection.allowDomain per specificare che vengano accettate le connessioni da qualunque dominio, il
file SWF con l'oggetto LocalConnection ricevente può essere spostato in un altro dominio senza modificare alcun
oggetto LocalConnection mittente.
Per ulteriori informazioni, consultate la descrizione di connectionName nella sezione relativa a
LocalConnection.send() e le sezioni relative a LocalConnection.allowDomain e LocalConnection.domain().
Nota: il carattere di punto e virgola viene utilizzato come carattere speciale per separare il superdominio dalla stringa
connectionName. Se una stringa per connectionName contiene un punto e virgola, non è valida.
Disponibilità
Flash Lite 3.1
Parametri
connectionName:String - Una stringa che corrisponde al nome della connessione specificato nel comando
LocalConnection.send() che apre una comunicazione con receiving_lc.
Restituisce
Boolean - Un valore booleano: true se nessun altro processo in esecuzione sullo stesso computer client ha già eseguito
un comando che utilizza lo stesso valore per il parametro connectionName; false in caso contrario.
Esempio
L'esempio seguente mostra il modo in cui un file SWF di un determinato dominio può richiamare un metodo di nome
printOut in un file SWF ricevente che appartiene allo stesso dominio.
Innanzitutto, creare un file SWF con il codice seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 350
Classi ActionScript
this.createTextField("tf", this.getNextHighestDepth(), 10, 10, 300, 100);
var aLocalConnection:LocalConnection = new LocalConnection();
aLocalConnection.connect("demoConnection");
aLocalConnection.printOut = function(aString:String):Void{
tf.text += aString;
}
Quindi, crearne un altro con il codice seguente:
var sending_lc:LocalConnection = new LocalConnection();
sending_lc.send("demoConnection", "printOut", "This is a message from file B. Hello.");
Per provare questo esempio, eseguire il primo file SWF, quindi eseguire il secondo.
Vedete anche
send (metodo LocalConnection.send), allowDomain (gestore LocalConnection.allowDomain), domain
(metodo LocalConnection.domain)
domain (metodo LocalConnection.domain)
public domain() : String
Restituisce una stringa che rappresenta il dominio della posizione del file SWF corrente.
Nei file SWF pubblicati per Flash Player 6 o versioni precedenti (ad esempio, Flash Lite 1.x), la stringa restituita è il
superdominio del file SWF corrente. Ad esempio, se il file SWF si trova all'indirizzo www.adobe.com, questo comando
restituisce "adobe.com".
Nei file SWF pubblicati per Flash Player 7 o versioni successive (ad esempio, Flash Lite 2.x e 3.x), la stringa restituita è
il dominio esatto del file SWF corrente. Ad esempio, se il file SWF si trova all'indirizzo www.adobe.com, questo
comando restituisce "www.adobe.com".
Se il file SWF è un file locale che risiede sul computer client, questo comando restituisce "localhost".
L'uso più comune di questo comando consiste nell'includere il nome del dominio dell'oggetto LocalConnection
mittente come parametro per il metodo che si prevede di richiamare nell'oggetto LocalConnection ricevente, oppure
con LocalConnection.allowDomain per accettare i comandi provenienti da un dominio specificato. Se si abilita la
comunicazione solo tra oggetti LocalConnection che si trovano nello stesso dominio, probabilmente non è necessario
utilizzare questo comando.
Disponibilità
Flash Lite 3.1
Restituisce
String - Una stringa che rappresenta il dominio della posizione del file SWF corrente; per ulteriori informazioni,
consultate la sezione Descrizione.
Esempio
Nell'esempio seguente, un file SWF ricevente accetta i comandi solo dai file SWF appartenenti allo stesso dominio o a
example.com:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 351
Classi ActionScript
// If both the sending and receiving SWF files are Flash Player 6,
// then use the superdomain
var my_lc:LocalConnection = new LocalConnection();
my_lc.allowDomain = function(sendingDomain):String{
return (sendingDomain==this.domain() || sendingDomain=="example.com");
}
// If either the sending or receiving SWF file is Flash Player 7 or later,
// then use the exact domain. In this case, commands from a SWF file posted
// at www.example.com will be accepted, but those from one posted at
// a different subdomain, e.g. test.example.com, will not.
var my_lc:LocalConnection = new LocalConnection();
my_lc.allowDomain = function(sendingDomain):String{
return (sendingDomain==this.domain() || sendingDomain=="www.example.com");
}
Nell'esempio seguente, un file SWF di invio del dominio www.yourdomain.com richiama un metodo in un file SWF
ricevente del dominio www.mydomain.com. Il file SWF di invio include il proprio nome di dominio come parametro
del metodo che richiama, in modo che il file SWF ricevente possa restituire un valore di risposta a un oggetto
LocalConnection nel dominio corretto. Il file SWF di invio specifica anche che accetta solo i comandi provenienti dai
file SWF appartenenti a mydomain.com.
I numeri di riga sono inclusi per riferimento. La sequenza degli eventi viene illustrata nell'elenco seguente:
• Il file SWF ricevente si prepara a ricevere i comandi su una connessione di nome "sum" (riga 11). Il player Flash
Lite risolve il nome di questa connessione a "mydomain.com:sum" (vedete LocalConnection.connect()).
• Il file SWF mittente si prepara a ricevere una risposta sull'oggetto LocalConnection di nome "result" (riga 67).
Inoltre, specifica che accetta solo i comandi provenienti dai file SWF di mydomain.com (dalla riga 51 alla riga 53).
• Il file SWF mittente chiama il metodo aSum di una connessione chiamata "mydomain.com:sum" (riga 68) e passa i
seguenti parametri: il suo superdominio, il nome della connessione su cui ricevere la risposta ("result") e i valori
che verranno usati in aSum (123 e 456).
• Il metodo aSum (riga 6) viene richiamato con i seguenti valori: sender = "mydomain.com:result", replyMethod
= "aResult", n1 = 123 e n2 = 456. Quindi esegue la seguente riga di codice:
this.send("mydomain.com:result", "aResult", (123 + 456));
• Il metodo aResult (riga 54) mostra il valore restituito da aSum (579).
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 352
Classi ActionScript
// The receiving SWF at http://www.mydomain.com/folder/movie.swf
// contains the following code
1 var aLocalConnection:LocalConnection = new LocalConnection();
2 aLocalConnection.allowDomain = function()
3 {
// Allow connections from any domain
4 return true;
5 }
6 aLocalConnection.aSum = function(sender, replyMethod, n1, n2)
7 {
8 this.send(sender, replyMethod, (n1 + n2));
9 }
10
11 aLocalConnection.connect("sum");
// The sending SWF at http://www.yourdomain.com/folder/movie.swf
// contains the following code
50 var lc:LocalConnection = new LocalConnection();
51 lc.allowDomain = function(aDomain) {
// Allow connections only from mydomain.com
52 return (aDomain == "mydomain.com");
53 }
54 lc.aResult = function(aParam) {
55 trace("The sum is " + aParam);
56 }
// determine our domain and see if we need to truncate it
57 var channelDomain:String = lc.domain();
58 if (getVersion() >= 7 && this.getSWFVersion() >= 7)
59 {
// split domain name into elements
60 var domainArray:Array = channelDomain.split(".");
61
62
63
64
65
66
// if more than two elements are found,
// chop off first element to create superdomain
if (domainArray.length > 2)
{
domainArray.shift();
channelDomain = domainArray.join(".");
}
}
67 lc.connect("result");
68 lc.send("mydomain.com:sum", "aSum", channelDomain + ':' + "result",
"aResult", 123, 456);
Vedete anche
allowDomain (gestore LocalConnection.allowDomain), connect (metodo LocalConnection.connect)
Funzione di costruzione LocalConnection
public LocalConnection()
Crea un oggetto LocalConnection.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 353
Classi ActionScript
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente mostra come la ricezione e l'invio di file SWF creano oggetti LocalConnnection. I due file SWF
possono utilizzare lo stesso nome o nomi diversi per i rispettivi oggetti LocalConnection. In questo esempio usano
nomi diversi.
// Code in the receiving SWF file
this.createTextField("result_txt", 1, 10, 10, 100, 22);
result_txt.border = true;
var receiving_lc:LocalConnection = new LocalConnection();
receiving_lc.methodToExecute = function(param1:Number, param2:Number) {
result_txt.text = param1+param2;
};
receiving_lc.connect("lc_name");
Il file SWF seguente invia la richiesta al primo file SWF.
// Code in the sending SWF file
var sending_lc:LocalConnection = new LocalConnection();
sending_lc.send("lc_name", "methodToExecute", 5, 7);
Vedete anche
connect (metodo LocalConnection.connect), send (metodo LocalConnection.send)
onStatus (gestore LocalConnection.onStatus)
onStatus = function(infoObject:Object) {}
Richiamato dopo che un oggetto LocalConnection mittente tenta di inviare un comando a un oggetto
LocalConnection ricevente. Se si desidera rispondere a questo gestore di eventi, creare una funzione che elabori
l'oggetto informazioni inviato dall'oggetto LocalConnection.
Se l'oggetto informazioni restituito da questo gestore di eventi contiene un valore status per level, significa che il
comando è stato inviato correttamente a un oggetto LocalConnection ricevente. Questo non significa che è stato
richiamato correttamente il metodo specificato dell'oggetto LocalConnection ricevente, bensì che semplicemente è
stato possibile inviare il comando. Ad esempio, il metodo non viene richiamato se l'oggetto LocalConnection ricevente
non consente le connessioni dal dominio mittente o se il metodo non esiste. L'unico modo per sapere con certezza se
il metodo è stato richiamato consiste nel fare in modo che l'oggetto ricevente invii una risposta all'oggetto mittente.
Se l'oggetto informazioni restituito da questo gestore di eventi contiene un valore level di status, non è possibile inviare
il comando a un oggetto LocalConnection ricevente, molto probabilmente perché non è connesso alcun oggetto
LocalConnection ricevente il cui nome corrisponda a quello specificato nel comando sending_lc.send() che ha
richiamato questo gestore.
Oltre a questo gestore onStatus, Flash fornisce una "super" funzione di nome System.onStatus. Se onStatus viene
richiamata per un oggetto particolare e non è stata assegnata alcuna funzione per risponderle, viene elaborata una
funzione assegnata a System.onStatus (se esiste).
Nella maggior parte dei casi, si implementa questo gestore solo per rispondere alle condizioni di errore, come descritto
nell'esempio seguente.
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 354
Classi ActionScript
Parametri
infoObject:Object - Un parametro definito in base al messaggio di stato. Per ulteriori informazioni su questo
parametro, consultare la sezione Descrizione.
Esempio
L'esempio seguente visualizza un messaggio di stato che indica se il file SWF si connette a un altro oggetto di
connessione locale di nome lc_name. Per visualizzare il contenuto vengono utilizzati un componente TextInput di
nome name_ti, un'istanza TextArea di nome status_ta e un'istanza Button di nome send_button.
var sending_lc:LocalConnection;
var sendListener:Object = new Object();
sendListener.click = function(evt:Object) {
sending_lc = new LocalConnection();
sending_lc.onStatus = function(infoObject:Object) {
switch (infoObject.level) {
case 'status' :
status_ta.text = "LocalConnection connected successfully.";
break;
case 'error' :
status_ta.text = "LocalConnection encountered an error.";
break;
}
};
sending_lc.send("lc_name", "sayHello", name_ti.text);
};
send_button.addEventListener("click", sendListener);
Vedete anche
send (metodo LocalConnection.send), onStatus (gestore System.onStatus)
send (metodo LocalConnection.send)
public send(connectionName:String, methodName:String, [args:Object]) : Boolean
Richiama il metodo di nome method su una connessione aperta dall'oggetto LocalConnection ricevente. L'oggetto che
chiama questo metodo è l'oggetto LocalConnection mittente. I file SWF che contengono gli oggetti mittenti e riceventi
devono essere in esecuzione sulla stessa unità client.
Esiste un limite di 40 kilobyte alla quantità di dati che è possibile passare come parametri a questo comando. Se il
comando restituisce false ma la sintassi è corretta, provate a dividere le richieste LocalConnection.send() in più
comandi, ciascuno con meno di 40 KB di dati.
Come discusso nella sezione relativa a LocalConnection.connect(), il superdominio corrente viene aggiunto a
connectionName per impostazione predefinita. Se si implementa la comunicazione tra domini diversi, definire
connectionName negli oggetti LocalConnection sia mittenti che riceventi in modo che a connectionName non venga
aggiunto il superdominio corrente. È possibile ottenere questo risultato in uno dei due modi seguenti:
• Utilizzare un carattere di sottolineatura (_) all'inizio di connectionName negli oggetti LocalConnection sia mittenti
che riceventi. Nel file SWF che contiene l'oggetto ricevente, utilizzate LocalConnection.allowDomain per
specificare che vengano accettate le connessioni da qualunque dominio. Questa implementazione consente di
memorizzare i file mittenti e riceventi di qualunque dominio.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 355
Classi ActionScript
• Includete il superdominio in connectionName nell'oggetto LocalConnection mittente: ad esempio,
myDomain.com:myConnectionName. Nell'oggetto ricevente, utilizzate LocalConnection.allowDomain() per
specificare che vengano accettate le connessioni provenienti dal superdominio specificato (in questo caso,
myDomain.com) oppure quelle provenienti da qualsiasi dominio.
Nota: non è possibile specificare un superdominio in connectionName nell'oggetto LocalConnection ricevente; è possibile
farlo solo nell'oggetto LocalConnection mittente.
Quando utilizzate questo metodo, tenete in considerazione il modello di sicurezza di Flash Lite. Per impostazione
predefinita, un oggetto LocalConnection è associato alla sandbox del file SWF che l'ha creato, e le chiamate a più
domini agli oggetti LocalConnection non sono consentite a meno che non sia stato chiamato il metodo
LocalConnection.allowDomain().
Per ulteriori informazioni, consultare i seguenti riferimenti:
• Capitolo 17, "Nozioni fondamentali sulla sicurezza" nella guida Apprendimento di ActionScript 2.0 in Flash
• Il White paper sulla sicurezza per Flash Player 8 all'indirizzo http://www.macromedia.com/go/fp8_security_it
• Il White paper sulle API relative alla sicurezza per Flash Player 8 all'indirizzo
http://www.macromedia.com/go/fp8_security_apis_it
Disponibilità
Flash Lite 3.1
Parametri
connectionName:String - Una stringa che corrisponde al nome della connessione specificato nel comando
LocalConnection.connect() che apre una comunicazione con sending_lc.
methodName:String - Una stringa che specifica il nome del metodo da richiamare nell'oggetto LocalConnection
ricevente. I seguenti nomi di metodo provocano un errore del comando: send, connect, close, domain, onStatus e
allowDomain.
args:Object [opzionale] - Gli argomenti da passare al metodo specificato.
Restituisce
Boolean - Un valore booleano: true se Flash può soddisfare la richiesta; false in caso contrario.
Nota: se viene restituito un valore true non significa necessariamente che Flash si è connesso correttamente a un oggetto
LocalConnection ricevente; significa semplicemente che il comando è corretto dal punto di vista sintattico. Per
determinare se la connessione è riuscita, vedete LocalConnection.onStatus.
Esempio
Per un esempio della comunicazione tra oggetti LocalConnection appartenenti allo stesso dominio, vedete
LocalConnection.connect(). Per un esempio della comunicazione tra oggetti LocalConnection appartenenti a un
dominio specificato, vedete LocalConnection.domain().
Vedete anche
allowDomain (gestore LocalConnection.allowDomain), connect (metodo LocalConnection.connect),
domain (metodo LocalConnection.domain), onStatus (gestore LocalConnection.onStatus)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 356
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Math
Object
|
+-Math
public class Math
extends Object
La classe Math è una classe di primo livello di cui è possibile utilizzare metodi e proprietà senza ricorrere a una
funzione di costruzione.
Utilizzare i metodi e le proprietà di questa classe per accedere e gestire le costanti e le funzioni matematiche. Tutte le
proprietà e i metodi della classe Math sono statici e per chiamarli è necessario utilizzare la sintassi Math.method() o
Math.CONSTANT. In ActionScript, le costanti sono definite mediante la precisione massima dei numeri a virgola mobile
EEE-754 a doppia precisione.
Diversi metodi della classe Math utilizzano come parametro la misura di un angolo espressa in radianti. È possibile
utilizzare l'equazione seguente per calcolare i valori dei radianti prima di chiamare il metodo e successivamente fornire
il valore calcolato come parametro. In alternativa, è possibile fornire l'intera parte destra dell'equazione (con la misura
in gradi dell'angolo al posto di degrees) come parametro per i radianti.
Per calcolare il valore in radianti, utilizzare la seguente formula:
radians = degrees * Math.PI/180
Di seguito è riportato un esempio di come passare l'equazione come parametro per calcolare il seno di un angolo di 45°:
Math.sin(45 * Math.PI/180) è uguale a Math.sin(.7854)
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
E:Number
Una costante matematica alla base dei logaritmi naturali,
espressa come e.
static
LN10:Number
Una costante matematica per il logaritmo naturale di 10,
espressa come loge10, con un valore approssimativo pari a
2,302585092994046.
static
LN2:Number
Una costante matematica per il logaritmo naturale di 2,
espressa come loge2, con un valore approssimativo pari a
0,6931471805599453.
static
LOG10E:Number
Una costante matematica per il logaritmo a base 10 della
costante e (Math.E), espressa come log10e, con un valore
approssimativo pari a 0,4342944819032518.
static
LOG2E:Number
Una costante matematica per il logaritmo a base 2 della
costante e (Math.E), espressa come log2e, con un valore
approssimativo pari a 1.442695040888963387.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 357
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
static
PI:Number
Una costante matematica per il rapporto tra la circonferenza di
un cerchio e il suo diametro, espressa come pi e con un valore
pari a 3,141592653589793.
static
SQRT1_2:Number
Una costante matematica per la radice quadrata di un mezzo,
con un valore approssimativo pari a 0,7071067811865476.
static
SQRT2:Number
Una costante matematica per la radice quadrata di 2, con un
valore approssimativo pari a 1,4142135623730951.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto).
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo dei metodi
Modificatori
Firma
Descrizione
static
abs(x:Number) :
Number
Calcola e restituisce un valore assoluto per il numero
specificato dal parametro x.
static
acos(x:Number) :
Number
Calcola e restituisce l'arcocoseno del numero specificato dal
parametro x, espresso in radianti.
static
asin(x:Number) :
Number
Calcola e restituisce l'arcoseno del numero specificato dal
parametro x, espresso in radianti.
static
atan(tangent:Number)
: Number
Calcola e restituisce il valore, espresso in radianti, dell'angolo la
cui tangente è specificata nel parametro tangent.
static
atan2(y:Number,
x:Number) : Number
Calcola e restituisce l'angolo, espresso in radianti, del punto
y/x, misurato in senso antiorario partendo dall'asse x di un
cerchio (dove 0,0 rappresenta il centro del cerchio).
static
ceil(x:Number) :
Number
Restituisce il valore ceiling (letteralmente, soffitto) del numero
o dell'espressione specificata.
static
cos(x:Number) :
Number
Calcola e restituisce il coseno dell'angolo specificato, espresso
in radianti.
static
exp(x:Number) :
Number
Restituisce il valore della base del logaritmo naturale (e),
elevato alla potenza dell'esponente specificato nel parametro
x.
static
floor(x:Number) :
Number
Restituisce il valore floor (letteralmente, pavimento) del
numero o dell'espressione specificata nel parametro x.
static
log(x:Number) :
Number
Restituisce il logaritmo naturale del parametro x.
static
max(x:Number,
y:Number) : Number
Valuta x e y e restituisce il valore maggiore.
static
min(x:Number,
y:Number) : Number
Valuta x e y e restituisce il valore minore.
static
pow(x:Number,
y:Number) : Number
Calcola e restituisce x elevato alla potenza di y.
static
random() : Number
Restituisce un numero pseudo-casuale n, dove 0 <= n < 1.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 358
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
static
round(x:Number) :
Number
Arrotonda il valore del parametro x al numero intero più vicino
per eccesso o per difetto e restituisce il valore.
static
sin(x:Number) :
Number
Calcola e restituisce il seno dell'angolo specificato, espresso in
radianti.
static
sqrt(x:Number) :
Number
Calcola e restituisce la radice quadrata del numero specificato.
static
tan(x:Number) :
Number
Calcola e restituisce la tangente dell'angolo specificato.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf)registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
abs (metodo Math.abs)
public static abs(x:Number) : Number
Calcola e restituisce un valore assoluto per il numero specificato dal parametro x.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero.
Restituisce
Number - Un numero.
Esempio
Nell'esempio seguente viene illustrato come Math.abs() restituisca il valore assoluto di un numero senza incidere sul
valore del parametro x (definito num in questo esempio):
var num:Number = -12;
var numAbsolute:Number = Math.abs(num);
trace(num); // output: -12
trace(numAbsolute); // output: 12
acos (metodo Math.acos)
public static acos(x:Number) : Number
Calcola e restituisce l'arcocoseno del numero specificato dal parametro x, espresso in radianti.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 359
Classi ActionScript
Parametri
x:Number - Un numero compreso tra -1,0 e 1,0.
Restituisce
Number - Un numero; l'arcocoseno del parametro x.
Esempio
Nell'esempio seguente viene visualizzato l'arcocoseno per diversi valori.
trace(Math.acos(-1)); // output: 3.14159265358979
trace(Math.acos(0)); // output: 1.5707963267949
trace(Math.acos(1)); // output: 0
Vedete anche
asin (metodo Math.asin), atan (metodo Math.atan), atan2 (metodo Math.atan2), cos (metodo
Math.cos), sin (metodo Math.sin), tan (metodo Math.tan)
asin (metodo Math.asin)
public static asin(x:Number) : Number
Calcola e restituisce l'arcoseno del numero specificato dal parametro x, espresso in radianti.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero compreso tra -1,0 e 1,0.
Restituisce
Number - Un numero compreso tra pi negativo diviso 2 e pi positivo diviso 2.
Esempio
Nell'esempio seguente viene visualizzato l'arcoseno per diversi valori.
trace(Math.asin(-1)); // output: -1.5707963267949
trace(Math.asin(0)); // output: 0
trace(Math.asin(1)); // output: 1.5707963267949
Vedete anche
acos (metodo Math.acos), atan (metodo Math.atan), atan2 (metodo Math.atan2), cos (metodo
Math.cos), sin (metodo Math.sin), tan (metodo Math.tan)
atan (metodo Math.atan)
public static atan(tangent:Number) : Number
Calcola e restituisce il valore, espresso in radianti, dell'angolo la cui tangente è specificata nel parametro tangent. Il
valore restituito è compreso tra pi negativo diviso 2 e pi positivo diviso 2.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 360
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
tangent:Number - Un numero che rappresenta la tangente di un angolo.
Restituisce
Number - Un numero compreso tra pi negativo diviso 2 e pi positivo diviso 2.
Esempio
Nell'esempio seguente viene visualizzato il valore dell'angolo per diverse tangenti.
trace(Math.atan(-1)); // output: -0.785398163397448
trace(Math.atan(0)); // output: 0
trace(Math.atan(1)); // output: 0.785398163397448
Vedete anche
acos (metodo Math.acos), asin (metodo Math.asin), atan2 (metodo Math.atan2), cos (metodo
Math.cos), sin (metodo Math.sin), tan (metodo Math.tan)
atan2 (metodo Math.atan2)
public static atan2(y:Number, x:Number) : Number
Calcola e restituisce l'angolo, espresso in radianti, del punto y/x, misurato in senso antiorario partendo dall'asse x di
un cerchio (dove 0,0 rappresenta il centro del cerchio). Il valore restituito è compreso tra pi positivo e pi negativo.
Disponibilità
Flash Lite 2.0
Parametri
y:Number - Un numero che specifica la coordinata y del punto.
x:Number - Un numero che specifica la coordinata x del punto.
Restituisce
Number - Un numero.
Esempio
Nell'esempio seguente viene restituito l'angolo, espresso in radianti, del punto specificato dalle coordinate (0, 10), in
modo che x = 0 e y = 10. Il primo parametro di atan2 corrisponde sempre alla coordinata y.
trace(Math.atan2(10, 0)); // output: 1.5707963267949
Vedete anche
acos (metodo Math.acos), asin (metodo Math.asin), atan (metodo Math.atan), cos (metodo Math.cos),
sin (metodo Math.sin), tan (metodo Math.tan)
ceil (metodo Math.ceil)
public static ceil(x:Number) : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 361
Classi ActionScript
Restituisce il valore ceiling (letteralmente, soffitto) del numero o dell'espressione specificata. Il valore ceiling di un
numero è il primo intero superiore o uguale al numero.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione.
Restituisce
Number - Un numero intero maggiore o uguale, più vicino al parametro x.
Esempio
Il codice seguente restituisce il valore 13:
Math.ceil(12.5);
Vedete anche
floor (metodo Math.floor), round (metodo Math.round)
cos (metodo Math.cos)
public static cos(x:Number) : Number
Calcola e restituisce il coseno dell'angolo specificato, espresso in radianti. Per calcolare un radiante, consultare la
descrizione della classe Math.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero che rappresenta un angolo misurato in radianti.
Restituisce
Number - Un numero compreso tra -1,0 e 1,0.
Esempio
Nell'esempio seguente viene visualizzato il coseno per numerosi angoli diversi.
trace
trace
trace
trace
(Math.cos(0)); // 0 degree angle. Output: 1
(Math.cos(Math.PI/2)); // 90 degree angle. Output: 6.12303176911189e-17
(Math.cos(Math.PI)); // 180 degree angle. Output: -1
(Math.cos(Math.PI*2)); // 360 degree angle. Output: 1
Nota: il coseno di un angolo di 90 gradi è pari a zero; tuttavia, a causa dell'imprecisione intrinseca dei calcoli decimali
basati su numeri binari, il player Flash Lite restituisce un numero molto vicino ma non esattamente uguale a zero.
Vedete anche
acos (metodo Math.acos), asin (metodo Math.asin), atan (metodo Math.atan), atan2 (metodo
Math.atan2), sin (metodo Math.sin), tan (metodo Math.tan)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 362
Classi ActionScript
E (proprietà Math.E)
public static E : Number
Una costante matematica alla base dei logaritmi naturali, espressa come e. Il valore approssimativo di e è
2,71828182845905.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene illustrato l'uso di Math.E per calcolare l'interesse composto continuo per un semplice caso di
interesse del 100% su un periodo di un anno.
var principal:Number = 100;
var simpleInterest:Number = 100;
var continuouslyCompoundedInterest:Number = (100 * Math.E) - principal;
trace ("Beginning principal: $" + principal);
trace ("Simple interest after one year: $" + simpleInterest);
trace ("Continuously compounded interest after one year: $" + continuouslyCompoundedInterest);
//
Output:
Beginning principal: $100
Simple interest after one year: $100
Continuously compounded interest after one year: $171.828182845905
exp (metodo Math.exp)
public static exp(x:Number) : Number
Restituisce il valore della base del logaritmo naturale (e), elevato alla potenza dell'esponente specificato nel parametro
x. La costante Math.E può fornire il valore di e.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - L'esponente; un numero o un'espressione.
Restituisce
Number - Un numero.
Esempio
Nell'esempio seguente viene visualizzato il logaritmo per due valori numerici.
trace(Math.exp(1)); // output: 2.71828182845905
trace(Math.exp(2)); // output: 7.38905609893065
Vedete anche
E (proprietà Math.E)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 363
Classi ActionScript
floor (metodo Math.floor)
public static floor(x:Number) : Number
Restituisce il valore floor (letteralmente, pavimento) del numero o dell'espressione specificata nel parametro x. Il
valore floor è il primo intero inferiore o uguale al numero o all'espressione specificata.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione.
Restituisce
Number - Il numero intero minore o uguale più vicino al parametro x.
Esempio
Il codice seguente restituisce il valore 12:
Math.floor(12.5);
Il codice seguente restituisce il valore -7:
Math.floor(-6.5);
LN10 (proprietà Math.LN10)
public static LN10 : Number
Una costante matematica per il logaritmo naturale di 10, espressa come loge10, con un valore approssimativo pari a
2,302585092994046.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene analizzato il valore di Math.LN10.
trace(Math.LN10);
// output: 2.30258509299405
LN2 (proprietà Math.LN2)
public static LN2 : Number
Una costante matematica per il logaritmo naturale di 2, espressa come loge2, con un valore approssimativo pari a
0,6931471805599453.
Disponibilità
Flash Lite 2.0
log (metodo Math.log)
public static log(x:Number) : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 364
Classi ActionScript
Restituisce il logaritmo naturale del parametro x.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione con un valore maggiore di 0.
Restituisce
Number - Il logaritmo naturale del parametro x.
Esempio
Nell'esempio seguente viene visualizzato il logaritmo per tre valori numerici.
trace(Math.log(0)); // output: -Infinity
trace(Math.log(1)); // output: 0
trace(Math.log(2)); // output: 0.693147180559945
trace(Math.log(Math.E)); // output: 1
LOG10E (proprietà Math.LOG10E)
public static LOG10E : Number
Una costante matematica per il logaritmo a base 10 della costante e (Math.E), espressa come log10e, con un valore
approssimativo pari a 0,4342944819032518.
Il metodo Math.log() calcola il logaritmo naturale di un numero. La moltiplicazione del risultato di Math.log() per
Math.LOG10E consente di ottenere il logaritmo a base 10.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene illustrato come ottenere il logaritmo a base 10 di un numero:
trace(Math.log(1000) * Math.LOG10E);
// Output: 3
LOG2E (proprietà Math.LOG2E)
public static LOG2E : Number
Una costante matematica per il logaritmo a base 2 della costante e (Math.E), espressa come log2e, con un valore
approssimativo pari a 1.442695040888963387.
Il metodo Math.log() calcola il logaritmo naturale di un numero. La moltiplicazione del risultato di Math.log() per
Math.LOG2E consente di ottenere il logaritmo a base 2.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 365
Classi ActionScript
Esempio
In questo esempio viene illustrato come ottenere il logaritmo a base 2 di un numero:
trace(Math.log(16) * Math.LOG2E);
// Output: 4
max (metodo Math.max)
public static max(x:Number, y:Number) : Number
Valuta x e y e restituisce il valore maggiore.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione.
y:Number - Un numero o un'espressione.
Restituisce
Number - Un numero.
Esempio
Nell'esempio che segue viene visualizzato Thu Dec 30 00:00:00 GMT-0700 2004, che corrisponde alla maggiore
delle espressioni valutate.
var date1:Date = new Date(2004, 11, 25);
var date2:Date = new Date(2004, 11, 30);
var maxDate:Number = Math.max(date1.getTime(), date2.getTime());
trace(new Date(maxDate).toString());
Vedete anche
min (metodo Math.min)
min (metodo Math.min)
public static min(x:Number, y:Number) : Number
Valuta x e y e restituisce il valore minore.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione.
y:Number - Un numero o un'espressione.
Restituisce
Number - Un numero.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 366
Classi ActionScript
Esempio
Nell'esempio che segue viene visualizzato Sat Dec 25 00:00:00 GMT-0700 2004, che corrisponde alla minore delle
espressioni valutate.
var date1:Date = new Date(2004, 11, 25);
var date2:Date = new Date(2004, 11, 30);
var minDate:Number = Math.min(date1.getTime(), date2.getTime());
trace(new Date(minDate).toString());
Vedete anche
max (metodo Math.max)
PI (proprietà Math.PI)
public static PI : Number
Una costante matematica per il rapporto tra la circonferenza di un cerchio e il suo diametro, espressa come pi e con
un valore pari a 3,141592653589793.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene disegnato un cerchio utilizzando la costante matematica pi e l'API di disegno.
drawCircle(this, 100, 100, 50);
//
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.lineStyle(2, 0xFF0000, 100);
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
pow (metodo Math.pow)
public static pow(x:Number, y:Number) : Number
Calcola e restituisce x elevato alla potenza di y.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero da elevare a potenza.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 367
Classi ActionScript
y:Number - Un numero che specifica la potenza alla quale viene elevato il parametro x.
Restituisce
Number - Un numero.
random (metodo Math.random)
public static random() : Number
Restituisce un numero pseudo-casuale n, dove 0 <= n < 1. Il numero restituito viene definito pseudo-casuale poiché
non è generato da un fenomeno naturale realmente casuale, ad esempio il decadimento radioattivo.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero.
Esempio
Nell'esempio seguente vengono generati 100 numeri interi casuali compresi tra 4 e 11 (inclusi):
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
return randomNum;
}
for (var i = 0; i < 100; i++) {
var n:Number = randRange(4, 11)
trace(n);
}
round (metodo Math.round)
public static round(x:Number) : Number
Arrotonda il valore del parametro x al numero intero più vicino per eccesso o per difetto e restituisce il valore. Se il
parametro x è equidistante dai due numeri interi più vicini (ovvero termina con ,5), il valore viene arrotondato al
numero intero più alto.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero.
Restituisce
Number - Un numero; un valore intero.
Esempio
Nell'esempio seguente viene restituito un numero casuale compreso tra due numeri interi specificati.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 368
Classi ActionScript
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.round(Math.random() * (max-min+1) + (min-.5));
return randomNum;
}
for (var i = 0; i<25; i++) {
trace(randRange(4, 11));
}
Vedete anche
ceil (metodo Math.ceil), floor (metodo Math.floor)
sin (metodo Math.sin)
public static sin(x:Number) : Number
Calcola e restituisce il seno dell'angolo specificato, espresso in radianti. Per calcolare un radiante, consultare la
descrizione della classe Math.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero che rappresenta un angolo misurato in radianti.
Restituisce
Number - Un numero; il seno dell'angolo specificato (compreso tra -1 e 1).
Esempio
Nell'esempio seguente viene disegnato un cerchio utilizzando la costante matematica pi, il seno di un angolo e l'API di
disegno.
drawCircle(this, 100, 100, 50);
//
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.lineStyle(2, 0xFF0000, 100);
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
Vedete anche
acos (metodo Math.acos), asin (metodo Math.asin), atan (metodo Math.atan), atan2 (metodo
Math.atan2), cos (metodo Math.cos), tan (metodo Math.tan)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 369
Classi ActionScript
sqrt (metodo Math.sqrt)
public static sqrt(x:Number) : Number
Calcola e restituisce la radice quadrata del numero specificato.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero o un'espressione maggiore o uguale a 0.
Restituisce
Number - Un numero se il parametro x è superiore o uguale a zero; NaN (not a number) in caso contrario.
SQRT1_2 (proprietà Math.SQRT1_2)
public static SQRT1_2 : Number
Una costante matematica per la radice quadrata di un mezzo, con un valore approssimativo pari a
0,7071067811865476.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene analizzato il valore di Math.SQRT1_2.
trace(Math.SQRT1_2);
// Output: 0.707106781186548
SQRT2 (proprietà Math.SQRT2)
public static SQRT2 : Number
Una costante matematica per la radice quadrata di 2, con un valore approssimativo pari a 1,4142135623730951.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene analizzato il valore di Math.SQRT2.
trace(Math.SQRT2);
// Output: 1.4142135623731
tan (metodo Math.tan)
public static tan(x:Number) : Number
Calcola e restituisce la tangente dell'angolo specificato. Per calcolare un radiante, utilizzare le informazioni presenti
nell'introduzione alla classe Math.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 370
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero che rappresenta un angolo misurato in radianti.
Restituisce
Number - Un numero; la tangente del parametro x.
Esempio
Nell'esempio seguente viene disegnato un cerchio utilizzando la costante matematica pi, la tangente di un angolo e
l'API di disegno.
drawCircle(this, 100, 100, 50);
//
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.lineStyle(2, 0xFF0000, 100);
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x, Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
Vedete anche
acos (metodo Math.acos), asin (metodo Math.asin), atan (metodo Math.atan), atan2 (metodo
Math.atan2), cos (metodo Math.cos), sin (metodo Math.sin)
Matrix (flash.geom.Matrix)
Object
|
+-flash.geom.Matrix
public class Matrix
extends Object
La classe flash.geom.Matrix rappresenta una matrice di trasformazione che determina come mappare punti da uno
spazio di coordinate a un altro. Se si impostano le proprietà di un oggetto Matrix e si applicano a un oggetto MovieClip
o BitmapData, è possibile eseguire diverse trasformazioni grafiche sull'oggetto. Queste funzioni di trasformazione
includono conversione (riposizionamento di x e y), rotazione, modifica in scala e inclinazione.
Questi tipi di trasformazioni sono noti collettivamente come trasformazioni affini. Le trasformazioni affini
mantengono la rettilineità delle linee durante la trasformazione e le linee parallele rimangono tali.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 371
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Per applicare una matrice di trasformazione a un clip filmato, create un oggetto flash.geom.Transform e impostate la
matrice di trasformazione come proprietà Matrix. Gli oggetti Matrix vengono inoltre utilizzati come parametri di
alcuni metodi, ad esempio il metodo draw() della classe flash.display.BitmapData.
Un oggetto matrice di trasformazione viene considerato come una matrice 3 per 3 con il contenuto seguente:
Nelle matrici di trasformazione tradizionali, le proprietà u, v e w offrono funzioni supplementari. La classe Matrix
funziona solo in spazi bidimensionali e, pertanto, i valori delle proprietà u e v sono sempre considerati pari a 0.0 e il
valore della proprietà w è sempre 1.0. In altri termini, i valori effettivi della matrice sono i seguenti:
È possibile ottenere e impostare i valori di tutte le altre sei proprietà di un oggetto Matrix, ovvero a, b, c, d, tx ety.
La classe Matrix supporta i quattro principali tipi di trasformazioni: traslazione, modifica in scala, rotazione e
inclinazione. Per tre di queste funzioni sono disponibili metodi specializzati, descritti nella tabella seguente.
Trasformazione
Metodo
Conversione
(spostamento)
translate(tx, ty)
Valori di Matrix
Risultato
visualizzato
Descrizione
Sposta i pixel tx
dell'immagine a
destra e i pixel ty
in basso.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 372
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Trasformazione
Metodo
Valori di Matrix
Risultato
visualizzato
Descrizione
Modifica in scala
scale(sx, sy)
Ridimensiona
l'immagine,
moltiplicando la
posizione di ogni
pixel per sx
sull'asse x e per sy
sull'asse y.
Rotazione
rotate(q)
Ruota l'immagine
di un angolo q,
che viene
misurato in
radianti
Inclinazione o
ritaglio
Nessuno; è necessario
impostare le proprietà b
e c.
Fa scorrere
progressivamente
l'immagine in una
direzione parallela
all'asse x o y. Il
valore skx agisce
come
moltiplicatore che
controlla la
distanza di
scorrimento lungo
l'asse x, mentre
sky controlla la
distanza di
scorrimento lungo
l'asse y.
Ogni funzione di trasformazione modifica le proprietà correnti della matrice e consente così di combinare
efficacemente più trasformazioni. A tale scopo, chiamare più funzioni di trasformazione prima di applicare la matrice
al relativo clip filmato o alla bitmap target.
Disponibilità
Flash Lite 3.1
Vedete anche
transform (proprietà MovieClip.transform), Transform (flash.geom.Transform), draw (metodo
BitmapData.draw), a (proprietà Matrix.a), b (proprietà Matrix.b), c (proprietà Matrix.c), d
(proprietà Matrix.d), tx (proprietà Matrix.tx), ty (proprietà Matrix.ty), translate (metodo
Matrix.translate), scale (metodo Matrix.scale), rotate (metodo Matrix.rotate)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 373
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
a:Number
Il valore nella prima riga e nella prima colonna dell'oggetto Matrix,
che incide sul posizionamento dei pixel lungo l'asse x quando
un'immagine viene modificata in scala o ruotata.
b:Number
Il valore nella prima riga e nella seconda colonna dell'oggetto
Matrix, che incide sul posizionamento dei pixel lungo l'asse y
quando un'immagine viene ruotata o inclinata.
c :Number
Il valore nella seconda riga e nella prima colonna dell'oggetto
Matrix, che incide sul posizionamento dei pixel lungo l'asse x
quando un'immagine viene ruotata o inclinata.
d:Number
Il valore nella seconda riga e nella seconda colonna dell'oggetto
Matrix, che incide sul posizionamento dei pixel lungo l'asse y
quando un'immagine viene modificata in scala o ruotata.
tx:Number
La distanza in base alla quale viene convertito ogni punto lungo
l'asse x.
ty:Number
La distanza in base alla quale viene convertito ogni punto lungo
l'asse y.
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Matrix([a:Number,
[b:Number],
[c:Number],
[d:Number],
[tx:Number],
[ty:Number])
Crea un nuovo oggetto Matrix con i parametri specificati.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
clone(): Matrix
Restituisce un nuovo oggetto Matrix, clone di questa matrice, con
una copia esatta dell'oggetto contenuto.
concat(m:Matrix) :
Concatena una matrice con la matrice corrente, combinando gli
effetti geometrici delle due matrici.
Void
createBox(scaleX:Num
ber,
scaleY:Number,[rota
tion:Number],[tx:Nu
mber], [ty:Number])
Comprende parametri per la modifica in scala, la rotazione e la
conversione.
: Void
createGradientBox(widt
h:Number,
height:Number,[rota
tion:Number],[tx:Nu
mber],[ty:Number:])
: Void
Crea lo stile di matrice specifico previsto dal metodo
MovieClip.beginGradientFill().
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 374
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
deltaTransformPoint(pt:
Point) :Point
Dato un punto nello spazio di coordinate pre-trasformazione,
questo metodo restituisce le coordinate di tale punto dopo
l'avvenuta trasformazione.
identity() : Void
Imposta ogni proprietà della matrice su un valore tale per cui un
clip filmato o un costrutto geometrico trasformato risulti identico
all'originale.
invert() : Void
Esegue la trasformazione opposta rispetto alla matrice originale.
rotate(angle:Number)
: Void
Imposta i valori della matrice corrente in modo che possa essere
utilizzata per applicare una trasformazione di rotazione.
scale(sx:Number,
sy:Number) : Void
Modifica una matrice in modo tale che, una volta applicata, abbia
come effetto il ridimensionamento di un'immagine.
toString() : String
Restituisce un valore di testo che elenca le proprietà dell'oggetto
Matrix.
transformPoint(pt:Point
):Point
Applica al punto specificato la trasformazione geometrica
rappresentata dall'oggetto Matrix.
translate(tx:Number,
ty:Number) : Void
Modifica un oggetto Matrix in modo tale che la sua trasformazione
abbia come effetto lo spostamento di un oggetto lungo gli assi x e
y.
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
a (proprietà Matrix.a)
public a : Number
Il valore nella prima riga e nella prima colonna dell'oggetto Matrix, che incide sul posizionamento dei pixel lungo l'asse
x quando un'immagine viene modificata in scala o ruotata.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore a.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.a); // 1
myMatrix.a = 2;
trace(myMatrix.a); // 2
b (proprietà Matrix.b)
public b : Number
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 375
Classi ActionScript
Il valore nella prima riga e nella seconda colonna dell'oggetto Matrix, che incide sul posizionamento dei pixel lungo
l'asse y quando un'immagine viene ruotata o inclinata.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore b.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.b); // 0
var degrees:Number = 45;
var radians:Number = (degrees/180) Math.PI;
myMatrix.b = radians;
trace(myMatrix.b); // 0.785398163397448
c (proprietà Matrix.c)
public c : Number
Il valore nella seconda riga e nella prima colonna dell'oggetto Matrix, che incide sul posizionamento dei pixel lungo
l'asse x quando un'immagine viene ruotata o inclinata.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore c.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.c); // 0
var degrees:Number = 45;
var radians:Number = (degrees/180) Math.PI;
myMatrix.c = radians;
trace(myMatrix.c); // 0.785398163397448
clone (metodo Matrix.clone)
public clone() : Matrix
Restituisce un nuovo oggetto Matrix, clone di questa matrice, con una copia esatta dell'oggetto contenuto.
Disponibilità
Flash Lite 3.1
Restituisce
Matrix - Un oggetto Matrix.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 376
Classi ActionScript
Esempio
Nell'esempio seguente viene creata la variabile clonedMatrix dalla variabile myMatrix. La classe Matrix non dispone
di un metodo equals; quindi, per verificare l'uguaglianza di due matrici, nell'esempio seguente viene utilizzata una
funzione personalizzata.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix(2, 0, 0, 2, 0, 0);
var clonedMatrix:Matrix = new Matrix();
trace(myMatrix); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
trace(clonedMatrix); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
trace(equals(myMatrix, clonedMatrix)); // false
clonedMatrix = myMatrix.clone();
trace(myMatrix); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
trace(clonedMatrix); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
trace(equals(myMatrix, clonedMatrix)); // true
function equals(m1:Matrix, m2:Matrix):Boolean {
return m1.toString() == m2.toString();
}
concat (metodo Matrix.concat)
public concat(m:Matrix) : Void
Concatena una matrice con la matrice corrente, combinando gli effetti geometrici delle due matrici. In termini
matematici, il concatenamento di due matrici equivale alla loro combinazione mediante la moltiplicazione di matrici.
Per esempio, se la matrice m1 modifica in scala un oggetto di un fattore quattro e la matrice m2 ruota un oggetto di
1,5707963267949 radianti (Math.PI/2), m1.concat(m2) trasforma m1 in una matrice che modifica in scala un oggetto
di un fattore quattro e ruota l'oggetto di Math.PI/2 radianti.
Questo metodo sostituisce la matrice di origine con la matrice concatenata. Se si desidera concatenare due matrici
senza modificare le due matrici di origine, copiare la matrice di origine utilizzando il metodo clone() illustrato nella
sezione relativa agli esempi.
Disponibilità
Flash Lite 3.1
Parametri
m:Matrix - La matrice da concatenare alla matrice di origine.
Esempio
Nell'esempio seguente vengono create tre matrici che definiscono le trasformazioni per tre clip filmato di tipo
rettangolo. Le due prime matrici rotate45Matrix e doubleScaleMatrixvengono applicate ai due rettangoli
rectangleMc_1 e rectangleMc_2. Viene quindi creata la terza matrice usando il metodo concat() su
rotate45Matrix e doubleScaleMatrix per creare scaleAndRotateMatrix. Questa matrice viene quindi applicata
all'oggetto rectangleMc_3, che viene modificato in scala e ruotato.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 377
Ultimo aggiornamento 4/5/2010
Classi ActionScript
import flash.geom.Matrix;
import flash.geom.Transform;
var
var
var
var
rectangleMc_0:MovieClip
rectangleMc_1:MovieClip
rectangleMc_2:MovieClip
rectangleMc_3:MovieClip
=
=
=
=
createRectangle(20,
createRectangle(20,
createRectangle(20,
createRectangle(20,
80,
80,
80,
80,
0x000000);
0xFF0000);
0x00FF00);
0x0000FF);
var rectangleTrans_1:Transform = new Transform(rectangleMc_1);
var rectangleTrans_2:Transform = new Transform(rectangleMc_2);
var rectangleTrans_3:Transform = new Transform(rectangleMc_3);
var rotate45Matrix:Matrix = new Matrix();
rotate45Matrix.rotate(Math.PI/4);
rectangleTrans_1.matrix = rotate45Matrix;
rectangleMc_1._x = 100;
trace(rotate45Matrix.toString()); // (a=0.707106781186548, b=0.707106781186547, c=0.707106781186547, d=0.707106781186548, tx=0, ty=0)
var doubleScaleMatrix:Matrix = new Matrix();
doubleScaleMatrix.scale(2, 2);
rectangleTrans_2.matrix = doubleScaleMatrix;
rectangleMc_2._x = 200;
trace(doubleScaleMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
var scaleAndRotateMatrix:Matrix = doubleScaleMatrix.clone();
scaleAndRotateMatrix.concat(rotate45Matrix);
rectangleTrans_3.matrix = scaleAndRotateMatrix;
rectangleMc_3._x = 300;
trace(scaleAndRotateMatrix.toString()); // (a=1.4142135623731, b=1.41421356237309, c=1.41421356237309, d=1.4142135623731, tx=0, ty=0)
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
createBox (metodo Matrix.createBox)
public createBox(scaleX:Number, scaleY:Number, [rotation:Number], [tx:Number], [ty:Number]) : Void
Comprende parametri per la modifica in scala, la rotazione e la conversione. Quando viene applicato a una matrice,
ne imposta i valori in base a tali parametri.
Il metodo createBox() consente di ottenere la stessa matrice che si otterrebbe applicando in successione i metodi
identity(), rotate(), scale() e translate(). Ad esempio, mat1.createBox(2,2,Math.PI/5, 100, 100) ha
lo stesso effetto di:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 378
Classi ActionScript
import flash.geom.Matrix;
var mat1:Matrix = new Matrix();
mat1.identity();
mat1.rotate(Math.PI/4);
mat1.scale(2,2);
mat1.translate(10,20);
Disponibilità
Flash Lite 3.1
Parametri
scaleX:Number - Il fattore di modifica in scala orizzontale.
scaleY:Number - Il fattore di modifica in scala verticale.
rotation:Number [opzionale] - L'angolo di rotazione, espresso in radianti. Il valore predefinito è 0.
tx:Number [opzionale] - Il numero di pixel per la traslazione (spostamento) a destra lungo l'asse x. Il valore
predefinito è 0.
ty:Number [opzionale] - Il numero di pixel per la traslazione (spostamento) in basso lungo l'asse y. Il valore
predefinito è 0.
Esempio
Nell'esempio seguente vengono impostati la scala scaleX, scaleY, la rotazione, la posizione x e la posizione y di
myMatrix chiamando il relativo metodo createBox().
import flash.geom.Matrix;
import flash.geom.Transform;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.createBox(1, 2, Math.PI/4, 100, 200);
trace(myMatrix.toString()); // (a=0.707106781186548, b=1.41421356237309, c=0.707106781186547, d=1.4142135623731, tx=100, ty=200)
var rectangleMc:MovieClip = createRectangle(20, 80, 0xFF0000);
var rectangleTrans:Transform = new Transform(rectangleMc);
rectangleTrans.matrix = myMatrix;
createGradientBox (metodo Matrix.createGradientBox)
public createGradientBox(width:Number, height:Number, [rotation:Number], [tx:Number],
[ty:Number]) : Void
Crea lo stile di matrice specifico previsto dal metodo MovieClip.beginGradientFill(). La larghezza e l'altezza
vengono modificate in scala in base alla coppia scaleX/scaleY e i valori tx/ty vengono spostati della metà della
larghezza e dell'altezza.
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 379
Classi ActionScript
Parametri
width:Number - La larghezza del riquadro del gradiente.
height:Number - L'altezza del riquadro del gradiente.
rotation:Number [opzionale] - L'angolo di rotazione, espresso in radianti. Il valore predefinito è 0.
tx:Number [opzionale] - Il numero di pixel per la traslazione (spostamento) a destra lungo l'asse x. Questo valore
viene spostato di metà del parametro width. Il valore predefinito è 0.
ty:Number [opzionale] - Il numero di pixel per la traslazione (spostamento) in basso lungo l'asse y. Questo valore
viene spostato di metà del parametro height. Il valore predefinito è 0.
Esempio
Nell'esempio seguente viene utilizzato myMatrix come parametro del metodo beginGradientFill() dell'oggetto
MovieClip.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.createGradientBox(200, 200, 0, 50, 50);
trace(myMatrix.toString()); // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
var colors:Array = [0xFF0000, 0x0000FF];
var alphas:Array = [100, 100];
var ratios:Array = [0, 0xFF];
mc.beginGradientFill("linear", colors, alphas, ratios, myMatrix);
mc.lineTo(0, 300);
mc.lineTo(300, 300);
mc.lineTo(300, 0);
mc.lineTo(0, 0);
Vedete anche
beginGradientFill (metodo MovieClip.beginGradientFill)
d (proprietà Matrix.d)
public d : Number
Il valore nella seconda riga e nella seconda colonna dell'oggetto Matrix, che incide sul posizionamento dei pixel lungo
l'asse y quando un'immagine viene modificata in scala o ruotata.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore d.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 380
Classi ActionScript
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.d); // 1
myMatrix.d = 2;
trace(myMatrix.d); // 2
deltaTransformPoint (metodo Matrix.deltaTransformPoint)
public deltaTransformPoint(pt:Point) : Point
Dato un punto nello spazio di coordinate pre-trasformazione, questo metodo restituisce le coordinate di tale punto
dopo l'avvenuta trasformazione. A differenza della trasformazione standard applicata mediante il metodo
transformPoint(), la trasformazione del metodo deltaTransformPoint() non prende in considerazione i parametri di
conversione tx e ty.
Disponibilità
Flash Lite 3.1
Parametri
pt:Point - Un oggetto Point.
Restituisce
Point - Il nuovo oggetto Point.
Esempio
Nell'esempio seguente viene utilizzato il metodo deltaTransformPoint() per creare deltaTransformedPoint da
myPoint. Nell'esempio, il metodo translate() non modifica la posizione del punto denominato
deltaTransformedPoint, Tuttavia, il metodo scale() modifica la posizione di quel punto. Aumenta il valore x del
punto di tre volte da 50 a 150.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 381
Classi ActionScript
import flash.geom.Matrix;
import flash.geom.Point;
var myMatrix:Matrix = new Matrix();
trace(myMatrix); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.translate(100, 0);
trace(myMatrix); // (a=1, b=0, c=0, d=1, tx=100, ty=0)
myMatrix.scale(3, 3);
trace(myMatrix); // (a=3, b=0, c=0, d=3, tx=300, ty=0)
var myPoint:Point = new Point(50,0);
trace(myPoint); // (50, 0)
var deltaTransformedPoint:Point = myMatrix.deltaTransformPoint(myPoint);
trace(deltaTransformedPoint); // (150, 0)
var pointMc_0:MovieClip = createRectangle(10, 10, 0xFF0000);
pointMc_0._x = myPoint.x;
var pointMc_1:MovieClip = createRectangle(10, 10, 0x00FF00);
pointMc_1._x = deltaTransformedPoint.x;
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
identity (metodo Matrix.identity)
public identity() : Void
Imposta ogni proprietà di matrice su un valore tale che un clip filmato o un costrutto geometrico trasformato risulti
identico all'originale.
Dopo la chiamata del metodo identity(), le proprietà della matrice risultante sono le seguenti: a =1, b =0, c =0,
d =1, tx =0, ty =0.
Nella notazione della matrice, la matrice di identità sarà simile alla seguente:
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 382
Classi ActionScript
Esempio
Nell'esempio seguente viene dimostrato che la chiamata del metodo identity() converte l'oggetto Matrix chiamante
in un oggetto Matrix identità. Il numero e i tipi di trasformazioni applicati precedentemente all'oggetto Matrix
originale sono irrilevanti. Se viene chiamato identity(), i valori di Matrix vengono convertiti in (a=1, b=0, c=0, d=1,
tx=0, ty=0).
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix(2, 0, 0, 2, 0 ,0);
trace(myMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
myMatrix.rotate(Math.atan(3/4));
trace(myMatrix.toString()); // (a=1.6, b=1.2, c=-1.2, d=1.6, tx=0, ty=0)
myMatrix.translate(100,200);
trace(myMatrix.toString()); // (a=1.6, b=1.2, c=-1.2, d=1.6, tx=100, ty=200)
myMatrix.scale(2, 2);
trace(myMatrix.toString()); // (a=3.2, b=2.4, c=-2.4, d=3.2, tx=200, ty=400)
myMatrix.identity();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
invert (metodo Matrix.invert)
public invert() : Void
Esegue la trasformazione opposta rispetto alla matrice originale. Per annullare la trasformazione eseguita con
l'applicazione della matrice originale è possibile applicare una matrice invertita a un oggetto.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato un oggetto halfScaleMatrix mediante la chiamata del metodo invert() di
doubleScaleMatrix; viene quindi dimostrato che le due matrici sono reciprocamente inverse, ovvero le matrici
annullano qualsiasi trasformazione eseguita dall'altra. Nell'esempio questa inversione viene illustrata mediante la
creazione di originalAndInverseMatrix, che equivale a.noScaleMatrix
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 383
Ultimo aggiornamento 4/5/2010
Classi ActionScript
import flash.geom.Matrix;
import flash.geom.Transform;
var
var
var
var
rectangleMc_0:MovieClip
rectangleMc_1:MovieClip
rectangleMc_2:MovieClip
rectangleMc_3:MovieClip
=
=
=
=
var
var
var
var
rectangleTrans_0:Transform
rectangleTrans_1:Transform
rectangleTrans_2:Transform
rectangleTrans_3:Transform
createRectangle(20,
createRectangle(20,
createRectangle(20,
createRectangle(20,
=
=
=
=
new
new
new
new
80,
80,
80,
80,
0xFF0000);
0x00FF00);
0x0000FF);
0x000000);
Transform(rectangleMc_0);
Transform(rectangleMc_1);
Transform(rectangleMc_2);
Transform(rectangleMc_3);
var doubleScaleMatrix:Matrix = new Matrix(2, 0, 0, 2, 0, 0);
rectangleTrans_0.matrix = doubleScaleMatrix;
trace(doubleScaleMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
var noScaleMatrix:Matrix = new Matrix(1, 0, 0, 1, 0, 0);
rectangleTrans_1.matrix = noScaleMatrix;
rectangleMc_1._x = 100;
trace(noScaleMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var halfScaleMatrix:Matrix = doubleScaleMatrix.clone();
halfScaleMatrix.invert();
rectangleTrans_2.matrix = halfScaleMatrix;
rectangleMc_2._x = 200;
trace(halfScaleMatrix.toString()); // (a=0.5, b=0, c=0, d=0.5, tx=0, ty=0)
var originalAndInverseMatrix:Matrix = doubleScaleMatrix.clone();
originalAndInverseMatrix.concat(halfScaleMatrix);
rectangleTrans_3.matrix = originalAndInverseMatrix;
rectangleMc_3._x = 300;
trace(originalAndInverseMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
Funzione di costruzione Matrix
public Matrix([a:Number], [b:Number], [c:Number], [d:Number], [tx:Number], [ty:Number])
Crea un nuovo oggetto Matrix con i parametri specificati. Nella notazione della matrice, le proprietà vengono
organizzate come segue:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 384
Classi ActionScript
Se non si specificano parametri per la nuova funzione di costruzione Matrix(), viene creata una "matrice identità" con
i valori seguenti:
a = 1
b = 0
c = 0
d = 1
tx = 0
ty = 0
Nella notazione della matrice, la matrice di identità sarà simile alla seguente:
Disponibilità
Flash Lite 3.1
Parametri
a:Number [opzionale] - Il valore nella prima riga e nella prima colonna del nuovo oggetto Matrix.
b:Number [opzionale] - Il valore nella prima riga e nella seconda colonna del nuovo oggetto Matrix.
c:Number [opzionale] - Il valore nella seconda riga e nella prima colonna del nuovo oggetto Matrix.
d:Number [opzionale] - Il valore nella seconda riga e nella seconda colonna del nuovo oggetto Matrix.
tx:Number [opzionale] - Il valore nella terza riga e nella prima colonna del nuovo oggetto Matrix.
ty:Number [opzionale] - Il valore nella terza riga e nella seconda colonna del nuovo oggetto Matrix.
Esempio
L'esempio seguente crea matrix_1 senza inviare alcun parametro alla funzione di costruzione Matrix e matrix_2
inviando invece dei parametri. L'oggetto Matrix matrix_1, creato senza parametri, è una matrice identità con i valori
(a=_1, b=0, c=0, d=1, tx=0, ty=0).
import flash.geom.Matrix;
var matrix_1:Matrix = new Matrix();
trace(matrix_1); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var matrix_2:Matrix = new Matrix(1, 2, 3, 4, 5, 6);
trace(matrix_2); // (a=1, b=2, c=3, d=4, tx=5, ty=6)
rotate (metodo Matrix.rotate)
public rotate(angle:Number) : Void
Imposta i valori della matrice corrente in modo che possa essere utilizzata per applicare una trasformazione di
rotazione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 385
Classi ActionScript
Il metodo rotate() modifica le proprietà a e d dell'oggetto Matrix. Nella notazione della matrice, viene visualizzato
come segue:
Disponibilità
Flash Lite 3.1
Parametri
angle:Number - L'angolo di rotazione in radianti.
Esempio
Nell'esempio seguente il metodo rotate() ruota rectangleMc di 30 gradi in senso orario. Se si applica myMatrix a
rectangleMc, il relativo valore _x viene reimpostato ed è possibile ripristinarlo manualmente a 100.
import flash.geom.Matrix;
import flash.geom.Transform;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var degrees:Number = 30;
var radians:Number = (degrees/180) Math.PI;
myMatrix.rotate(radians);
trace(myMatrix.toString()); // (a=0.866025403784439, b=0.5, c=-0.5, d=0.866025403784439,
tx=0, ty=0)
var rectangleMc:MovieClip = createRectangle(20, 80, 0xFF0000);
trace(rectangleMc._x); // 0
rectangleMc._x = 100;
trace(rectangleMc._x); // 100
var rectangleTrans:Transform = new Transform(rectangleMc);
rectangleTrans.matrix = myMatrix;
trace(rectangleMc._x); // 0
rectangleMc._x = 100;
trace(rectangleMc._x); // 100
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 386
Classi ActionScript
Nell'esempio precedente, per posizionare rectangleMc, viene utilizzata la proprietà _x dell'oggetto MovieClip. In
generale, l'uso di tecniche miste per il posizionamento di matrici non è considerata una pratica corretta. L'esempio
precedente, scritto correttamente, concatena una matrice di conversione a myMatrix per modificare la posizione
orizzontale di rectangleMc, come dimostrato nell'esempio seguente.
import flash.geom.Matrix;
import flash.geom.Transform;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var degrees:Number = 30;
var radians:Number = (degrees/180) * Math.PI;
myMatrix.rotate(radians);
trace(myMatrix.toString()); // (a=0.866025403784439, b=0.5, c=-0.5, d=0.866025403784439,
tx=0, ty=0)
var translateMatrix:Matrix = new Matrix();
translateMatrix.translate(100, 0);
myMatrix.concat(translateMatrix);
trace(myMatrix.toString()); // (a=0.866025403784439, b=0.5, c=-0.5, d=0.866025403784439,
tx=100, ty=0)
var rectangleMc:MovieClip = createRectangle(20, 80, 0xFF0000);
trace(rectangleMc._x); // 0
rectangleMc._x = 100;
trace(rectangleMc._x); // 100
var rectangleTrans:Transform = new Transform(rectangleMc);
rectangleTrans.matrix = myMatrix;
trace(rectangleMc._x); // 100
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
scale (metodo Matrix.scale)
public scale(sx:Number, sy:Number) : Void
Modifica una matrice in modo tale che, una volta applicata, abbia come effetto il ridimensionamento di un'immagine.
Nell'immagine ridimensionata la posizione di ogni pixel viene moltiplicata sull'asse x per sx e sull'asse y per sy.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 387
Classi ActionScript
Il metodo scale() modifica le proprietà a e d dell'oggetto Matrix. Nella notazione matriciale, viene visualizzato come
segue:
Disponibilità
Flash Lite 3.1
Parametri
sx:Number - Un moltiplicatore usato per la modifica in scala dell'oggetto lungo l'asse x.
sy:Number - Un moltiplicatore usato per la modifica in scala dell'oggetto lungo l'asse y.
Esempio
Nell'esempio seguente viene utilizzato il metodo scale() per modificare in scala myMatrix in base a un fattore 3
orizzontalmente e in base a un fattore 4 verticalmente.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix(2, 0, 0, 2, 100, 100);
trace(myMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=100, ty=100)
myMatrix.scale(3, 4);
trace(myMatrix.toString()); // (a=6, b=0, c=0, d=8, tx=300, ty=400)
toString (metodo Matrix.toString)
public toString() : String
Restituisce un valore di testo che elenca le proprietà dell'oggetto Matrix.
Disponibilità
Flash Lite 3.1
Restituisce
“String” a pagina 598 - Una stringa contenente i valori delle proprietà dell'oggetto Matrix: a, b, c, d, tx e ty.
Esempio
Nell'esempio seguente viene creata myMatrix e ne vengono convertiti i valori in una stringa nel formato (a=A, b=B,
c=C, d=D, tx=TX, ty=TY).
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace("myMatrix: " + myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
transformPoint (metodo Matrix.transformPoint)
public transformPoint(pt:Point) : Point
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 388
Classi ActionScript
Applica al punto specificato la trasformazione geometrica rappresentata dall'oggetto Matrix.
Disponibilità
Flash Lite 3.1
Parametri
pt:Point - L'oggetto Point (x,y) da trasformare.
Restituisce
Point (flash.geom.Point) - Il nuovo oggetto Point.
Esempio
Nell'esempio seguente viene utilizzato il metodo transformPoint() per creare transformedPoint da myPoint. Il
metodo translate() non influisce sulla posizione di transformedPoint. Nell'esempio, scale() aumenta il valore
x originale di tre volte da 50 a 150, mentre translate() aumenta x di 300 per un valore totale di 450.
import flash.geom.Matrix;
import flash.geom.Point;
var myMatrix:Matrix = new Matrix();
trace(myMatrix); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.translate(100, 0);
trace(myMatrix); // (a=1, b=0, c=0, d=1, tx=100, ty=0)
myMatrix.scale(3, 3);
trace(myMatrix); // (a=3, b=0, c=0, d=3, tx=300, ty=0)
var myPoint:Point = new Point(50,0);
trace(myPoint); // (50, 0)
var transformedPoint:Point = myMatrix.transformPoint(myPoint);
trace(transformedPoint); // (450, 0)
var pointMc_0:MovieClip = createRectangle(10, 10, 0xFF0000);
pointMc_0._x = myPoint.x;
var pointMc_1:MovieClip = createRectangle(10, 10, 0x00FF00);
pointMc_1._x = transformedPoint.x;
function createRectangle(width:Number, height:Number, color:Number):MovieClip {
var depth:Number = this.getNextHighestDepth();
var mc:MovieClip = this.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
translate (metodo Matrix.translate)
public translate(tx:Number, ty:Number) : Void
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 389
Classi ActionScript
Modifica un oggetto Matrix in modo tale che la sua trasformazione abbia come effetto lo spostamento di un oggetto
lungo gli assi x e y.
Il metodo translate() modifica le proprietà tx e ty dell'oggetto Matrix. Nella notazione matriciale, viene
visualizzato come segue:
Disponibilità
Flash Lite 3.1
Parametri
tx:Number - La quantità di spostamento a destra lungo l'asse x, espressa in pixel.
ty:Number - La quantità di spostamento in basso lungo l'asse y, espressa in pixel.
Esempio
L'esempio seguente usa il metodo translate() per posizionare rectangleMc in x:100 e y:50. Il metodo translate()
influisce sulle proprietà di traslazione tx e ty, ma non modifica le proprietà a, b, c o d.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix(2, 0, 0, 2, 100, 100);
trace(myMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=100, ty=100)
myMatrix.translate(100, 50);
trace(myMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=200, ty=150)
tx (proprietà Matrix.tx)
public tx : Number
La distanza in base alla quale viene convertito ogni punto lungo l'asse x. Rappresenta il valore nella terza riga e nella
prima colonna dell'oggetto Matrix.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore tx.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.tx); // 0
myMatrix.tx = 50; // 50
trace(myMatrix.tx);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 390
Classi ActionScript
ty (proprietà Matrix.ty)
public ty : Number
La distanza in base alla quale viene convertito ogni punto lungo l'asse y. Rappresenta il valore nella terza riga e nella
seconda colonna dell'oggetto Matrix.
Disponibilità
Flash Lite 3.1
Esempio
Nell'esempio seguente viene creato l'oggetto Matrix myMatrix, di cui viene impostato il valore ty.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.ty); // 0
myMatrix.ty = 50;
trace(myMatrix.ty); // 50
Mouse
Object
|
+-Mouse
public class Mouse
extends Object
La classe Mouse è una classe di primo livello di cui è possibile utilizzare metodi e proprietà senza ricorrere a una
funzione di costruzione. È possibile utilizzare i metodi della classe Mouse per aggiungere e rimuovere i listener e per
gestire gli eventi associati al mouse.
I membri di questa classe sono supportati in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 391
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo degli eventi
Evento
Descrizione
onMouseDown =
function() {}
Notificato quando viene premuto il pulsante del mouse.
onMouseMove =
Notificato allo spostamento del mouse.
function() {}
onMouseUp =
Notificato quando viene rilasciato il pulsante del mouse.
function() {}
Riepilogo dei metodi
Modificatori
Firma
Descrizione
static
addListener(listener:
Object) : Void
Registra un oggetto per ricevere le notifiche dei listener
onMouseDown, onMouseMove e onMouseUp.
static
removeListener(listene Rimuove un oggetto precedentemente registrato con
r:Object) : Boolean
addListener().
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString)unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
addListener (metodo Mouse.addListener)
public static addListener(listener:Object) : Void
Registra un oggetto per ricevere le notifiche dei listener onMouseDown, onMouseMove e onMouseUp.
Il parametro listener dovrebbe contenere un oggetto con un metodo definito per almeno un listener.
Quando si muove il mouse, lo si utilizza per lo scorrimento oppure se ne preme o rilascia il pulsante, a prescindere dal
fatto che il mouse sia attivo, per tutti gli oggetti "in ascolto" registrati con addListener() viene richiamato il metodo
onMouseDown, onMouseMove oppure onMouseUp. Più oggetti possono "ascoltare" le notifiche del mouse. Se il listener
è già registrato, non viene apportata alcuna modifica.
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Parametri
listener:Object
Esempio
Questo esempio invia la posizione del cursore alla finestra Output.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 392
Classi ActionScript
// Create a mouse listener object.
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
trace(_xmouse);
trace(_ymouse);
};
Mouse.addListener(mouseListener);
Vedete anche
onMouseDown (listener di eventi Mouse.onMouseDown), onMouseMove (listener di eventi
Mouse.onMouseMove), onMouseUp (listener di eventi Mouse.onMouseUp)
onMouseDown (listener di eventi Mouse.onMouseDown)
onMouseDown = function() {}
Notificato quando viene premuto il pulsante del mouse. Per utilizzare il listener onMouseDown, creare un oggetto
listener. Definire una funzione per onMouseDown e chiamare addListener() per registrare il listener con l'oggetto
Mouse, come illustrato nel codice seguente:
var someListener:Object = new Object();
someListener.onMouseDown = function () { ... };
Mouse.addListener(someListener);
I listener consentono a parti di codice diverse di cooperare, dal momento che più listener possono ricevere notifiche
relative allo stesso evento.
Questo listener di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene utilizzata l'API di disegno per disegnare un rettangolo ogni volta che l'utente preme il
pulsante del mouse, sposta il mouse, quindi ne rilascia il pulsante in fase di runtime.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 393
Classi ActionScript
this.createEmptyMovieClip("canvas_mc", this.getNextHighestDepth());
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
this.isDrawing = true;
this.orig_x = _xmouse;
this.orig_y = _ymouse;
this.target_mc = canvas_mc.createEmptyMovieClip("", canvas_mc.getNextHighestDepth());
};
mouseListener.onMouseMove = function() {
if (this.isDrawing) {
this.target_mc.clear();
this.target_mc.lineStyle(1, 0xFF0000, 100);
this.target_mc.moveTo(this.orig_x, this.orig_y);
this.target_mc.lineTo(_xmouse, this.orig_y);
this.target_mc.lineTo(_xmouse, _ymouse);
this.target_mc.lineTo(this.orig_x, _ymouse);
this.target_mc.lineTo(this.orig_x, this.orig_y);
}
updateAfterEvent();
};
mouseListener.onMouseUp = function() {
this.isDrawing = false;
};
Mouse.addListener(mouseListener);
Vedete anche
addListener (metodo Mouse.addListener)
onMouseMove (listener di eventi Mouse.onMouseMove)
onMouseMove = function() {}
Notificato allo spostamento del mouse. Per utilizzare il listener onMouseMove, creare un oggetto listener. Quindi è
possibile definire una funzione per onMouseMove e utilizzare addListener() per registrare il listener con l'oggetto
Mouse, come illustrato nell'esempio seguente:
var someListener:Object = new Object();
someListener.onMouseMove = function () { ... };
Mouse.addListener(someListener);
I listener consentono a parti di codice diverse di cooperare, dal momento che più listener possono ricevere notifiche
relative allo stesso evento.
Questo listener di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene utilizzato il puntatore del mouse per disegnare linee utilizzando onMouseMove e l'API di
disegno. L'utente disegna una linea spostando il puntatore.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 394
Classi ActionScript
this.createEmptyMovieClip("canvas_mc", this.getNextHighestDepth());
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
this.isDrawing = true;
canvas_mc.lineStyle(2, 0xFF0000, 100);
canvas_mc.moveTo(_xmouse, _ymouse);
};
mouseListener.onMouseMove = function() {
if (this.isDrawing) {
canvas_mc.lineTo(_xmouse, _ymouse);
}
updateAfterEvent();
};
mouseListener.onMouseUp = function() {
this.isDrawing = false;
};
Mouse.addListener(mouseListener);
L'esempio seguente imposta le posizioni x e y dell'istanza del clip filmato pointer_mc sulle posizioni x e y del
puntatore. Perché questo esempio funzioni, è necessario che il dispositivo supporti uno stilo o un mouse. Ai fini di
questo esempio, creare un clip filmato e impostarne l'identificatore di collegamento su pointer_id. Quindi,
aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
this.attachMovie("pointer_id", "pointer_mc", this.getNextHighestDepth());
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
pointer_mc._x = _xmouse;
pointer_mc._y = _ymouse;
};
Mouse.addListener(mouseListener);
Vedete anche
addListener (metodo Mouse.addListener)
onMouseUp (listener di eventi Mouse.onMouseUp)
onMouseUp = function() {}
Notificato quando viene rilasciato il pulsante del mouse. Per utilizzare il listener onMouseUp, creare un oggetto listener.
Quindi è possibile definire una funzione per onMouseUp e utilizzare addListener() per registrare il listener con
l'oggetto Mouse, come illustrato nell'esempio seguente:
var someListener:Object = new Object();
someListener.onMouseUp = function () { ... };
Mouse.addListener(someListener);
I listener consentono a parti di codice diverse di cooperare, dal momento che più listener possono ricevere notifiche
relative allo stesso evento.
Questo listener di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 395
Classi ActionScript
Esempio
Nell'esempio seguente viene utilizzato il puntatore del mouse per disegnare linee utilizzando onMouseMove e l'API di
disegno. L'utente disegna una linea spostando il puntatore e interrompe il disegno della linea rilasciando il pulsante
del mouse.
this.createEmptyMovieClip("canvas_mc", this.getNextHighestDepth());
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
this.isDrawing = true;
canvas_mc.lineStyle(2, 0xFF0000, 100);
canvas_mc.moveTo(_xmouse, _ymouse);
};
mouseListener.onMouseMove = function() {
if (this.isDrawing) {
canvas_mc.lineTo(_xmouse, _ymouse);
}
updateAfterEvent();
};
mouseListener.onMouseUp = function() {
this.isDrawing = false;
};
Mouse.addListener(mouseListener);
Vedete anche
addListener (metodo Mouse.addListener)
removeListener (metodo Mouse.removeListener)
public static removeListener(listener:Object) : Boolean
Rimuove un oggetto precedentemente registrato con addListener().
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Parametri
listener:Object
Restituisce
Boolean - Se l'oggetto listener viene rimosso correttamente, il metodo restituisce true; se invece il listener non viene
rimosso correttamente (ad esempio, se non faceva parte dell'elenco dei listener dell'oggetto Mouse), il metodo
restituisce false.
Esempio
Nell'esempio seguente vengono aggiunti tre pulsanti allo stage e viene consentito all'utente di disegnare linee in un file
SWF in fase di runtime per mezzo del puntatore del mouse. Un pulsante cancella tutte le linee dal file SWF, il secondo
pulsante rimuove il listener del mouse per impedire all'utente di disegnare linee e il terzo pulsante aggiunge il listener
del mouse, dopo che è stato rimosso, per consentire all'utente di disegnare nuovamente linee. Aggiungere il codice
ActionScript seguente al fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 396
Classi ActionScript
this.createClassObject(mx.controls.Button, "clear_button", this.getNextHighestDepth(),
{_x:10, _y:10, label:'clear'});
this.createClassObject(mx.controls.Button, "stopDrawing_button", this.getNextHighestDepth(),
{_x:120, _y:10, label:'stop drawing'});
this.createClassObject(mx.controls.Button, "startDrawing_button",
this.getNextHighestDepth(), {_x:230, _y:10, label:'start drawing'});
startDrawing_button.enabled = false;
//
this.createEmptyMovieClip("canvas_mc", this.getNextHighestDepth());
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
this.isDrawing = true;
canvas_mc.lineStyle(2, 0xFF0000, 100);
canvas_mc.moveTo(_xmouse, _ymouse);
};
mouseListener.onMouseMove = function() {
if (this.isDrawing) {
canvas_mc.lineTo(_xmouse, _ymouse);
}
updateAfterEvent();
};
mouseListener.onMouseUp = function() {
this.isDrawing = false;
};
Mouse.addListener(mouseListener);
var clearListener:Object = new Object();
clearListener.click = function() {
canvas_mc.clear();
};
clear_button.addEventListener("click", clearListener);
//
var stopDrawingListener:Object = new Object();
stopDrawingListener.click = function(evt:Object) {
Mouse.removeListener(mouseListener);
evt.target.enabled = false;
startDrawing_button.enabled = true;
};
stopDrawing_button.addEventListener("click", stopDrawingListener);
var startDrawingListener:Object = new Object();
startDrawingListener.click = function(evt:Object) {
Mouse.addListener(mouseListener);
evt.target.enabled = false;
stopDrawing_button.enabled = true;
};
startDrawing_button.addEventListener("click", startDrawingListener);
MovieClip
Object
|
+-MovieClip
public dynamic class MovieClip
extends Object
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 397
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Potete utilizzare la classe MovieClip per manipolare clip filmato con ActionScript. Per la classe MovieClip non è
disponibile alcuna funzione di costruzione. Per creare una nuova istanza di clip filmato, procedere in uno dei modi
seguenti:
• Trascinate un clip filmato nell'area Stage dello strumento di authoring Flash e assegnategli un nome di istanza nello
strumento Proprietà.
• Chiamate il metodo attachMovie() per creare una nuova istanza di clip filmato basata su un simbolo di clip
filmato esistente nella libreria.
• Chiamate createEmptyMovieClip() per creare una nuova istanza di clip filmato vuota come elemento secondario
di un altro clip filmato.
• Chiamate duplicateMovieClip() per creare un'istanza di clip filmato basata su un altro clip filmato.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
_alpha:Number
Il valore di trasparenza alfa del clip filmato.
_currentframe:Number
[sola lettura]
Restituisce il numero del fotogramma sulla linea temporale in
cui si trova l'indicatore di riproduzione.
_droptarget:String [sola
lettura]
Restituisce il percorso assoluto, espresso in notazione della
sintassi della barra, dell'istanza di clip filmato su cui è stato
rilasciato il clip filmato.
enabled:Boolean
Un valore booleano che indica se un clip filmato è attivo.
focusEnabled:Boolean
Se il valore è undefined o false, un clip filmato non può
essere attivato a meno che non si tratti di un pulsante.
_focusrect:Boolean
Un valore booleano che specifica se attorno a un clip filmato è
presente un rettangolo giallo quando viene attivato.
_framesloaded:Number
[sola lettura]
Il numero di fotogrammi caricati da un file SWF in streaming.
_height:Number
L'altezza del clip filmato, espressa in pixel.
_highquality:Number
Sconsigliata a partire da Flash Player 7. Questa proprietà è
stata sconsigliata a favore di MovieClip._quality.
Specifica il livello di antialiasing applicato al file SWF corrente.
hitArea:Object
_lockroot:Boolean
Definisce un altro clip filmato come area attiva di un clip
filmato.
Un valore booleano che specifica l'elemento a cui si riferisce
_root quando un file SWF viene caricato in un clip filmato.
_name:String
Il nome dell'istanza del clip filmato.
_parent:MovieClip
Un riferimento al clip filmato o all'oggetto che contiene il clip
filmato o l'oggetto corrente.
_quality:String
Imposta o recupera la qualità di rendering utilizzata per un file
SWF.
_rotation:Number
Specifica la rotazione del clip filmato, espressa in gradi,
rispetto alla posizione originale.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 398
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Proprietà
Descrizione
_soundbuftime:Number
Specifica il numero di secondi per cui un suono viene inserito
nel prebuffer prima che ne inizi lo streaming.
tabChildren:Boolean
Determina se gli elementi secondari di un clip filmato vengono
inclusi nell'ordine di tabulazione automatico.
tabEnabled:Boolean
Specifica se il clip filmato è incluso nell'ordine di tabulazione
automatico.
tabIndex:Number
Consente di personalizzare l'ordine di tabulazione degli
oggetti in un filmato.
_target:String [sola
lettura]
Restituisce il percorso di destinazione dell'istanza del clip
filmato in notazione della barra.
_totalframes:Number
[sola lettura]
Restituisce il numero totale di fotogrammi dell'istanza del clip
filmato specificata dal parametro MovieClip.
trackAsMenu:Boolean
Un valore booleano che indica se altri pulsanti o clip filmato
possono ricevere eventi associati al rilascio del mouse o dello
stilo.
_url:String [sola lettura]
Recupera l'URL del file SWF, JPEG, GIF o PNG da cui è stato
scaricato il clip filmato.
_visible:Boolean
Un valore booleano che indica se il clip filmato è visibile.
_width:Number
La larghezza del clip filmato, espressa in pixel.
_x:Number
Un numero intero che imposta la coordinata x di un clip
filmato rispetto alle coordinate locali del clip filmato
principale.
_xmouse:Number [sola
lettura]
Restituisce la coordinata x della posizione del mouse.
_xscale:Number
Imposta la scala orizzontale (in percentuale) del clip
filmato applicata dal punto di registrazione del clip filmato.
_y:Number
Imposta la coordinata y di un clip filmato rispetto alle
coordinate locali del clip filmato principale.
_ymouse:Number [sola
lettura]
Indica la coordinata y della posizione del mouse.
_yscale:Number
Imposta la scala verticale (in percentuale) del clip filmato
applicata dal punto di registrazione del clip filmato.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 399
Classi ActionScript
Riepilogo degli eventi
Evento
Descrizione
onData = function()
Richiamato quando un clip filmato riceve dati da una chiamata a
MovieClip.loadVariables() o MovieClip.loadMovie().
{}
onDragOut =
function() {}
Richiamato quando viene premuto il pulsante del mouse e il puntatore esce
dall'oggetto.
onDragOver =
function() {}
Richiamato quando il puntatore viene trascinato fuori dall'oggetto e successivamente
sopra di esso.
onEnterFrame =
Richiamato ripetutamente alla frequenza dei fotogrammi del file SWF.
function() {}
onKeyDown =
Richiamato quando un clip filmato è attivo e viene premuto un tasto.
function() {}
onKeyUp =
Richiamato quando viene rilasciato un tasto.
function() {}
onKillFocus =
Richiamato quando un clip filmato viene disattivato.
function(newFocus:
Object) {}
{}
Richiamato quando per il clip filmato viene creata un'istanza e il clip filmato viene
visualizzato nella linea temporale.
onMouseDown =
Richiamato quando viene premuto il pulsante del mouse.
onLoad = function()
function() {}
onMouseMove =
Richiamato allo spostamento del mouse.
function() {}
onMouseUp =
Richiamato quando viene rilasciato il pulsante del mouse.
function() {}
onPress = function()
{}
Richiamato quando si fa clic con il mouse mentre il puntatore si trova sopra un clip
filmato.
onRelease =
function() {}
Richiamato quando il pulsante del mouse viene rilasciato sopra un clip filmato.
onReleaseOutside =
function() {}
Richiamato quando il pulsante del mouse è stato premuto all'interno dell'area del clip
filmato e successivamente rilasciato al di fuori della stessa.
onRollOut =
Richiamato quando il puntatore viene spostato al di fuori dell'area del clip filmato.
function() {}
onRollOver =
Richiamato quando il puntatore viene spostato sopra l'area del clip filmato.
function() {}
onSetFocus =
Richiamato quando un clip filmato viene attivato.
function(oldFocus:
Object) {}
onUnload =
function() {}
Richiamato nel primo fotogramma dopo che il clip filmato è stato rimosso dalla linea
temporale.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 400
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo dei metodi
Modificatori
Firma
Descrizione
attachMovie(id:String,
name:String,
depth:Number,
[initObject:Object])
: MovieClip
Associa un simbolo dalla libreria al clip filmato.
beginFill(rgb:Number,
[alpha:Number]) :
Void
Indica l'inizio di un nuovo percorso di disegno.
beginGradientFill(fillT Indica l'inizio di un nuovo percorso di disegno.
ype:String,
colors:Array,
alphas:Array,
ratios:Array,
matrix:Object) : Void
clear() : Void
Rimuove tutti gli elementi grafici creati durante il runtime
mediante i metodi draw del clip filmato, compresi gli stili di
linea specificati con MovieClip.lineStyle().
createEmptyMovieClip(n
ame:String,
depth:Number) :
MovieClip
Crea un clip filmato vuoto come elemento secondario di un
clip filmato esistente.
createTextField(instanc
eName:String,
depth:Number,
x:Number, y:Number,
width:Number,
height:Number) :
Crea un nuovo campo di testo vuoto come elemento
secondario del clip filmato sul quale chiamate questo metodo.
TextField
curveTo(controlX:Num Disegna una curva con lo stile di linea corrente dalla posizione
ber,
di disegno corrente a (anchorX, anchorY) mediante il
controlY:Number,
punto di controllo specificato da (controlX, controlY).
anchorX:Number,
anchorY:Number) :
Void
duplicateMovieClip(name
:String,
depth:Number,
[initObject:Object])
: MovieClip
Crea un'istanza del clip filmato specificato mentre il file SWF è
in riproduzione.
endFill() : Void
Applica un riempimento alle linee e alle curve aggiunte
dall'ultima chiamata a beginFill() o
beginGradientFill().
getBounds(bounds:Obje Restituisce le proprietà che corrispondono ai valori minimi e
massimi delle coordinate x e y del clip filmato in base al
ct) : Object
parametro bounds.
getBytesLoaded() :
Number
Restituisce il numero di byte già caricati (in streaming) del clip
filmato.
getBytesTotal() :
Number
Restituisce le dimensioni, espresse in byte, del clip filmato.
getDepth() : Number
Restituisce la profondità dell'istanza di clip filmato.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 401
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
getInstanceAtDepth(dep
th:Number) :
MovieClip
Consente di determinare se una particolare profondità è già
occupata da un clip filmato.
getNextHighestDepth()
: Number
Consente di determinare un valore di profondità che potete
passare a MovieClip.attachMovie(),
MovieClip.duplicateMovieClip() o
MovieClip.createEmptyMovieClip() per garantire che il
clip filmato sia reso in primo piano rispetto a tutti gli altri
oggetti che si trovano allo stesso livello nel clip filmato
corrente.
getSWFVersion() :
Number
Restituisce un numero intero che indica la versione di
pubblicazione di Flash Lite per il clip filmato.
getURL(url:String,
[window:String],
[method:String]) :
Void
Carica nella finestra specificata un documento corrispondente
all'URL indicato.
globalToLocal(pt:Object
Converte le coordinate dello stage (globali) in quelle del clip
filmato (locali) per l'oggetto pt.
) : Void
gotoAndPlay(frame:Obj
ect) : Void
Avvia la riproduzione del file SWF dal fotogramma specificato.
gotoAndStop(frame:Obj Posiziona l'indicatore di riproduzione sul fotogramma
ect) : Void
specificato del clip filmato.
hitTest() : Boolean
Valuta il clip filmato per verificare se si sovrappone o interseca
l'area attiva identificata dai parametri target o delle
coordinate x e y.
lineStyle(thickness:Nu Specifica uno stile di linea utilizzato per chiamate successive ai
mber, rgb:Number,
metodi lineTo() e curveTo() fino a che non chiamate il
alpha:Number,
metodo lineStyle() con parametri diversi.
pixelHinting:Boolean
, noScale:String,
capsStyle:String,
jointStyle:String,
miterLimit:Number)
: Void
lineTo(x:Number,
y:Number) : Void
Disegna una linea con lo stile di linea corrente dalla posizione
di disegno corrente a (x, y); la posizione di disegno corrente
viene quindi impostata su (x, y).
loadMovie(url:String,
[method:String]) :
Carica i file SWF o JPEG in un clip filmato in Flash Lite mentre il
file SWF originale è in riproduzione.
Void
loadVariables(url:String Legge i dati da un file esterno e imposta i valori delle variabili
, [method:String]) :
nel clip filmato.
Void
localToGlobal(pt:Object
) : Void
Converte le coordinate del clip filmato (locali) in quelle dello
stage (globali) per l'oggetto pt
moveTo(x:Number,
y:Number) : Void
Sposta la posizione di disegno corrente nel punto (x, y).
nextFrame() : Void
Invia l'indicatore di riproduzione al fotogramma successivo e lo
ferma.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 402
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Modificatori
Firma
Descrizione
play() : Void
Sposta l'indicatore di riproduzione nella linea temporale del
clip filmato.
prevFrame() : Void
Invia l'indicatore di riproduzione al fotogramma precedente e
lo ferma.
removeMovieClip() :
Rimuove un'istanza del clip filmato creata con
duplicateMovieClip(),
MovieClip.duplicateMovieClip(),
MovieClip.createEmptyMovieClip() o
MovieClip.attachMovie().
Void
setMask(mc:Object) :
Void
startDrag([lockCenter
:Boolean],
[left:Number],
[top:Number],
[right:Number],
[bottom:Number]) :
Il clip filmato del parametro mc viene reso come una maschera
che rivela il clip filmato chiamante.
Consente all'utente di trascinare il clip filmato specificato.
Void
stop() : Void
Interrompe il clip filmato in riproduzione.
stopDrag() : Void
Termina una chiamata al metodo MovieClip.startDrag().
swapDepths(target:Ob Scambia l'impilamento, detto anche livello di profondità (zject) : Void
order), di questo clip filmato con il clip filmato specificato dal
parametro target o con il clip filmato che occupa il livello di
profondità specificato nel parametro target.
unloadMovie() : Void
Rimuove il contenuto di un'istanza di clip filmato.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
_alpha (MovieClip._alpha, proprietà)
public _alpha : Number
Il valore di trasparenza alfa del clip filmato. I valori validi sono quelli compresi tra 0 (completamente trasparente) e
100 (completamente opaco). Il valore predefinito è 100. Gli oggetti di un clip filmato con _alpha impostato su 0 sono
attivi, anche se sono invisibili. Ad esempio, è sempre possibile fare clic su un pulsante di un clip filmato la cui proprietà
_alpha è impostata su 0. Per disabilitare completamente il pulsante, è possibile impostare su false la proprietà
_visible del clip filmato.
Disponibilità
Flash Lite 2.0
Esempio
Il codice seguente imposta sul 50% la proprietà _alpha di un clip filmato denominato rect_mc quando si preme un
pulsante denominato my_btn.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 403
Classi ActionScript
my_btn.onPress = function(){
rect_mc._alpha =
50 ;
}
my_btn.onRelease = function(){
rect_mc._alpha = 100;
}
Vedete anche
_alpha (proprietà Button._alpha), _alpha (proprietà TextField._alpha), _visible (proprietà
MovieClip._visible)
attachBitmap (metodo MovieClip.attachBitmap)
public attachBitmap(bmp:BitmapData, depth:Number, [pixelSnapping:String],
[smoothing:Boolean]) : Void
Associa un'immagine bitmap a un clip filmato.
Dopo l'associazione della bitmap al clip filmato, viene stabilito un riferimento all'oggetto bitmap dal clip filmato.
Quando associate una bitmap, potete specificare i parametri pixelSnapping e smoothing per determinarne l'aspetto.
Dopo avere aggiunto una bitmap a un clip filmato, non è possibile accedere alla bitmap. I parametri depth.,
pixelSnapping e smoothing possono essere impostati solo durante la chiamata del metodo attachBitmap() e non
possono essere modificati successivamente.
Utilizzate innanzitutto createEmptyMovieClip() per creare un clip filmato vuoto, quindi utilizzare il metodo
attachBitmap(). In questo modo potete applicare trasformazioni al clip filmato per trasformare la bitmap, ad
esempio tramite la proprietà matrix del clip filmato.
L'aggancio ai pixel imposta la posizione della bitmap sul valore di pixel intero più vicino, evitando il posizionamento
su un pixel parziale. Sono disponibili tre modalità di aggancio ai pixel:
• La modalità di aggancio Automatico esegue l'aggancio ai pixel a condizione che la bitmap non sia allungata o
ruotata.
• La modalità di aggancio Sempre esegue sempre l'aggancio ai pixel, indipendentemente dall'allungamento e dalla
rotazione.
• La modalità Mai disattiva l'aggancio ai pixel per il clip filmato.
La modalità Smussatura incide sull'aspetto dell'immagine quando viene modificata in scala.
Parametri
bmp:flash.display.BitmapData - Un'immagine bitmap opaca o trasparente.
depth:Number - Un numero intero che specifica il livello di profondità nel clip filmato in cui dovrebbe essere inserita
l'immagine bitmap.
pixelSnapping:String [optional] - Le modalità di pixel snapping modes sono auto, always e never. La modalità
predefinita è auto.
smoothing:Boolean [opzionale] - La modalità di smussatura è true se è attivata oppure false se è disattivata. La
modalità predefinita è disattivata.
Disponibilità
Flash Lite 3.1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 404
Classi ActionScript
Esempio
Il codice seguente crea un oggetto BitmapData e lo associa a un clip filmato:
import flash.display.*;
this.createEmptyMovieClip("bmp1", 99);
var bmpData1:BitmapData = new BitmapData(200, 200, false, 0xaa3344);
bmp1.attachBitmap(bmpData1, 2, "auto", true);
attachMovie (metodo MovieClip.attachMovie)
public attachMovie(id:String, name:String, depth:Number, [initObject:Object]) : MovieClip
Associa un simbolo dalla libreria al clip filmato. Utilizzare MovieClip.removeMovieClip() o
MovieClip.unloadMovie() per rimuovere un simbolo associato con attachMovie().
Disponibilità
Flash Lite 2.0
Parametri
id:String - Il nome del concatenamento del simbolo di clip filmato nella libreria da associare a un clip filmato sullo
stage. È il nome immesso nel campo Identificatore nella finestra di dialogo Proprietà del concatenamento.
name:String - Un nome univoco dell'istanza del clip filmato che viene associato al clip filmato.
depth:Number - Un numero intero che specifica il livello di profondità in cui viene inserito il file SWF.
initObject:Object [opzionale] - (supportato per Flash Player 6 e versioni successive) Un oggetto contenente proprietà
con le quali compilare il nuovo clip filmato associato. Questo parametro consente ai clip filmato creati in modo
dinamico di ricevere i parametri del clip. Se initObject non è un oggetto, viene ignorato. Tutte le proprietà di
initObject vengono copiate nella nuova istanza. Le proprietà specificate con initObject sono disponibili per la
funzione di costruzione.
Restituisce
MovieClip - Un riferimento alla nuova istanza creata.
Esempio
Nell'esempio seguente vengono associate due istanze del simbolo con l'identificatore di concatenamento "circle"
all'istanza di clip filmato sullo stage:
this.attachMovie("circle", "circle1_mc", this.getNextHighestDepth());
this.attachMovie("circle", "circle2_mc", this.getNextHighestDepth(), {_x:50, _y:50});
Vedete anche
removeMovieClip (metodo MovieClip.removeMovieClip), unloadMovie (metodo MovieClip.unloadMovie),
Funzione removeMovieClip
beginFill (metodo MovieClip.beginFill)
public beginFill(rgb:Number, [alpha:Number]) : Void
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 405
Classi ActionScript
Indica l'inizio di un nuovo percorso di disegno. Se è presente un percorso aperto, ovvero se la posizione di disegno
corrente non equivale alla posizione precedente specificata in un metodo MovieClip.moveTo(), ed è associato a un
riempimento, il percorso viene chiuso con una linea e successivamente riempito. Si tratta di una situazione simile a
quando si chiama MovieClip.endFill().
Disponibilità
Flash Lite 2.0
Parametri
rgb:Number - Un valore di colore esadecimale (ad esempio, rosso è 0xFF0000, blu è 0x0000FF e così via). Se questo
valore non viene specificato o non è definito, non viene creato alcun riempimento.
alpha:Number [opzionale] - Un valore intero compreso tra 0 e 100 che specifica il valore alfa del riempimento. Se
questo valore non viene specificato, viene utilizzato il valore 100 (uniforme). Se il valore è minore di 0, viene utilizzato
0. Se il valore è maggiore di 100, viene utilizzato 100.
Esempio
Nell'esempio seguente viene creato un quadrato con un riempimento rosso sullo stage:
this.createEmptyMovieClip("square_mc", this.getNextHighestDepth());
square_mc.beginFill(0xFF0000);
square_mc.moveTo(10, 10);
square_mc.lineTo(100, 10);
square_mc.lineTo(100, 100);
square_mc.lineTo(10, 100);
square_mc.lineTo(10, 10);
square_mc.endFill();
Vedete anche
moveTo (metodo MovieClip.moveTo), endFill (metodo MovieClip.endFill), beginGradientFill (metodo
MovieClip.beginGradientFill)
beginGradientFill (metodo MovieClip.beginGradientFill)
public beginGradientFill(fillType:String, colors:Array, alphas:Array, ratios:Array,
matrix:Object) : Void
Indica l'inizio di un nuovo percorso di disegno. Se il primo parametro non è definito o se non viene passato alcun
parametro, il percorso non ha alcun riempimento. Se è presente un percorso aperto (ovvero se la posizione di disegno
corrente non equivale alla posizione precedente specificata in un metodo MovieClip.moveTo()) associato a un
riempimento, il percorso viene chiuso con una linea e successivamente riempito. Si tratta di una situazione simile a
quando si chiama MovieClip.endFill().
Questo metodo fallisce in una qualsiasi delle condizioni seguenti:
• Il numero di elementi nei parametri colors, alphas e ratios non è uguale.
• Il parametro fillType non è "linear" né "radial".
• Uno qualsiasi dei campi dell'oggetto per il parametro matrix è assente o non è valido.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 406
Classi ActionScript
Parametri
fillType:String - La stringa "linear" o la stringa "radial".
colors:Array - Un array di valori di colore esadecimali RGB da utilizzare nel gradiente (ad esempio, rosso è 0xFF0000,
blu è 0x0000FF e così via).
alphas:Array - Un array di valori alfa per i colori corrispondenti nell'array colors; i valori validi sono compresi tra 0
e 100. Se il valore è minore di 0, viene utilizzato 0. Se il valore è maggiore di 100, viene utilizzato 100.
ratios:Array - Un array di rapporti di distribuzione del colore; i valori validi sono compresi tra 0 e 255. Questo valore
definisce la percentuale della larghezza in corrispondenza della quale il campionamento del colore viene eseguito al 100%.
matrix:Object - Una matrice di trasformazione corrispondente a un oggetto con una delle due serie di proprietà
seguenti:
•
a, b, c, d, e, f, g, h, i, che possono essere utilizzate per descrivere una matrice 3 x 3 del seguente formato:
a b c
d e f
g h i
Nell'esempio seguente viene utilizzato il metodo beginGradientFill() con un parametro matrix di questo tipo:
this.createEmptyMovieClip("gradient_mc", this.getNextHighestDepth());
gradient_mc._x = -100;
gradient_mc._y = -100;
with (gradient_mc)
{
colors = [0xFF0000, 0x0000FF];
fillType = "radial"
alphas = [100, 100];
ratios = [0, 0xFF];
matrix = {a:200, b:0, c:0, d:0, e:200, f:0, g:200, h:200, i:1};
beginGradientFill(fillType, colors, alphas, ratios, matrix);
moveTo(100, 100);
lineTo(100, 300);
lineTo(300, 300);
lineTo(300, 100);
lineTo(100, 100);
endFill();
}
Il codice disegna l'immagine seguente sullo schermo:
•
matrixType, x, y, w, h, r.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 407
Classi ActionScript
Le proprietà indicano quanto segue: matrixType è la stringa "box", x è la posizione orizzontale relativa al punto
di registrazione del clip principale per l'angolo superiore sinistro del gradiente, y è la posizione verticale relativa al
punto di registrazione del clip principale per l'angolo superiore sinistro del gradiente, w è la larghezza del gradiente,
h è l'altezza del gradiente e r è la rotazione del gradiente espressa in radianti.
Nell'esempio seguente viene utilizzato il metodo beginGradientFill() con un parametro matrix di questo tipo:
this.createEmptyMovieClip("gradient_mc", this.getNextHighestDepth());
gradient_mc._x = -100;
gradient_mc._y = -100;
with (gradient_mc)
{
colors = [0xFF0000, 0x0000FF];
fillType = "radial"
alphas = [100, 100];
ratios = [0, 0xFF];
matrix = {matrixType:"box", x:100, y:100, w:200, h:200,
r:(45/180)*Math.PI};
beginGradientFill(fillType, colors, alphas, ratios, matrix);
moveTo(100, 100);
lineTo(100, 300);
lineTo(300, 300);
lineTo(300, 100);
lineTo(100, 100);
endFill();
}
Il codice disegna l'immagine seguente sullo schermo:
Vedete anche
beginFill (metodo MovieClip.beginFill), endFill (metodo MovieClip.endFill), lineStyle (metodo
MovieClip.lineStyle), lineTo (metodo MovieClip.lineTo), moveTo (metodo MovieClip.moveTo)
clear (metodo MovieClip.clear)
public clear() : Void
Rimuove tutti gli elementi grafici creati durante il runtime mediante i metodi draw del clip filmato, compresi gli stili
di linea specificati con MovieClip.lineStyle(). Le forme e le linee disegnate manualmente durante la fase di
creazione (mediante gli strumenti di disegno di Flash) rimangono invariate.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 408
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene disegnato un riquadro sullo stage. L'immagine viene rimossa, quando l'utente fa clic sul
pulsante denominato removeBox_btn.
this.createEmptyMovieClip("box_mc", 1);
drawBox(box_mc, 10, 10, 100, 100);
function drawBox(mc:MovieClip, x:Number, y:Number, w:Number, h:Number):Void {
mc.lineStyle(5);
mc.beginFill(0x009999);
mc.moveTo(x, y);
mc.lineTo(x+w, y);
mc.lineTo(x+w, y+h);
mc.lineTo(x, y+h);
mc.lineTo(x, y);
mc.endFill();
}
removeBox_btn.onRelease = function(){
box_mc.clear();
}
Vedete anche
lineStyle (metodo MovieClip.lineStyle)
createEmptyMovieClip (metodo MovieClip.createEmptyMovieClip)
public createEmptyMovieClip(name:String, depth:Number) : MovieClip
Crea un clip filmato vuoto come elemento secondario di un clip filmato esistente. Questo metodo ha un
comportamento simile a quello del metodo attachMovie(), ma non richiede che venga fornito un identificatore di
concatenamento esterno per il nuovo clip filmato. Il punto di registrazione di un clip filmato vuoto appena creato è
l'angolo superiore sinistro. Questo metodo fallisce se manca uno qualsiasi dei parametri.
Disponibilità
Flash Lite 2.0
Parametri
name:String - Una stringa che identifica il nome di istanza del nuovo clip filmato.
depth:Number - Un numero intero che specifica la profondità del nuovo clip filmato.
Restituisce
MovieClip - Un riferimento al clip filmato appena creato.
Esempio
Nell'esempio seguente vengono creati un clip filmato vuoto di nome container e un nuovo TextField al suo interno.
Viene quindi impostata la nuova proprietà TextField.text.
var container:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth());
var label:TextField = container.createTextField("label", 1, 0, 0, 150, 20);
label.text = "Hello World";
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 409
Classi ActionScript
Vedete anche
attachMovie (metodo MovieClip.attachMovie)
createTextField (metodo MovieClip.createTextField)
public createTextField(instanceName:String, depth:Number, x:Number, y:Number, width:Number,
height:Number) : TextField
Crea un nuovo campo di testo vuoto come elemento secondario del clip filmato sul quale viene chiamato questo
metodo. È possibile utilizzare il metodo createTextField() per creare dei campi di testo mentre viene riprodotto
un file SWF. Il parametro depth determina la nuova posizione nello z-order (livello di profondità) del clip filmato per
il nuovo campo di testo. Ciascun livello di profondità può contenere un solo oggetto. Se si crea un nuovo campo di
testo su una profondità che ha già un campo di testo, il nuovo campo di testo sostituisce quello esistente. Per evitare
di sovrascrivere i campi di testo esistenti, utilizzare MovieClip.getInstanceAtDepth() per determinare se una
specifica profondità è già occupata, oppure MovieClip.getNextHighestDepth()per determinare la prima
profondità non occupata. Il campo di testo viene posizionato nel punto (x, y) con le dimensioni width per height. I
parametri x e y sono relativi al contenitore clip filmato e corrispondono alle proprietà _x e _y del campo di testo. I
parametri width e height corrispondono alle proprietà _width e _height del campo di testo.
Le proprietà predefinite di un campo di testo sono le seguenti:
type = "dynamic"
border = false
background = false
password = false
multiline = false
html = false
embedFonts = false
selectable = true
wordWrap = false
mouseWheelEnabled = true
condenseWhite = false
restrict = null
variable = null
maxChars = null
styleSheet = undefined
tabInded = undefined
Un campo di testo creato con createTextField() riceve le seguenti impostazioni dell'oggetto TextFormat
predefinito:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 410
Classi ActionScript
font = "Times New Roman" // "Times" on Mac OS
size = 12
color = 0x000000
bold = false
italic = false
underline = false
url = ""
target = ""
align = "left"
leftMargin = 0
rightMargin = 0
indent = 0
leading = 0
blockIndent = 0
bullet = false
display = block
tabStops = [] // (empty array)
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
instanceName:String - Una stringa che identifica il nome di istanza del nuovo campo di testo.
depth:Number - Un numero intero positivo che specifica la profondità del nuovo campo di testo.
x:Number - Un numero intero che specifica la coordinata x del nuovo campo di testo.
y:Number - Un numero intero che specifica la coordinata y del nuovo campo di testo.
width:Number - Un numero intero positivo che specifica la larghezza del nuovo campo di testo.
height:Number - Un numero intero positivo che specifica l'altezza del nuovo campo di testo.
Restituisce
TextField
Esempio
Nell'esempio seguente viene creato un campo di testo con una larghezza 300, un'altezza 100, una coordinata x pari a
100, una coordinata y pari a 100, nessun bordo e testo rosso sottolineato:
this.createTextField("my_txt", 1, 100, 100, 300, 100);
my_txt.multiline = true;
my_txt.wordWrap = true;
var my_fmt:TextFormat = new TextFormat();
my_fmt.color = 0xFF0000;
my_fmt.underline = true;
my_txt.text = "This is my first test field object text.";
my_txt.setTextFormat(my_fmt);
Un esempio si trova anche nel file animations.fla all'interno della cartella di esempi di ActionScript all'indirizzo
www.adobe.com/go/learn_fl_samples_it. Scaricare e decomprimere il file .zip, quindi accedere alla cartella che
contiene i file di esempio per la propria versione di ActionScript.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 411
Classi ActionScript
Vedete anche
getInstanceAtDepth (metodo MovieClip.getInstanceAtDepth), getNextHighestDepth (metodo
MovieClip.getNextHighestDepth), getNewTextFormat (metodo TextField.getNewTextFormat)
_currentframe (proprietà MovieClip._currentframe)
public _currentframe : Number [read-only]
Restituisce il numero del fotogramma sulla linea temporale in cui si trova l'indicatore di riproduzione.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene utilizzata la proprietà _currentframe per impostare l'avanzamento dell'indicatore di
riproduzione del clip filmato, actionClip_mc, in avanti di cinque fotogrammi rispetto alla posizione corrente:
actionClip_mc.gotoAndStop(actionClip_mc._currentframe + 5);
curveTo (metodo MovieClip.curveTo)
public curveTo(controlX:Number, controlY:Number, anchorX:Number, anchorY:Number) : Void
Disegna una curva con lo stile di linea corrente dalla posizione di disegno corrente a (anchorX, anchorY) mediante il
punto di controllo specificato da (controlX, controlY). La posizione di disegno corrente viene quindi impostata su
(anchorX, anchorY). Se il clip filmato in cui si sta disegnando include del contenuto creato con gli strumenti di disegno
di Flash, le chiamate a curveTo() vengono disegnate sotto tale contenuto. Se si chiama il metodo curveTo() prima
delle chiamate al metodo moveTo(), la posizione di disegno corrente è impostata sul valore predefinito (0,0). Se
mancano uno o più parametri, il metodo ha esito negativo e la posizione di disegno corrente non cambia.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
controlX:Number - Un numero intero che specifica la posizione orizzontale del punto di controllo in relazione al
punto di registrazione del clip filmato principale.
controlY:Number - Un numero intero che specifica la posizione verticale del punto di controllo in relazione al punto
di registrazione del clip filmato principale.
anchorX:Number - Un numero intero che specifica la posizione orizzontale del successivo punto di ancoraggio in
relazione al punto di registrazione del clip filmato principale.
anchorY:Number - Un numero intero che specifica la posizione verticale del successivo punto di ancoraggio in
relazione al punto di registrazione del clip filmato principale.
Esempio
Nell'esempio seguente viene disegnata una curva quasi circolare, con un tratto sottilissimo blu uniforme e un
riempimento rosso uniforme:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 412
Classi ActionScript
this.createEmptyMovieClip("circle_mc", 1);
with (circle_mc) {
lineStyle(0, 0x0000FF, 100);
beginFill(0xFF0000);
moveTo(0, 100);
curveTo(0,200,100,200);
curveTo(200,200,200,100);
curveTo(200,0,100,0);
curveTo(0,0,0,100);
endFill();
}
La curva disegnata in questo esempio è una curva Bézier quadratica. Le curve Bézier quadratiche sono composte da
due punti di ancoraggio e da un punto di controllo. La curva interpola i due punti di ancoraggio e si incurva verso il
punto di controllo.
Lo script seguente utilizza il metodo curveTo() e la classe Math per creare un cerchio:
this.createEmptyMovieClip("circle2_mc", 2);
circle2_mc.lineStyle(0, 0x000000);
drawCircle(circle2_mc, 100, 100, 100);
function drawCircle(mc:MovieClip, x:Number, y:Number, r:Number):Void {
mc.moveTo(x+r, y);
mc.curveTo(r+x, Math.tan(Math.PI/8)*r+y, Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, r+y, x, '+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, r+y, -Math.sin(Math.PI/4)*r+x,
Math.sin(Math.PI/4)*r+y);
mc.curveTo(-r+x, Math.tan(Math.PI/8)*r+y, -r+x, y);
mc.curveTo(-r+x, -Math.tan(Math.PI/8)*r+y, -Math.sin(Math.PI/4)*r+x,
-Math.sin(Math.PI/4)*r+y);
mc.curveTo(-Math.tan(Math.PI/8)*r+x, -r+y, x, -r+y);
mc.curveTo(Math.tan(Math.PI/8)*r+x, -r+y, Math.sin(Math.PI/4)*r+x,
-Math.sin(Math.PI/4)*r+y);
mc.curveTo(r+x, -Math.tan(Math.PI/8)*r+y, r+x, y);
}
Un esempio si trova anche nel file drawingapi.fla all'interno della cartella di esempi di ActionScript all'indirizzo
www.adobe.com/go/learn_fl_samples_it. Scaricare e decomprimere il file .zip, quindi accedere alla cartella che
contiene i file di esempio per la propria versione di ActionScript.
Vedete anche
beginFill (metodo MovieClip.beginFill), createEmptyMovieClip (metodo
MovieClip.createEmptyMovieClip), endFill (metodo MovieClip.endFill), lineStyle (metodo
MovieClip.lineStyle), lineTo (metodo MovieClip.lineTo), moveTo (metodo MovieClip.moveTo), Math
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 413
Classi ActionScript
_droptarget (MovieClip._droptarget, proprietà)
public _droptarget : String [read-only]
Restituisce il percorso assoluto, espresso in notazione della sintassi della barra, dell'istanza di clip filmato su cui è stato
rilasciato il clip filmato. La proprietà _droptarget restituisce sempre un percorso che inizia con una barra (/). Per
confrontare la proprietà _droptarget di un'istanza con un riferimento, utilizzare la funzione eval() per convertire
il valore restituito dalla sintassi della barra alla sintassi del punto (ActionScript 2.0 non supporta la sintassi della barra).
Nota: questa proprietà è supportata in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene valutata la proprietà _droptarget dell'istanza del clip filmato garbage_mc e viene
utilizzata la funzione eval() per eseguire la conversione dalla sintassi della barra alla sintassi del punto. Il riferimento
garbage_mc viene quindi confrontato con il riferimento all'istanza del clip filmato trashcan_mc. Se i due riferimenti
sono equivalenti, la visibilità di garbage_mc viene impostata su false. Se non sono equivalenti, viene reimpostata la
posizione originale dell'istanza di garbage.
origX = garbage_mc._x;
origY = garbage_mc._y;
garbage_mc.onPress = function() {
this.startDrag();
};
garbage_mc.onRelease = function() {
this.stopDrag();
if (eval(this._droptarget) == trashcan_mc) {
this._visible = false;
} else {
this._x = origX;
this._y = origY;
}
};
Vedete anche
startDrag (metodo MovieClip.startDrag), stopDrag (metodo MovieClip.stopDrag), Funzione eval
duplicateMovieClip (metodo MovieClip.duplicateMovieClip)
public duplicateMovieClip(name:String, depth:Number, [initObject:Object]) : MovieClip
Crea un'istanza del clip filmato specificato mentre il file SWF è in riproduzione. La riproduzione dei clip filmato
duplicati inizia sempre dal fotogramma 1, a prescindere dal fotogramma su cui si trova il clip filmato originale quando
viene chiamato il metodo duplicateMovieClip(). Le variabili del clip filmato principale non vengono copiate nel
clip filmato duplicato. I clip filmato creati con il metodo duplicateMovieClip() non vengono duplicati se si chiama
il metodo duplicateMovieClip() sul relativo elemento principale. Se si elimina il clip filmato principale, vengono
eliminati anche i clip filmato duplicati. Se per caricare un clip filmato è stato utilizzato MovieClip.loadMovie() o la
classe MovieClipLoader, il contenuto del file SWF non viene duplicato. Pertanto non è possibile risparmiare larghezza
di banda caricando un file JPEG, GIF, PNG o SWF e successivamente duplicando il clip filmato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 414
Classi ActionScript
Confrontare questo metodo con la versione della funzione globale di duplicateMovieClip(). La versione globale di
questo metodo richiede un parametro che specifica il clip filmato di destinazione da duplicare. Tale parametro non è
necessario per la versione della classe MovieClip, poiché la destinazione del metodo è l'istanza del clip filmato sulla
quale viene richiamato il metodo. La versione globale di duplicateMovieClip() non supporta inoltre il parametro
initobject né il valore restituito di un riferimento all'istanza di MovieClip appena creata.
Disponibilità
Flash Lite 2.0
Parametri
name:String - Un identificatore univoco del clip filmato duplicato.
depth:Number - Un numero intero univoco che specifica la profondità alla quale viene inserito il nuovo clip filmato.
Per inserire l'istanza del nuovo clip filmato sotto tutto il contenuto creato nell'ambiente di creazione, utilizzare la
profondità -16384. I valori tra -16383 e -1, inclusi, sono riservati all'uso dell'ambiente di creazione e non devono essere
utilizzati con questo metodo. I rimanenti valori di profondità validi sono compresi nell'intervallo tra 0 e 1048575,
compresi.
initObject:Object [opzionale] - (Supportato per Flash Player 6 e versioni successive). Un oggetto contenente
proprietà con le quali compilare il clip filmato duplicato. Questo parametro consente ai clip filmato creati in modo
dinamico di ricevere i parametri del clip. Se initObject non è un oggetto, viene ignorato. Tutte le proprietà di
initObject vengono copiate nella nuova istanza. Le proprietà specificate con initObject sono disponibili per la
funzione di costruzione.
Restituisce
MovieClip - Un riferimento al clip filmato duplicato (supportato per Flash Player 6 e versioni successive).
Esempio
L'esempio seguente duplica un MovieClip appena creato un certo numero di volte e traccia la destinazione per ciascun
duplicato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 415
Classi ActionScript
var container:MovieClip = setUpContainer();
var ln:Number = 10;
var spacer:Number = 1;
var duplicate:MovieClip;
for(var i:Number = 1; i < ln; i++) {
var newY:Number = i * (container._height + spacer);
duplicate = container.duplicateMovieClip("clip-" + i, i, {_y:newY});
trace(duplicate); // _level0.clip-[number]
}
function setUpContainer():MovieClip {
var mc:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth());
var w:Number = 100;
var h:Number = 20;
mc.beginFill(0x333333);
mc.lineTo(w, 0);
mc.lineTo(w, h);
mc.lineTo(0, h);
mc.lineTo(0, 0);
mc.endFill();
return mc;
}
Vedete anche
loadMovie (metodo MovieClip.loadMovie), removeMovieClip (metodo MovieClip.removeMovieClip),
Funzione duplicateMovieClip
enabled (proprietà MovieClip.enabled)
public enabled : Boolean
Un valore booleano che indica se un clip filmato è attivo. Il valore predefinito di enabled è true. Se enabled è
impostato su false, i metodi di callback del clip filmato e i gestori di eventi onaction non vengono più richiamati, e
i fotogrammi Over, Down e Up vengono disabilitati. La proprietà enabled non incide sulla linea temporale del clip
filmato; se un clip filmato è in corso di riproduzione, la riproduzione non viene interrotta. Il clip filmato continua a
ricevere gli eventi del clip filmato (ad esempio, mouseDown, mouseUp, keyDown e keyUp).
La proprietà enabled regola solo le proprietà di un clip filmato simili a pulsanti. È possibile modificare la proprietà
enabled in qualsiasi momento; il clip filmato modificato viene immediatamente abilitato o disabilitato. La proprietà
enabled può essere estratta da un oggetto prototipo. Se enabled è impostata su false, l'oggetto non viene incluso
nell'ordine di tabulazione automatico.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene disattivato il clip filmato circle_mc quando l'utente lo seleziona:
circle_mc.onRelease = function() {
trace("disabling the "+this._name+" movie clip.");
this.enabled = false;
};
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 416
Classi ActionScript
endFill (metodo MovieClip.endFill)
public endFill() : Void
Applica un riempimento alle linee e alle curve aggiunte dall'ultima chiamata a beginFill() o
beginGradientFill(). Flash utilizza il riempimento che è stato specificato nella precedente chiamata a
beginFill() o beginGradientFill(). Se la posizione di disegno corrente non equivale alla posizione precedente
specificata in un metodo moveTo() e viene definito un riempimento, il percorso viene chiuso con una linea e
successivamente riempito.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene creato un quadrato con un riempimento rosso sullo stage:
this.createEmptyMovieClip("square_mc", this.getNextHighestDepth());
square_mc.beginFill(0xFF0000);
square_mc.moveTo(10, 10);
square_mc.lineTo(100, 10);
square_mc.lineTo(100, 100);
square_mc.lineTo(10, 100);
square_mc.lineTo(10, 10);
square_mc.endFill();
Un esempio si trova anche nel file drawingapi.fla all'interno della cartella di esempi di ActionScript all'indirizzo
www.adobe.com/go/learn_fl_samples_it. Scaricare e decomprimere il file .zip, quindi accedere alla cartella che
contiene i file di esempio per la propria versione di ActionScript.
Vedete anche
beginFill (metodo MovieClip.beginFill), beginGradientFill (metodo MovieClip.beginGradientFill),
moveTo (metodo MovieClip.moveTo)
focusEnabled (proprietà MovieClip.focusEnabled)
public focusEnabled : Boolean
Se il valore è undefined o false, un clip filmato non può essere attivato a meno che non si tratti di un pulsante. Se il
valore della proprietà focusEnabled è true, un clip filmato può essere attivato anche se non si tratta di un pulsante.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, la proprietà focusEnabled per il clip filmato denominato my_mc viene impostata su false:
my_mc.focusEnabled = false;
_focusrect (proprietà MovieClip._focusrect)
public _focusrect : Boolean
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 417
Classi ActionScript
Un valore booleano che specifica se attorno a un clip filmato è presente un rettangolo giallo quando viene attivato.
Questa proprietà può sostituire la proprietà _focusrect globale. L'impostazione predefinita della proprietà
_focusrect di un'istanza di clip filmato è null; in altre parole, l'istanza di clip filmato non sostituisce la proprietà
_focusrect globale. Se la proprietà _focusrect di un'istanza di clip filmato è true o false, sostituisce
l'impostazione della proprietà _focusrect globale della singola istanza di pulsante.
Nota: in Flash Lite 2,0, quando la proprietà _focusrect è disabilitata (ossia quando MovieClip._focusrect è
impostata su false), il clip filmato continua a ricevere tutti gli eventi del mouse e della pressione tasti.
Inoltre, in Flash Lite 2.0, è possibile modificare il colore del rettangolo di attivazione mediante il comando
SetFocusRectColor. Al contrario, nel player Flash Lite, il rettangolo di attivazione può essere solo di colore giallo.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene dimostrato come nascondere il rettangolo giallo attorno a un'istanza di clip filmato specificata
in un file SWF, quando l'istanza è attiva in una finestra del browser. Creare tre pulsanti di nome mc1_mc, mc2_mc e
mc3_mc, quindi aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
mc1_mc._focusrect = true;
mc2_mc._focusrect = false;
mc3_mc._focusrect = true;
mc1_mc.onRelease = traceOnRelease;
mc3_mc.onRelease = traceOnRelease;
function traceOnRelease() {
trace(this._name);
}
Provare il file SWF in una finestra del browser selezionando File > Anteprima pubblicazione > HTML. Per attivare
SWF, fare clic nella finestra del browser e quindi premere Tab per rendere attiva ogni istanza. Non è possibile eseguire
codice per questo clip filmato nel browser premendo Invio o la barra spaziatrice quando la proprietà _focusrect è
disattivata.
Inoltre, è possibile provare il file SWF nell'ambiente di prova. Selezionare Controllo > Disattiva tasti di scelta rapida
nell'ambiente di prova. In questo modo è possibile visualizzare il rettangolo di attivazione attorno alle istanze del file SWF.
Vedete anche
Proprietà _focusrect, _focusrect (proprietà Button._focusrect)
_framesloaded (proprietà MovieClip._framesloaded)
public _framesloaded : Number [read-only]
Il numero di fotogrammi caricati da un file SWF in streaming. Questa proprietà è utile per determinare se il contenuto
di un fotogramma specifico e tutti i fotogrammi che lo precedono sono stati caricati e sono disponibili a livello locale
nel browser. È utile anche per monitorare lo scaricamento dei file SWF di grandi dimensioni. Ad esempio, è possibile
visualizzare un messaggio che indica all'utente che il caricamento del file SWF continua finché non è terminato il
caricamento di uno specifico fotogramma nel file SWF.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 418
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene utilizzata la proprietà _framesloaded per avviare un file SWF dopo che sono stati caricati
tutti i fotogrammi. Se non vengono caricati tutti i fotogrammi, la proprietà _xscale dell'istanza del clip filmato
bar_mc viene aumentata proporzionalmente per creare una barra di avanzamento.
Immettere il codice seguente nel fotogramma 1 della linea temporale:
var pctLoaded:Number = Math.round(this.getBytesLoaded()/this.getBytesTotal()*100);
bar_mc._xscale = pctLoaded;
Aggiungere al fotogramma 2 il codice seguente:
if (this._framesloaded < this._totalframes) {
this.gotoAndPlay(1);
} else {
this.gotoAndStop(3);
}
Inserire il contenuto nel fotogramma 3 o dopo di esso, quindi aggiungere il codice seguente allo stesso fotogramma:
stop();
Vedete anche
MovieClipLoader
getBounds (metodo MovieClip.getBounds)
public getBounds(bounds:Object) : Object
Restituisce le proprietà che corrispondono ai valori minimi e massimi delle coordinate x e y del clip filmato in base al
parametro bounds.
Nota: utilizzare MovieClip.lcalToGlobal() e MovieClip.globalToLocal() rispettivamente per convertire le
coordinate locali del clip filmato nelle coordinate dello stage e viceversa.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
bounds:Object·-·Il percorso target della linea temporale di cui desiderate utilizzare il sistema di coordinate come
punto di riferimento.
Restituisce
Object - Un oggetto con le proprietà xMin, xMax, yMin e yMax.
Esempio
Nell'esempio seguente viene creato un clip filmato denominato square_mc. Il codice disegna un quadrato per il clip
filmato e utilizza MovieClip.getBounds() per visualizzare i valori delle coordinate dell'istanza nel pannello Output.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 419
Classi ActionScript
this.createEmptyMovieClip("square_mc", 1);
square_mc._x = 10;
square_mc._y = 10;
square_mc.beginFill(0xFF0000);
square_mc.moveTo(0, 0);
square_mc.lineTo(100, 0);
square_mc.lineTo(100, 100);
square_mc.lineTo(0, 100);
square_mc.lineTo(0, 0);
square_mc.endFill();
var bounds_obj:Object = square_mc.getBounds(this);
for (var i in bounds_obj) {
trace(i+" --> "+bounds_obj[i]);
}
Le informazioni seguenti vengono visualizzate nel pannello Output:
yMax
yMin
xMax
xMin
-->
-->
-->
-->
110
10
110
10
Vedete anche
globalToLocal (metodo MovieClip.globalToLocal), localToGlobal (metodo MovieClip.localToGlobal)
getBytesLoaded (metodo MovieClip.getBytesLoaded)
public getBytesLoaded() : Number
Restituisce il numero di byte già caricati (in streaming) del clip filmato. È possibile confrontare questo valore con
quello restituito da MovieClip.getBytesTotal() per determinare la percentuale di caricamento di un clip filmato.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero che indica il numero di byte caricati.
Esempio
Nell'esempio seguente viene utilizzata la proprietà _framesloaded per avviare un file SWF dopo che sono stati caricati
tutti i fotogrammi. Se non vengono caricati tutti i fotogrammi, la proprietà _xscale dell'istanza del clip filmato del
loader viene aumentata proporzionalmente per creare una barra di avanzamento.
Immettere il codice seguente nel fotogramma 1 della linea temporale:
var pctLoaded:Number = Math.round(this.getBytesLoaded()/this.getBytesTotal() * 100);
bar_mc._xscale = pctLoaded;
Aggiungere al fotogramma 2 il codice seguente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 420
Classi ActionScript
if (this._framesloaded<this._totalframes) {
this.gotoAndPlay(1);
} else {
this.gotoAndStop(3);
}
Inserire il contenuto nel fotogramma 3 o dopo di esso, quindi aggiungere il codice seguente allo stesso fotogramma:
stop();
Vedete anche
getBytesTotal (metodo MovieClip.getBytesTotal)
getBytesTotal (metodo MovieClip.getBytesTotal)
public getBytesTotal() : Number
Restituisce le dimensioni, espresse in byte, del clip filmato. Per i clip filmato esterni (il file SWF principale o un clip
filmato che viene caricato in un target o in un livello), il valore restituito indica le dimensioni del file SWF non
compresso.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero che indica la dimensione totale, in byte, del clip filmato.
Esempio
Nell'esempio seguente viene utilizzata la proprietà _framesloaded per avviare un file SWF dopo che sono stati caricati
tutti i fotogrammi. Se non vengono caricati tutti i fotogrammi, la proprietà _xscale del loader dell'istanza del clip
filmato viene aumentata proporzionalmente per creare una barra di avanzamento.
Immettere il codice seguente nel fotogramma 1 della linea temporale:
var pctLoaded:Number = Math.round(this.getBytesLoaded()/this.getBytesTotal()*100);
bar_mc._xscale = pctLoaded;
Aggiungere al fotogramma 2 il codice seguente:
if (this._framesloaded<this._totalframes) {
this.gotoAndPlay(1);
} else {
this.gotoAndStop(3);
}
Inserire il contenuto nel fotogramma 3 o dopo di esso, quindi aggiungere il codice seguente allo stesso fotogramma:
stop();
Vedete anche
getBytesLoaded (metodo MovieClip.getBytesLoaded)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 421
Classi ActionScript
getDepth (metodo MovieClip.getDepth)
public getDepth() : Number
Restituisce la profondità dell'istanza di clip filmato.
A ogni clip filmato, pulsante e campo di testo è associata una profondità univoca che determina il modo in cui l'oggetto
viene visualizzato davanti o dietro ad altri oggetti. Gli oggetti con profondità superiori compaiono in primo piano.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Number - La profondità dell'istanza di clip filmato.
Esempio
Il codice seguente traccia la profondità di tutte le istanze di clip filmato sullo stage:
for (var i in this) {
if (typeof (this[i]) == "movieclip") {
trace("movie clip '"+this[i]._name+"' is at depth "+this[i].getDepth());
}
}
Vedete anche
getInstanceAtDepth (metodo MovieClip.getInstanceAtDepth), getNextHighestDepth (metodo
MovieClip.getNextHighestDepth), swapDepths (metodo MovieClip.swapDepths), getDepth (metodo
TextField.getDepth), getDepth (metodo Button.getDepth)
getInstanceAtDepth (metodo MovieClip.getInstanceAtDepth)
public getInstanceAtDepth(depth:Number) : MovieClip
Consente di determinare se una particolare profondità è già occupata da un clip filmato. È possibile utilizzare questo
metodo prima di MovieClip.attachMovie(), MovieClip.duplicateMovieClip() o
MovieClip.createEmptyMovieClip() per determinare se il parametro depth che si desidera passare a questi metodi
contiene già un clip filmato.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
depth:Number - Un numero intero che specifica la profondità del livello da interrogare.
Restituisce
MovieClip - Un riferimento all'istanza MovieClip posizionata alla profondità specificata oppure il valore undefined
se alla profondità specificata non è presente alcun clip filmato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 422
Classi ActionScript
Esempio
Nell'esempio seguente viene visualizzata la profondità occupata dall'istanza del clip filmato triangle nel pannello
Output:
this.createEmptyMovieClip("triangle", 1);
triangle.beginFill(0x0000FF, 100);
triangle.moveTo(100, 100);
triangle.lineTo(100, 150);
triangle.lineTo(150, 100);
triangle.lineTo(100, 100);
trace(this.getInstanceAtDepth(1)); // output: _level0.triangle
Vedete anche
attachMovie (metodo MovieClip.attachMovie), duplicateMovieClip (metodo
MovieClip.duplicateMovieClip), createEmptyMovieClip (metodo MovieClip.createEmptyMovieClip),
getDepth (metodo MovieClip.getDepth), getNextHighestDepth (metodo
MovieClip.getNextHighestDepth), swapDepths (metodo MovieClip.swapDepths)
getNextHighestDepth (metodo MovieClip.getNextHighestDepth)
public getNextHighestDepth() : Number
Consente di determinare un valore di profondità da passare a MovieClip.attachMovie(),
MovieClip.duplicateMovieClip() o MovieClip.createEmptyMovieClip() per garantire che il clip filmato sia
reso in primo piano rispetto a tutti gli altri oggetti che si trovano allo stesso livello nel clip filmato corrente. Il valore
restituito è 0 o positivo (in altre parole, non vengono restituiti valori negativi).
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero che rispecchia il primo indice di profondità disponibile di cui viene eseguito il rendering
al di sopra tutti gli altri oggetti dello stesso grado di profondità e livello all'interno del clip filmato.
Esempio
Nell'esempio seguente vengono tracciate tre istanze del clip formato utilizzando il metodo getNextHighestDepth()
come parametro depth del metodo createEmptyMovieClip(), e ciascun clip filmato viene etichettato con la relativa
profondità:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 423
Classi ActionScript
for (i = 0; i < 3; i++) {
drawClip(i);
}
function drawClip(n:Number):Void {
this.createEmptyMovieClip("triangle" + n, this.getNextHighestDepth());
var mc:MovieClip = eval("triangle" + n);
mc.beginFill(0x00aaFF, 100);
mc.lineStyle(4, 0xFF0000, 100);
mc.moveTo(0, 0);
mc.lineTo(100, 100);
mc.lineTo(0, 100);
mc.lineTo(0, 0);
mc._x = n * 30;
mc._y = n * 50
mc.createTextField("label", this.getNextHighestDepth(), 20, 50, 200, 200)
mc.label.text = mc.getDepth();
}
Vedete anche
getDepth (metodo MovieClip.getDepth), getInstanceAtDepth (metodo MovieClip.getInstanceAtDepth),
swapDepths (metodo MovieClip.swapDepths), attachMovie (metodo MovieClip.attachMovie),
duplicateMovieClip (metodo MovieClip.duplicateMovieClip), createEmptyMovieClip (metodo
MovieClip.createEmptyMovieClip)
getSWFVersion (metodo MovieClip.getSWFVersion)
public getSWFVersion() : Number
Restituisce un numero intero che indica la versione del player Flash Lite per cui è stato pubblicato il clip filmato. Se il
clip filmato è un file JPEG, GIF o PNG o se si verifica un errore che impedisce di determinare la versione SWF del clip
filmato, viene restituito il valore -1.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Restituisce
Number - Un numero intero che specifica la versione del player Flash Lite per cui è stato ottimizzato il file SWF
caricato alla pubblicazione del clip filmato.
Esempio
L'esempio seguente crea un nuovo contenitore e fornisce come output il valore getSWFVersion(). Viene quindi
utilizzato MovieClipLoader per caricare un file SWF esterno pubblicato in Flash Player 7 e viene fornito come output
il valore getSWFVersion() dopo l'attivazione del gestore onLoadInit.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 424
Classi ActionScript
var container:MovieClip = this.createEmptyMovieClip("container", this.getUpperEmptyDepth());
var listener:Object = new Object();
listener.onLoadInit = function(target:MovieClip):Void {
trace("target: " + target.getSWFVersion()); // target: 7
}
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(listener);
trace("container: " + container.getSWFVersion()); // container: 8
mcLoader.loadClip("FlashPlayer7.swf", container);
getURL (metodo MovieClip.getURL)
public getURL(url:String, [window:String], [method:String]) : Void
Carica nella finestra specificata un documento corrispondente all'URL indicato. Il metodo getURL() può essere
utilizzato anche per passare le variabili ad altre applicazioni definite nell'URL mediante un metodo GET o POST.
È necessario impostare esplicitamente l'attributo allowScriptAccess per consentire o negare la creazione di script
per il player Flash Lite dal codice HTML (nel tag PARAM per Internet Explorer o nel tag EMBED per Netscape Navigator):
• Se allowScriptAccess è impostato su "never", la creazione di script in uscita non viene mai eseguita.
• Se allowScriptAccess è impostato su "always", la creazione di script in uscita ha sempre esito positivo.
• Se allowScriptAccess è impostato su "sameDomain" (supportato dai file SWF a partire dalla versione 8), la
creazione di script in uscita è consentita se il file SWF si trova nello stesso dominio della pagina Web host.
• Se allowScriptAccess non è specificato da una pagina HTML, i valori predefiniti sono "sameDomain" per i file
SWF versione 8 e "always" per i file SWF delle versioni precedenti.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL da cui ottenere il documento.
window:String [opzionale] - Un parametro che specifica il nome, il fotogramma o l'espressione che indica la finestra
o il frame HTML in cui viene caricato il documento. È inoltre possibile utilizzare uno dei seguenti nomi riservati di
destinazioni: _self specifica il fotogramma corrente nella finestra corrente, _blank indica una nuova finestra,
_parent specifica l'elemento principale del fotogramma corrente, mentre _top indica il fotogramma di primo livello
nella finestra corrente.
method:String [optional] - Una stringa ("GET" o "POST") che specifica un metodo per l'invio di variabili associate al
file SWF da caricare. Se non sono presenti variabili, omettere questo parametro, altrimenti specificare se caricare le
variali mediante un metodo GET o POST. Il metodo GET aggiunge le variabili alla fine dell'URL e viene utilizzato quando
il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione HTTP separata e viene utilizzato per
l'invio di stringhe di variabili lunghe.
Esempio
Il codice ActionScript seguente crea una nuova istanza di clip filmato e apre il sito Web Adobe in una nuova finestra
del browser:
this.createEmptyMovieClip("loader_mc", this.getNextHighestDepth());
loader_mc.getURL("http://www.adobe.com", "_blank");
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 425
Classi ActionScript
Il metodo getURL() consente inoltre di inviare variabili a uno script sul lato server remoto, come illustrato nel codice
seguente:
this.createEmptyMovieClip("loader_mc", this.getNextHighestDepth());
loader_mc.username = "some user input";
loader_mc.password = "random string";
loader_mc.getURL("http://www.flash-mx.com/mm/viewscope.cfm", "_blank", "GET");
Vedete anche
Funzione getURL, sendAndLoad (metodo LoadVars.sendAndLoad), send (metodo LoadVars.send)
globalToLocal (metodo MovieClip.globalToLocal)
public globalToLocal(pt:Object) : Void
Converte le coordinate dello stage (globali) in quelle del clip filmato (locali) per l'oggetto pt.
Il metodo MovieClip.globalToLocal() consente di convertire qualsiasi coppia data di coordinate x e y da valori
relativi all'angolo superiore sinistro dello stage in valori relativi all'angolo superiore sinistro di un clip filmato specifico.
È necessario innanzitutto creare un oggetto generico con due proprietà, x e y. Questi valori x e y (che devono essere
chiamati x e y) vengono definiti coordinate globali poiché si riferiscono all'angolo superiore sinistro dello stage. La
proprietà x rappresenta l'offset orizzontale dall'angolo superiore sinistro. In altre parole, rappresenta la distanza verso
destra in cui si trova il punto. Ad esempio, se x = 50, il punto si trova 50 pixel a destra dell'angolo superiore sinistro.
La proprietà y rappresenta l'offset verticale dall'angolo superiore sinistro. In altre parole, rappresenta la distanza verso
il basso in cui si trova il punto. Ad esempio, se y = 20, il punto si trova 20 pixel sotto l'angolo superiore sinistro. Il codice
seguente crea un oggetto generico con queste coordinate:
var myPoint:Object = new Object();
myPoint.x = 50;
myPoint.y = 20;
In alternativa, è possibile creare l'oggetto e assegnare i valori contemporaneamente con un valore letterale Object:
var myPoint:Object = {x:50, y:20};
Dopo aver creato un oggetto point con coordinate globali, è possibile convertirle in coordinate locali. Il metodo
globalToLocal() non restituisce un valore poiché modifica i valori di x e y nell'oggetto generico inviato come
parametro, convertendoli da valori relativi allo stage (coordinate globali) in valori relativi a un clip filmato specifico
(coordinate locali).
Ad esempio, se si crea un clip filmato collocato nel punto (_x:100, _y:100) e si passa un punto locale che
rappresenta un punto accanto all'angolo superiore sinistro del clip filmato (x:0, y:0) al metodo globalToLocal(),
questo dovrebbe convertire i valori x e y in coordinate globali, in questo caso (x:-100, y:-100). Questa conversione
si verifica poiché le coordinate x e y sono espresse in relazione all'angolo superiore sinistro del clip filmato anziché a
quello dello stage. I valori sono negativi poiché nella conversione dall'angolo superiore sinistro del clip filmato a quello
dello stage, è necessario spostarsi di 100 pixel a sinistra (x negativo) e di 100 pixel in alto (y negativo).
Le coordinate del clip filmato sono state espresse utilizzando _x e _y, essendo queste le proprietà di MovieClip
utilizzate per impostare i valori x e y per gli oggetti MovieClip. Per l'oggetto generico vengono tuttavia utilizzati i valori
x and y senza carattere di sottolineatura. Il codice seguente converte i valori x e y in coordinate locali:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 426
Classi ActionScript
var myPoint:Object = {x:0, y:0}; // Create your generic point object.
this.createEmptyMovieClip("myMovieClip", this.getNextHighestDepth());
myMovieClip._x = 100; // _x for movieclip x position
myMovieClip._y = 100; // _y for movieclip y position
myMovieClip.globalToLocal(myPoint);
trace ("x: " + myPoint.x); // output: -100
trace ("y: " + myPoint.y); // output: -100
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
pt:Object - Il nome o l'identificatore di un oggetto creato mediante la classe Object generica. L'oggetto specifica le
coordinate x e y come proprietà.
Esempio
Aggiungere il seguente codice ActionScript a un file FLA o AS nella stessa directory di un'immagine denominata
photo1.jpg:
this.createTextField("coords_txt", this.getNextHighestDepth(), 10, 10, 100, 22);
coords_txt.html = true;
coords_txt.multiline = true;
coords_txt.autoSize = true;
this.createEmptyMovieClip("target_mc", this.getNextHighestDepth());
target_mc._x = 100;
target_mc._y = 100;
target_mc.loadMovie("photo1.jpg");
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
var point:Object = {x:_xmouse, y:_ymouse};
target_mc.globalToLocal(point);
var rowHeaders = "<b> &nbsp; \t</b><b>_x\t</b><b>_y</b>";
var row_1 = "_root\t"+_xmouse+"\t"+_ymouse;
var row_2 = "target_mc\t"+point.x+"\t"+point.y;
coords_txt.htmlText = "<textformat tabstops='[100, 150]'>";
coords_txt.htmlText += rowHeaders;
coords_txt.htmlText += row_1;
coords_txt.htmlText += row_2;
coords_txt.htmlText += "</textformat>";
};
Mouse.addListener(mouseListener);
Vedete anche
getBounds (metodo MovieClip.getBounds), localToGlobal (metodo MovieClip.localToGlobal), Object
gotoAndPlay (metodo MovieClip.gotoAndPlay)
public gotoAndPlay(frame:Object) : Void
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 427
Classi ActionScript
Avvia la riproduzione del file SWF dal fotogramma specificato. Per specificare una scena oltre a un fotogramma,
utilizzare gotoAndPlay().
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
frame:Object - Un numero che rappresenta il numero del fotogramma, o una stringa che rappresenta l'etichetta del
fotogramma, a cui viene inviato l'indicatore di riproduzione.
Esempio
Nell'esempio seguente viene utilizzata la proprietà _framesloaded per avviare un file SWF dopo che sono stati caricati
tutti i fotogrammi. Se non vengono caricati tutti i fotogrammi, la proprietà _xscale dell'istanza del clip filmato del
loader viene aumentata proporzionalmente per creare una barra di avanzamento.
Immettere il codice seguente nel fotogramma 1 della linea temporale:
var pctLoaded:Number = Math.round(this.getBytesLoaded()/this.getBytesTotal()*100);
bar_mc._xscale = pctLoaded;
Aggiungere al fotogramma 2 il codice seguente:
if (this._framesloaded<this._totalframes) {
this.gotoAndPlay(1);
} else {
this.gotoAndStop(3);
}
Inserire il contenuto nel fotogramma 3 o dopo di esso, quindi aggiungere il codice seguente allo stesso fotogramma:
stop();
Vedete anche
Funzione gotoAndPlay, Funzione play
gotoAndStop (metodo MovieClip.gotoAndStop)
public gotoAndStop(frame:Object) : Void
Posiziona l'indicatore di riproduzione sul fotogramma specificato del clip filmato. Per specificare una scena oltre a un
fotogramma, utilizzare gotoAndStop().
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
frame:Object - Il numero di fotogramma al quale viene inviato l'indicatore di riproduzione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 428
Classi ActionScript
Esempio
Nell'esempio seguente viene utilizzata la proprietà _framesloaded per avviare un file SWF dopo che sono stati caricati
tutti i fotogrammi. Se non vengono caricati tutti i fotogrammi, la proprietà _xscale dell'istanza del clip filmato del
loader viene aumentata proporzionalmente per creare una barra di avanzamento.
Immettere il codice seguente nel fotogramma 1 della linea temporale:
var pctLoaded:Number = Math.round(this.getBytesLoaded()/this.getBytesTotal()*100);
bar_mc._xscale = pctLoaded;
Aggiungere al fotogramma 2 il codice seguente:
if (this._framesloaded<this._totalframes) {
this.gotoAndPlay(1);
} else {
this.gotoAndStop(3);
}
Inserire il contenuto nel fotogramma 3 o dopo di esso, quindi aggiungere il codice seguente allo stesso fotogramma:
stop();
Vedete anche
Funzione gotoAndStop, Funzione stop
_height (proprietà MovieClip._height)
public _height : Number
L'altezza del clip filmato, espressa in pixel.
Disponibilità
Flash Lite 2.0
Esempio
Nel seguente esempio di codice vengono visualizzate la larghezza e l'altezza di un clip filmato nel pannello Output:
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var image_mcl:MovieClipLoader = new MovieClipLoader();
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
trace(target_mc._name+" = "+target_mc._width+" X "+target_mc._height+" pixels");
};
image_mcl.addListener(mclListener);
image_mcl.loadClip("example.jpg", image_mc);
Vedete anche
_width (proprietà MovieClip._width)
_highquality (proprietà MovieClip._highquality)
public _highquality : Number
Sconsigliata a partire da Flash Player 7. Questa proprietà è stata sconsigliata a favore di MovieClip._quality.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 429
Classi ActionScript
Specifica il livello di antialiasing applicato al file SWF corrente. Specificare 2 (migliore qualità) per applicare un'alta
qualità con lo smussamento bitmap sempre abilitato. Specificare 1 (alta qualità) per applicare l'antialiasing; le
immagini bitmap vengono attenuate se il file SWF non contiene animazioni. Specificare 0 (bassa qualità) per impedire
l'antialiasing. Questa proprietà può sovrascrivere la proprietà _highquality globale.
Disponibilità
Flash Lite 2.0
Esempio
Il codice ActionScript seguente specifica che al file SWF dovrà essere applicato l'antialiasing della qualità migliore.
my_mc._highquality = 2;
Vedete anche
_quality (proprietà MovieClip._quality), Proprietà _quality
hitArea (proprietà MovieClip.hitArea)
public hitArea : Object
Definisce un altro clip filmato come area attiva di un clip filmato. Se la proprietà hitArea non esiste oppure è null o
non definita, il clip filmato stesso viene utilizzato come area attiva. Il valore della proprietà hitArea può fungere da
riferimento per un oggetto clip filmato.
È possibile modificare la proprietà hitArea in qualsiasi momento; al clip filmato modificato viene associato
immediatamente il nuovo comportamento dell'area attiva. Non è necessario che il clip filmato designato come area
attiva sia visibile; la sua forma grafica, anche non visibile, viene verificata e considerata come area attiva. La proprietà
hitArea può essere estratta da un oggetto prototipo.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, il clip filmato circle_mc viene impostato come area attiva per il clip filmato square_mc.
Collocare questi due clip filmato sullo stage e provare il documento. Quando si fa clic su circle_mc, l'azione viene
rilevata nel clip filmato square_mc.
square_mc.hitArea = circle_mc;
square_mc.onRelease = function() {
trace("hit! "+this._name);
};
È inoltre possibile impostare la proprietà visible del clip filmato circle_mc su false, in modo da nascondere l'area
attiva per square_mc.
circle_mc._visible = false;
Vedete anche
hitTest (metodo MovieClip.hitTest)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 430
Classi ActionScript
hitTest (metodo MovieClip.hitTest)
public hitTest() : Boolean
Valuta il clip filmato per vedere se si sovrappone o interseca l'area attiva identificata dai parametri target o delle
coordinate x e y.
Uso 1: confronta le coordinate x e y con la forma o il riquadro di delimitazione dell'istanza specificata, in base
all'impostazione di shapeFlag. Se il valore di shapeFlag è true, viene valutata solo l'area dello stage effettivamente
occupata dall'istanza; inoltre, se x e y si sovrappongono in qualche punto, viene restituito un valore true. Questa
valutazione è utile per determinare se il clip filmato è all'interno di un'area attiva o di un punto attivo.
Uso 2: valuta i riquadri di delimitazione del target e dell'istanza specificata, e restituisce il valore true se si
sovrappongono o intersecano in qualche punto.
Parametri
x: number La coordinata x dell'area attiva dello stage.
y: number La coordinata y dell'area attiva dello stage.
Le coordinate x e y sono definite nello spazio globale delle coordinate.
shapeFlag: Boolean Un valore booleano che specifica se valutare l'intera forma dell'istanza specificata (true) o solo
il riquadro di delimitazione (false). Questo parametro può essere specificato solo se l'area attiva viene identificata
mediante i parametri delle coordinate x e y.
target: Object Il percorso di destinazione dell'area attiva che potrebbe intersecare o sovrapporsi al clip filmato. Di
solito, il parametro target rappresenta un pulsante o un campo per l'immissione di testo.
Disponibilità
Flash Lite 2.0
Restituisce
Boolean - Un valore booleano true se il clip filmato si sovrappone all'area attiva specificata, false in caso contrario.
Esempio
Nell'esempio seguente viene utilizzato hitTest() per determinare se il clip filmato circle_mc è sovrapposto o
interseca il clip filmato square_mc quando l'utente rilascia il pulsante del mouse:
square_mc.onPress = function() {
this.startDrag();
};
square_mc.onRelease = function() {
this.stopDrag();
if (this.hitTest(circle_mc)) {
trace("you hit the circle");
}
};
Vedete anche
getBounds (metodo MovieClip.getBounds), globalToLocal (metodo MovieClip.globalToLocal),
localToGlobal (metodo MovieClip.localToGlobal)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 431
Classi ActionScript
lineStyle (metodo MovieClip.lineStyle)
public lineStyle(thickness:Number, rgb:Number, alpha:Number, pixelHinting:Boolean,
noScale:String, capsStyle:String, jointStyle:String, miterLimit:Number) : Void
Specifica uno stile di linea utilizzato da Flash per chiamate successive ai metodi lineTo() e curveTo() fino a che non
viene chiamato il metodo lineStyle() con parametri diversi. È possibile chiamare lineStyle() mentre si disegna
un percorso per specificare stili diversi per segmenti di linea diversi all'interno di un percorso.
Nota: se si chiama clear(), lo stile di linea viene reimpostato su undefined.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
thickness:Number··Un·numero·intero·che·indica·lo·spessore·della·linea·in·punti;·i·valori·validi·sono·compresi·tra·0·e·255.·Se·non·viene·s
pecificato·un·numero,·oppure·se·il·parametro·è·undefined, la linea non viene disegnata. Se viene passato un valore
minore di 0, viene utilizzato 0. Il valore 0 indica uno spessore sottilissimo; lo spessore massimo è 255. Se viene passato
un valore maggiore di 255, l'interprete di Flash utilizza 255.
rgb:Number - Un valore di colore esadecimale della linea (ad esempio, rosso è 0xFF0000, blu è 0x0000FF e così via).
Se non viene indicato un valore, viene utilizzato 0x000000 (nero).
alpha:Number - Un numero intero che indica il valore alfa del colore della linea; i valori validi sono compresi tra 0 e
100. Se non viene indicato un valore, Flash utilizza 100 (uniforme). Se il valore è minore di 0, viene utilizzato 0; se il
valore è maggiore di 100, viene utilizzato 100.
pixelHinting:Boolean - Un valore booleano che specifica se approssimare i tratti ai pixel pieni. Incide sia sulla
posizione degli ancoraggi di una curva, sia sulle dimensioni stesse del tratto della linea. Con pixelHinting impostato
su true, il player Flash Lite approssima la larghezza delle linee alla larghezza dei pixel interi. Con pixelHinting
impostato su false, possono apparire delle discontinuità nelle curve e nelle linee rette.
noScale:String - Una stringa che specifica come adattare un tratto. I valori validi sono riportati di seguito:
"normale" - "Modificare sempre in scala lo spessore (impostazione predefinita)."nessuno" - Non modificare mai in
scala lo spessore."verticale" - Non modificare mai in scala lo spessore se per l'oggetto è impostata solo la scala
verticale."orizzontale" - Non modificare mai in scala lo spessore se per l'oggetto è impostata solo la scala orizzontale
capsStyle:String - Una stringa che specifica il tipo di estremità sulle linee. I valori validi sono: "round", "square" e
"none". Se non viene indicato un valore, Flash utilizza estremità arrotondate.
jointStyle:String - Una stringa che specifica il tipo di aspetto dei raccordi utilizzato agli angoli. I valori validi sono:
"round", "miter" e "bevel". Se non viene indicato un valore, Flash utilizza spigoli arrotondati.
miterLimit:Number - Un numero che indica il limite in corrispondenza del quale lo spigolo viene troncato.
L'intervallo di valori validi è compreso tra 1 e 255, e i valori non compresi in questo intervallo vengono approssimati
a 1 o 255. Il valore viene utilizzato solo se jointStyle è impostato su "miter". Se non viene indicato un valore, Flash
utilizza 3. Il valore miterLimit rappresenta la lunghezza per la quale una giunzione ad angolo può estendersi oltre il
punto in cui le linee si incontrano per costituire uno spigolo. Il valore esprime un fattore del valore thickness della
linea. Ad esempio, con un fattore miterLimit 2,5 ed un valore di 10 pixel per thickness, lo spigolo viene troncato a 25
pixel.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 432
Classi ActionScript
Esempio
Il codice seguente consente di disegnare un triangolo con linee solide color magenta di 5 pixel senza riempimento.
this.createEmptyMovieClip("triangle_mc", 1);
triangle_mc.lineStyle(5, 0xff00ff, 100);
triangle_mc.moveTo(200, 200);
triangle_mc.lineTo(300, 300);
triangle_mc.lineTo(100, 300);
triangle_mc.lineTo(200, 200);
Vedete anche
beginFill (metodo MovieClip.beginFill), beginGradientFill (metodo MovieClip.beginGradientFill),
clear (metodo MovieClip.clear), curveTo (metodo MovieClip.curveTo), lineTo (metodo
MovieClip.lineTo), moveTo (metodo MovieClip.moveTo)
lineTo (metodo MovieClip.lineTo)
public lineTo(x:Number, y:Number) : Void
Disegna una linea con lo stile di linea corrente dalla posizione di disegno corrente a (x, y); la posizione di disegno
corrente viene quindi impostata su (x, y). Se il clip filmato in cui si sta disegnando ha del contenuto creato con gli
strumenti di disegno di Flash, le chiamate a lineTo() vengono disegnate sotto tale contenuto. Se si chiama il metodo
lineTo() prima delle chiamate al metodo moveTo(), la posizione di disegno corrente è impostata sul valore
predefinito (0,0). Se mancano uno o più parametri, il metodo ha esito negativo e la posizione di disegno corrente non
cambia.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero intero che indica la posizione orizzontale relativa al punto di registrazione del clip filmato
principale.
y:Number - Un numero intero che indica la posizione verticale relativa al punto di registrazione del clip filmato
principale.
Esempio
Nell'esempio seguente viene disegnato un triangolo con una linea magenta uniforme di spessore pari a 5 pixel e un
riempimento blu parzialmente trasparente:
this.createEmptyMovieClip("triangle_mc", 1);
triangle_mc.beginFill(0x0000FF, 30);
triangle_mc.lineStyle(5, 0xFF00FF, 100);
triangle_mc.moveTo(200, 200);
triangle_mc.lineTo(300, 300);
triangle_mc.lineTo(100, 300);
triangle_mc.lineTo(200, 200);
triangle_mc.endFill();
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 433
Classi ActionScript
Vedete anche
beginFill (metodo MovieClip.beginFill), createEmptyMovieClip (metodo
MovieClip.createEmptyMovieClip), endFill (metodo MovieClip.endFill), lineStyle (metodo
MovieClip.lineStyle), moveTo (metodo MovieClip.moveTo)
loadMovie (metodo MovieClip.loadMovie)
public loadMovie(url:String, [method:String]) : Void
Carica i file SWF o JPEG in un clip filmato in un file SWF riprodotto in Flash Player.
Suggerimento: per verificare lo stato di avanzamento dell'operazione, utilizzare MovieClipLoader.loadClip()
invece del metodo loadMovie().
Il metodo loadMovie() consente di visualizzare più file SWF contemporaneamente e di passare da uno all'altro senza
caricare un altro documento HTML.
Un file SWF o un'immagine caricata in un clip filmato eredita le proprietà di posizione, rotazione e scala del clip
filmato. È possibile utilizzare il percorso target del clip filmato per indicare come destinazione il file SWF caricato.
Chiama la funzione loadMovie() per caricare qualsiasi formato di immagine supportato dal dispositivo. Se, ad
esempio, il dispositivo di destinazione supporta i file PNG, il codice seguente carica e riproduce un file PNG presente
su un server Web:
loadMovie("http://www.adobe.com/image.png", "image_target");
Per determinare i formati grafici supportati dal dispositivo di destinazione, utilizzare la proprietà
System.capabilities.imageMIMETypes che contiene un array dei tipi MIME grafici supportati. L'indice di ogni
elemento dell'array corrisponde a ogni tipo MIME supportato. Il codice riportato di seguito, ad esempio, determina se
un dispositivo supporta le immagini PNG prima che il dispositivo tenti di caricare un file PNG esterno:
if (System.capabilities.imageMIMETypes["image/png"]) {
loadMovie("images/image.png", "mc_myPngImage");
}
In Flash Lite il numero di operazioni loadMovie() eseguibili da un'applicazione in un determinato fotogramma è
limitato a cinque. Flash lite limita il numero di operazioni loadMovie eseguibili contemporaneamente a dieci.
Supporre, ad esempio, che l'applicazione contenga codice nel fotogramma 1 che carica sei immagini JPEG:
image1.loadMovie("image1.jpg");
image2.loadMovie("image2.jpg");
image3.loadMovie("image3.jpg");
image4.loadMovie("image4.jpg");
image5.loadMovie("image5.jpg");
image6.loadMovie("image6.jpg"); // Won't load
In questo caso, vengono caricate solo le prime cinque immagini (da image1.jpg a image5.jpg). L'ultima immagine
(image6.jpg) non viene caricata in quanto è stato raggiunto il limite di connessione. Una soluzione consiste nel
suddividere le chiamate loadMovie() su più fotogrammi, affinché ogni fotogramma contenga al massimo cinque
chiamate loadMovie().
Quando si chiama il metodo loadMovie(), impostare la proprietà MovieClip._lockroot su true nel filmato del
loader, come illustrato nell'esempio di codice riportato di seguito. Se nel filmato del loader non si imposta _lockroot
su true, tutti i riferimenti a _root nel filmato caricato punteranno a _root del loader anziché a _root del filmato
caricato.
myMovieClip._lockroot = true;
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 434
Classi ActionScript
Utilizzare il metodo MovieClip.unloadMovie() per rimuovere i file SWF o le immagini caricate con il
metodoloadMovie().
Utilizzare il metodo MovieClip.loadVariables(), l'oggetto XML, Flash Remoting oppure oggetti condivisi per
mantenere il file SWF attivo e caricarvi nuovi dati.
I risultati dell'uso di gestori di eventi con MovieClip.loadMovie() possono essere imprevedibili. Se si associa un
gestore di eventi a un pulsante tramite on() oppure si crea un gestore dinamico tramite un metodo del gestore di eventi
quale MovieClip.onPress, quindi si chiama loadMovie(), il gestore di eventi non rimarrà attivo dopo il caricamento
del nuovo contenuto. Se invece si associa un gestore di eventi a un clip filmato tramite onClipEvent() o on(), quindi
si chiama loadMovie() su tale clip filmato, il gestore di eventi rimarrà attivo anche dopo il caricamento del nuovo
contenuto.
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL assoluto o relativo del file SWF o JPEG da caricare. Un percorso relativo deve essere tale rispetto al
file SWF che si trova sul livello 0. Gli URL assoluti devono includere il riferimento al protocollo, ad esempio http://
o file:///.
method:String [opzionale] - Specifica un metodo HTTP per l'invio o il caricamento di variabili. Il parametro deve
essere la stringa GET o POST. Se nessuna variabile deve essere inviata, omettere questo parametro. Il metodo GET
aggiunge le variabili alla fine dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia
le variabili in un'intestazione HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
L'esempio seguente crea un nuovo clip filmato, quindi crea un elemento secondario al suo interno e carica
un'immagine PNG nell'elemento secondario. In tal modo l'elemento principale sarà in grado di conservare i valori di
istanza assegnati prima della chiamata a loadMovie.
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.onRelease = function():Void {
trace(this.image._url); // http://www.w3.org/Icons/w3c_main.png
}
var image:MovieClip = mc.createEmptyMovieClip("image", mc.getNextHighestDepth());
image.loadMovie("http://www.w3.org/Icons/w3c_main.png");
Vedete anche
_lockroot (proprietà MovieClip._lockroot), unloadMovie (metodo MovieClip.unloadMovie),
loadVariables (metodo MovieClip.loadVariables), loadMovie (metodo MovieClip.loadMovie), onPress
(gestore MovieClip.onPress), MovieClipLoader, Gestore onClipEvent(), Costanti, Funzione
loadMovieNum, Funzione unloadMovie, Funzione unloadMovieNum
loadVariables (metodo MovieClip.loadVariables)
public loadVariables(url:String, [method:String]) : Void
Legge i dati da un file esterno e imposta i valori delle variabili nel clip filmato. Il file esterno può essere un file di testo
generato da ColdFusion, uno script CGI, una pagina ASP (Active Server Page), uno script PHP o qualsiasi altro file di
testo formattato correttamente. Il file può contenere un numero qualsiasi di variabili.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 435
Classi ActionScript
Il metodo loadVariables può essere utilizzato anche per aggiornare con dei nuovi valori le variabili del clip filmato
attivo.
Il metodo loadVariables richiede che il testo dell'URL sia nel formato MIME standard: application/x-www-formurlencoded (formato di script CGI).
Nei file SWF eseguiti in una versione di Flash Player precedente alla 7, l'url deve trovarsi nello stesso superdominio
del file SWF che emette la chiamata. Un superdominio può essere derivato rimovendo il componente più a sinistra
dell'URL di un file. Ad esempio, un file SWF che si trova in www.someDomain.com può caricare dati da un'origine
situata in store.someDomain.com in quanto entrambi i file si trovano nel superdominio someDomain.com.
Nei file SWF eseguiti nella versione di Flash Player 7 o successiva, l'url deve trovarsi esattamente nello stesso dominio
del file SWF che genera la chiamata. Ad esempio, un file SWF che si trova nel sito www.someDomain.com può caricare
dati solo da altre origini presenti nel sito www.someDomain.com. Per caricare dati da un dominio diverso, è possibile
collocare un file di criteri dei domini sul server che ospita l'origine dati a cui si sta accedendo.
Per caricare variabili in un livello specifico, utilizzare loadVariablesNum() anziché loadVariables().
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL assoluto o relativo del file esterno che contiene le variabili da caricare. Se il file SWF che genera la
chiamata viene eseguito in un browser Web, l'url deve trovarsi nello stesso dominio del file SWF; per informazioni
dettagliate, vedete la descrizione di seguito.
method:String [opzionale] - Specifica un metodo HTTP per l'invio di variabili. Il parametro deve essere la stringa GET
o POST. Se non vengono inviate variabili, omettere questo parametro. Il metodo GET aggiunge le variabili alla fine
dell'URL e viene utilizzato quando il numero di variabili è ridotto; il metodo POST invia le variabili in un'intestazione
HTTP separata e viene utilizzato per l'invio di stringhe di variabili lunghe.
Esempio
L'esempio seguente carica le informazioni dal file di testo params.txt nel clip filmato target_mc creato mediante
createEmptyMovieClip(). La funzione setInterval() viene utilizzata per controllare l'avanzamento. Lo script
cerca una variabile denominata done nel file params.txt.
this.createEmptyMovieClip("target_mc", this.getNextHighestDepth());
target_mc.loadVariables("params.txt");
function checkParamsLoaded() {
if (target_mc.done == undefined) {
trace("not yet.");
} else {
trace("finished loading. killing interval.");
trace("-------------");
for (i in target_mc) {
trace(i+": "+target_mc[i]);
}
trace("-------------");
clearInterval(param_interval);
}
}
var param_interval = setInterval(checkParamsLoaded, 100);
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 436
Classi ActionScript
Il file params.txt include il testo seguente:
var1="hello"&var2="goodbye"&done="done"
Vedete anche
loadMovie (metodo MovieClip.loadMovie), Funzione loadVariablesNum, unloadMovie (metodo
MovieClip.unloadMovie)
localToGlobal (metodo MovieClip.localToGlobal)
public localToGlobal(pt:Object) : Void
Converte le coordinate del clip filmato (locali) in quelle dello stage (globali) per l'oggetto pt.
Il metodo MovieClip.localToGlobal() consente di convertire qualsiasi coppia data di coordinate x e y da valori
relativi all'angolo superiore sinistro di un clip filmato specifico in valori relativi all'angolo superiore sinistro dello stage.
È necessario innanzitutto creare un oggetto generico con due proprietà: x e y. Questi valori x e y (che devono essere
chiamati x e y) vengono definiti coordinate locali poiché si riferiscono all'angolo superiore sinistro del clip filmato. La
proprietà x rappresenta l'offset orizzontale dall'angolo superiore sinistro del clip filmato. In altre parole, rappresenta
la distanza verso destra in cui si trova il punto. Ad esempio, se x = 50, il punto si trova 50 pixel a destra dell'angolo
superiore sinistro. La proprietà y rappresenta l'offset verticale dall'angolo superiore sinistro del clip filmato. In altre
parole, rappresenta la distanza verso il basso in cui si trova il punto. Ad esempio, se y = 20, il punto si trova 20 pixel
sotto l'angolo superiore sinistro. Il codice seguente crea un oggetto generico con queste coordinate.
var myPoint:Object = new Object();
myPoint.x = 50;
myPoint.y = 20;
In alternativa, è possibile creare l'oggetto e assegnare i valori contemporaneamente con un valore letterale Object.
var myPoint:Object = {x:50, y:20};
Dopo aver creato un oggetto point con coordinate locali, è possibile convertirle in coordinate globali. Il metodo
localToGlobal() non restituisce un valore poiché modifica i valori di x e y nell'oggetto generico inviato come
parametro, convertendoli da valori relativi a un clip filmato specifico (coordinate locali) in valori relativi allo stage
(coordinate globali).
Ad esempio, se si crea un clip filmato collocato nel punto (_x:100, _y:100) e si passa un punto locale che rappresenta
un punto accanto all'angolo superiore sinistro del clip filmato (x:10, y:10) al metodo localToGlobal(), questo
dovrebbe convertire i valori x e y in coordinate globali, in questo caso (x:110, y:110). Questa conversione si verifica
poiché le coordinate x e y sono espresse in relazione all'angolo superiore sinistro dello stage anziché a quello del clip
filmato.
Le coordinate del clip filmato sono state espresse utilizzando _x e _y, essendo queste le proprietà di MovieClip
utilizzate per impostare i valori x e y per gli oggetti MovieClip. Per l'oggetto generico vengono tuttavia utilizzati i valori
x and y senza carattere di sottolineatura. Il codice seguente converte le coordinate x e y in coordinate globali:
var myPoint:Object = {x:10, y:10}; // create your generic point object
this.createEmptyMovieClip("myMovieClip", this.getNextHighestDepth());
myMovieClip._x = 100; // _x for movieclip x position
myMovieClip._y = 100; // _y for movieclip y position
myMovieClip.localToGlobal(myPoint);
trace ("x: " + myPoint.x); // output: 110
trace ("y: " + myPoint.y); // output: 110
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 437
Classi ActionScript
Disponibilità
Flash Lite 2.0
Parametri
pt:Object - Il nome o l'identificatore di un oggetto creato con la classe Object, che specifica le coordinate x e y come
proprietà.
Esempio
Nell'esempio seguente vengono convertite le coordinate x e y dell'oggetto my_mc, dalle coordinate del clip filmato
(locali) in quelle dello stage (globali). Il punto centrale del clip filmato viene riflesso dopo aver fatto clic e trascinato
l'istanza.
this.createTextField("point_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
var mouseListener:Object = new Object();
mouseListener.onMouseMove = function() {
var point:Object = {x:my_mc._width/2, y:my_mc._height/2};
my_mc.localToGlobal(point);
point_txt.text = "x:"+point.x+", y:"+point.y;
};
Mouse.addListener(mouseListener);
my_mc.onPress = function() {
this.startDrag();
};
my_mc.onRelease = function() {
this.stopDrag();
};
Vedete anche
globalToLocal (metodo MovieClip.globalToLocal)
_lockroot (proprietà MovieClip._lockroot)
public _lockroot : Boolean
Un valore booleano che specifica l'elemento a cui si riferisce _root quando un file SWF viene caricato in un clip
filmato. La proprietà _lockrootnon è definita per impostazione predefinita. È possibile impostarla all'interno del
file SWF che si sta caricando o del gestore che sta caricando il clip filmato.
Ad esempio, si supponga che il documento Games.fla che consente all'utente di scegliere un gioco da eseguire carichi
il gioco (ad esempio, Chess.swf) nel clip filmato game_mc. Accertarsi che dopo il caricamento in Games.swf, qualsiasi
utilizzo di _root in Chess.swf faccia ancora riferimento a _root in Chess.swf (non _root in Games.swf). Se si ha
l'accesso al file Chess.fla e lo si pubblica per Flash Player 7 o versioni successive, è possibile aggiungere l'istruzione
seguente a Chess.fla sulla linea temporale principale:
this._lockroot = true;
Se non si ha accesso a Chess.fla (ad esempio, se si carica Chess.swf da un sito di terzi in chess_mc), è possibile
impostarne la proprietà _lockroot quando lo si carica. Posizionare il codice ActionScript seguente sulla linea
temporale principale di Games.fla:
chess_mc._lockroot = true;
In questo caso, Chess.swf può essere pubblicato per qualunque versione di Flash Player, a condizione che Games.swf
sia pubblicato per Flash Player 7 o versioni successive.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 438
Classi ActionScript
Quando si chiama il metodo loadMovie(), impostare la proprietà MovieClip._lockroot su true nel filmato del
loader, come illustrato nel codice riportato di seguito. Se nel filmato del loader non si imposta _lockroot su true,
tutti i riferimenti a _root nel filmato caricato punteranno a _root del loader anziché a _root del filmato caricato:
myMovieClip._lockroot = true;
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, per lockroot.fla viene applicata la proprietà _lockroot al file SWF principale. Se il file SWF
viene caricato in un altro documento FLA, _root fa sempre riferimento all'area di validità di lockroot.swf, che
contribuisce a prevenire conflitti. Posizionare il codice ActionScript seguente sulla linea temporale principale di
lockroot.fla:
this._lockroot = true;
_root.myVar = 1;
_root.myOtherVar = 2;
trace("from lockroot.swf");
for (i in _root) {
trace(" "+i+" -> "+_root[i]);
}
trace("");
che traccia le informazioni seguenti:
from lockroot.swf
myOtherVar -> 2
myVar -> 1
_lockroot -> true
$version -> WIN 7,0,19,0
Nell'esempio seguente vengono caricati due file SWF, lockroot.swf e nolockroot.swf. Il documento lockroot.fla
contiene il codice ActionScript dell'esempio precedente. Per il file FLA nolockroot, il codice seguente è collocato sul
fotogramma 1 della linea temporale:
_root.myVar = 1;
_root.myOtherVar = 2;
trace("from nolockroot.swf");
for (i in _root) {
trace(" "+i+" -> "+_root[i]);
}
trace("");
A differenza del file nolockroot.swf, al file lockroot.swf è applicata la proprietà _lockroot. Dopo il caricamento,
ciascun file scarica variabili dalle relative aree di validità _root. Posizionare il codice ActionScript seguente sulla linea
temporale principale di un documento FLA:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 439
Classi ActionScript
this.createEmptyMovieClip("lockroot_mc", this.getNextHighestDepth());
lockroot_mc.loadMovie("lockroot.swf");
this.createEmptyMovieClip("nolockroot_mc", this.getNextHighestDepth());
nolockroot_mc.loadMovie("nolockroot.swf");
function dumpRoot() {
trace("from current SWF file");
for (i in _root) {
trace(" "+i+" -> "+_root[i]);
}
trace("");
}
dumpRoot();
che traccia le informazioni seguenti:
from current SWF file
dumpRoot -> [type Function]
$version -> WIN 7,0,19,0
nolockroot_mc -> _level0.nolockroot_mc
lockroot_mc -> _level0.lockroot_mc
from nolockroot.swf
myVar -> 1
i -> lockroot_mc
dumpRoot -> [type Function]
$version -> WIN 7,0,19,0
nolockroot_mc -> _level0.nolockroot_mc
lockroot_mc -> _level0.lockroot_mc
from lockroot.swf
myOtherVar -> 2
myVar -> 1
Il file a cui non viene applicata _lockroot contiene inoltre tutte le altre variabili incluse nel file radice SWF. Se non si
dispone dell'accesso a nolockroot.fla, è possibile aggiungere il codice ActionScript seguente alla linea temporale
principale per cambiare la proprietà _lockroot nel precedente documento FLA principale:
this.createEmptyMovieClip("nolockroot_mc", this.getNextHighestDepth());
nolockroot_mc._lockroot = true;
nolockroot_mc.loadMovie("nolockroot.swf");
che quindi traccia quanto segue:
from current SWF file
dumpRoot -> [type Function]
$version -> WIN 7,0,19,0
nolockroot_mc -> _level0.nolockroot_mc
lockroot_mc -> _level0.lockroot_mc
from nolockroot.swf
myOtherVar -> 2
myVar -> 1
from lockroot.swf
myOtherVar -> 2
myVar -> 1
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 440
Classi ActionScript
Vedete anche
Proprietà _root, _lockroot (proprietà MovieClip._lockroot), attachMovie (metodo
MovieClip.attachMovie), loadMovie (metodo MovieClip.loadMovie), onLoadInit (listener di eventi
MovieClipLoader.onLoadInit)
moveTo (metodo MovieClip.moveTo)
public moveTo(x:Number, y:Number) : Void
Sposta la posizione di disegno corrente nel punto (x, y). Se mancano uno o più parametri, il metodo ha esito negativo
e la posizione di disegno corrente non cambia.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
x:Number - Un numero intero che indica la posizione orizzontale relativa al punto di registrazione del clip filmato
principale.
y:Number - Un numero intero che indica la posizione verticale relativa al punto di registrazione del clip filmato
principale.
Esempio
Nell'esempio seguente viene disegnato un triangolo con una linea magenta uniforme di spessore pari a 5 pixel e un
riempimento blu parzialmente trasparente:
this.createEmptyMovieClip("triangle_mc", 1);
triangle_mc.beginFill(0x0000FF, 30);
triangle_mc.lineStyle(5, 0xFF00FF, 100);
triangle_mc.moveTo(200, 200);
triangle_mc.lineTo(300, 300);
triangle_mc.lineTo(100, 300);
triangle_mc.lineTo(200, 200);
triangle_mc.endFill();
Vedete anche
createEmptyMovieClip (metodo MovieClip.createEmptyMovieClip), lineStyle (metodo
MovieClip.lineStyle), lineTo (metodo MovieClip.lineTo)
_name (proprietà MovieClip._name)
public _name : String
Il nome dell'istanza del clip filmato.
Disponibilità
Flash Lite 2.0
Vedete anche
_name (proprietà Button._name)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 441
Classi ActionScript
nextFrame (metodo MovieClip.nextFrame)
public nextFrame() : Void
Invia l'indicatore di riproduzione al fotogramma successivo e lo ferma.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Esempio
Il seguente esempio utilizza _framesloaded e nextFrame() per caricare il contenuto in un file SWF. Evitare di
aggiungere codice al fotogramma 1, ma aggiungere il codice ActionScript seguente al fotogramma 2 della linea
temporale:
if (this._framesloaded >= 3) {
this.nextFrame();
} else {
this.gotoAndPlay(1);
}
Aggiungere quindi il codice seguente, e il contenuto che si desidera caricare, al fotogramma 3:
stop();
Vedete anche
Funzione nextFrame, Funzione prevFrame, prevFrame (metodo MovieClip.prevFrame)
onData (gestore MovieClip.onData)
onData = function() {}
Richiamato quando un clip filmato riceve dati da una chiamata a MovieClip.loadVariables() o
MovieClip.loadMovie(). È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi
viene richiamato. È possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe
MovieClip o sia collegato a un simbolo presente nella libreria.
Questo gestore può essere utilizzato solo con i clip filmato per i quali un simbolo della libreria è associato a una classe.
Per richiamare un gestore di eventi quando uno specifico clip filmato riceve dei dati, anziché questo gestore utilizzare
il gestore onClipEvent(), che viene richiamato quando un clip filmato qualunque riceve dei dati.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene illustrato l'utilizzo corretto di MovieClip.onData() e onClipEvent(data).
symbol_mc è un simbolo di clip filmato nel pannello Libreria, collegato alla classe MovieClip. La prima funzione sotto
viene attivata per ciascuna istanza di symbol_mc nel momento in cui vengono ricevuti dei dati.
dynamic_mc è un clip filmato in fase di caricamento mediante MovieClip.loadMovie(). Il codice seguente, utilizzando
dynamic_mc, cerca di chiamare una funzione nel momento in cui viene caricato il clip filmato, ma l'operazione non
riesce. Il file SWF caricato deve essere un simbolo della libreria associato alla classe MovieClip.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 442
Classi ActionScript
L'ultima funzione utilizza onClipEvent(data). Il gestore di eventi onClipEvent() viene chiamato per qualsiasi clip
filmato che riceve dati, indipendentemente dal fatto che si trovi nella libreria o meno. Pertanto, l'ultima funzione in
questo esempio viene chiamata quando viene creata un'istanza di symbol_mc e quando viene caricato il file
replacement.swf.
// The following function is triggered for each instance of symbol_mc
// when it receives data.
symbol_mc.onData = function() {
trace("The movie clip has received data");
}
// This code attempts to call a function when the clip is loaded,
// but it will not work, because the loaded SWF is not a symbol
// in the library associated with the MovieClip class.
function output()
{
trace("Will never be called.");
}
dynamic_mc.onData = output;
dynamic_mc.loadMovie("replacement.swf");
// The following function is invoked for any movie clip that
// receives data, whether it is in the library or not.
onClipEvent( data ) {
trace("The movie clip has received data");
}
Vedete anche
Gestore onClipEvent()
onDragOut (gestore MovieClip.onDragOut)
onDragOut = function() {}
Richiamato quando viene premuto il pulsante del mouse e il puntatore esce dall'oggetto. È necessario definire una
funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È possibile definire la funzione
sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia collegato a un simbolo presente
nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onDragOut che invia un'azione trace() al pannello
Output:
my_mc.onDragOut = function () {
trace ("onDragOut called");
}
Vedete anche
onDragOver (gestore MovieClip.onDragOver)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 443
Classi ActionScript
onDragOver (gestore MovieClip.onDragOver)
onDragOver = function() {}
Richiamato quando il puntatore viene trascinato fuori dall'oggetto e successivamente sopra di esso. È necessario
definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È possibile definire
la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia collegato a un simbolo
presente nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onDragOver che invia un'azione trace() al pannello
Output:
my_mc.onDragOver = function () {
trace ("onDragOver called");
}
Vedete anche
onDragOut (gestore MovieClip.onDragOut)
onEnterFrame (gestore MovieClip.onEnterFrame)
onEnterFrame = function() {}
Richiamato ripetutamente alla frequenza dei fotogrammi del file SWF. La funzione assegnata dall'utente al gestore di
eventi onEnterFrame viene elaborata prima di qualsiasi altro codice ActionScript associato ai fotogrammi interessati.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il gestore di eventi onEnterFrame che invia un'azione trace()
al pannello Output:
my_mc.onEnterFrame = function () {
trace ("onEnterFrame called");
}
onKeyDown (gestore MovieClip.onKeyDown)
onKeyDown = function() {}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 444
Classi ActionScript
Richiamato quando un clip filmato è attivo e viene premuto un tasto. Il gestore di eventi onKeyDown viene richiamato
senza parametri. I metodi Key.getAscii() e Key.getCode() consentono di determinare quale tasto è stato premuto.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Il gestore di eventi onKeyDown funziona solo se il clip filmato è stato attivato. Innanzitutto, la proprietà
MovieClip.focusEnabled per il clip filmato deve essere impostata su true. Quindi, il clip deve essere attivato. Per
attivarlo è possibile utilizzare Selection.setFocus() o impostare il tasto Tab per spostarsi sul clip.
Se si utilizza Selection.setFocus(), il percorso del clip filmato deve essere passato a Selection.setFocus(). È
molto facile che altri elementi ridiventino attivi dopo che viene mosso il mouse.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onKeyDown() che invia un'azione trace() al
pannello Output: Creare un clip filmato denominato my_mc e aggiungere il seguente codice ActionScript al file FLA
o AS:
my_mc.onKeyDown = function () {
trace ("key was pressed");
}
Per il corretto funzionamento del gestore di eventi onKeyDown, è necessario che il clip filmato sia attivo. Aggiungere
il codice ActionScript seguente per impostare lo stato attivo:
my_mc.tabEnabled = true;
my_mc.focusEnabled = true;
Selection.setFocus(my_mc);
Quando si passa al clip filmato e si preme un tasto, nel pannello Output viene visualizzato key was pressed: Questa
operazione non viene tuttavia eseguita dopo lo spostamento del mouse, poiché il clip filmato ha perso lo stato attivo.
Nella maggior parte dei casi, sarà quindi necessario utilizzare Key.onKeyDown.
Vedete anche
getAscii (metodo Key.getAscii), getCode (metodo Key.getCode), focusEnabled (proprietà
MovieClip.focusEnabled), setFocus (metodo Selection.setFocus), onKeyDown (listener di eventi
Key.onKeyDown), onKeyUp (gestore MovieClip.onKeyUp)
onKeyUp (gestore MovieClip.onKeyUp)
onKeyUp = function() {}
Richiamato quando viene rilasciato un tasto. Il gestore di eventi onKeyUp viene richiamato senza parametri. I metodi
Key.getAscii() e Key.getCode() consentono di determinare quale tasto è stato premuto. È necessario definire una
funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È possibile definire la funzione
sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia collegato a un simbolo presente
nella libreria.
Il gestore di eventi onKeyUp funziona solo se il clip filmato è stato attivato. Innanzitutto, la proprietà
MovieClip.focusEnabled per il clip filmato deve essere impostata su true. Quindi, il clip deve essere attivato. Per
attivarlo è possibile utilizzare Selection.setFocus() o impostare il tasto Tab per spostarsi sul clip.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 445
Classi ActionScript
Se si utilizza Selection.setFocus(), il percorso del clip filmato deve essere passato a Selection.setFocus(). È
molto facile che altri elementi ridiventino attivi dopo che viene mosso il mouse.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onKeyUp che invia un'azione trace() al pannello
Output:
my_mc.onKeyUp = function () {
trace ("onKey called");
}
Nell'esempio seguente viene impostato lo stato attivo:
my_mc.focusEnabled = true;
Selection.setFocus(my_mc);
Vedete anche
getAscii (metodo Key.getAscii), getCode (metodo Key.getCode), focusEnabled (proprietà
MovieClip.focusEnabled), setFocus (metodo Selection.setFocus), onKeyDown (listener di eventi
Key.onKeyDown)onKeyDown (gestore MovieClip.onKeyDown)
onKillFocus (gestore MovieClip.onKillFocus)
onKillFocus = function(newFocus:Object) {}
Richiamato quando un clip filmato viene disattivato. Il metodo onKillFocus riceve un solo parametro, newFocus, che
è un oggetto che rappresenta il nuovo oggetto che viene attivato. Se non viene attivato alcun oggetto, newFocus
contiene il valore null.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Parametri
newFocus:Object - L'oggetto che viene attivato.
Esempio
Nell'esempio seguente vengono visualizzate informazioni sul clip filmato che non è più attivo e sull'istanza che riceve
lo stato attivo. I due clip filmato, denominati my_mc e other_mc, si trovano sullo stage. È possibile aggiungere il codice
ActionScript seguente al documento AS o FLA:
my_mc.onRelease = Void;
other_mc.onRelease = Void;
my_mc.onKillFocus = function(newFocus) {
trace("onKillFocus called, new focus is: "+newFocus);
};
Quando si preme il tasto Tab per spostarsi tra due istanze, nel pannello Output vengono visualizzate le informazioni.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 446
Classi ActionScript
Vedete anche
onSetFocus (gestore MovieClip.onSetFocus)
onLoad (gestore MovieClip.onLoad)
onLoad = function() {}
Richiamato quando per il clip filmato viene creata un'istanza e il clip filmato viene visualizzato nella linea temporale.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Questo gestore può essere utilizzato solo con i clip filmato per i quali un simbolo della libreria è associato a una classe.
Per richiamare un gestore di eventi quando viene caricato uno specifico clip filmato (ad esempio, quando si utilizza
MovieClip.loadMovie() per caricare un file SWF in modo dinamico), anziché questo gestore utilizzare il gestore
onClipEvent(load) o la classe MovieClipLoader. A differenza di MovieClip.onLoad, quando viene caricato un clip
filmato qualunque, vengono richiamati gli altri gestori.
Disponibilità
Flash Lite 2.0
Esempio
In questo esempio viene illustrato come utilizzare il gestore di eventi onLoad in una definizione di classe ActionScript
2.0 che estende la classe MovieClip. Creare innanzitutto un file di classe denominato Oval.as e definire un metodo della
classe denominato onLoad(); verificare che il file di classe sia inserito nel percorso di classe corretto:
// contents of Oval.as
class Oval extends MovieClip{
public function onLoad () {
trace ("onLoad called");
}
}
Creare quindi un simbolo di clip filmato nella libreria e denominarlo Oval. Fare clic per aprire il menu di scelta rapida
(in genere con il pulsante destro del mouse) sul simbolo nel pannello Libreria, quindi selezionare Concatenamento dal
menu di scelta rapida. Fare clic su "Esporta per ActionScript" e inserire la parola "Ovale" (senza virgolette) nei campi
"Identificatore" e "Classe AS 2.0". Lasciare selezionata la casella di controllo Esporta nel primo fotogramma, quindi fare
clic su OK.
Passare al primo fotogramma del file e immettere il codice seguente nel pannello Azioni:
var myOval:Oval = Oval(attachMovie("Oval","Oval_1",1));
Effettuare infine una prova del filmato; dovrebbe essere visualizzato il testo "onLoad called".
Vedete anche
loadMovie (metodo MovieClip.loadMovie), Gestore onClipEvent(), MovieClipLoader
onMouseDown (gestore MovieClip.onMouseDown)
onMouseDown = function() {}
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 447
Classi ActionScript
Richiamato quando viene premuto il pulsante del mouse. È necessario definire una funzione che viene eseguita nel
momento in cui il gestore di eventi viene richiamato. È possibile definire la funzione sulla linea temporale oppure in
un file di classe che estenda la classe MovieClip o sia collegato a un simbolo presente nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onMouseDown che invia un'azione trace() al
pannello Output:
my_mc.onMouseDown = function () {
trace ("onMouseDown called");
}
onMouseMove (gestore MovieClip.onMouseMove)
onMouseMove = function() {}
Richiamato allo spostamento del mouse. È necessario definire una funzione che viene eseguita nel momento in cui il
gestore di eventi viene richiamato. È possibile definire la funzione sulla linea temporale oppure in un file di classe che
estenda la classe MovieClip o sia collegato a un simbolo presente nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onMouseMove che invia un'azione trace() al
pannello Output:
my_mc.onMouseMove = function () {
trace ("onMouseMove called");
}
onMouseUp (gestore MovieClip.onMouseUp)
onMouseUp = function() {}
Richiamato quando viene rilasciato il pulsante del mouse. È necessario definire una funzione che viene eseguita nel
momento in cui il gestore di eventi viene richiamato. È possibile definire la funzione sulla linea temporale oppure in
un file di classe che estenda la classe MovieClip o sia collegato a un simbolo presente nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 448
Classi ActionScript
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onMouseUp che invia un'azione trace() al pannello
Output:
my_mc.onMouseUp = function () {
trace ("onMouseUp called");
}
onPress (gestore MovieClip.onPress)
onPress = function() {}
Richiamato quando si fa clic con il mouse mentre il puntatore si trova sopra un clip filmato. È necessario definire una
funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È possibile definirlo nella libreria.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onPress che invia un'azione trace() al pannello
Output:
my_mc.onPress = function () {
trace ("onPress called");
}
onRelease (gestore MovieClip.onRelease)
onRelease = function() {}
Richiamato quando il pulsante del mouse viene rilasciato sopra un clip filmato. È necessario definire una funzione che
viene eseguita nel momento in cui il gestore di eventi viene richiamato. È possibile definire la funzione sulla linea
temporale oppure in un file di classe che estenda la classe MovieClip o sia collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onRelease che invia un'azione trace() al pannello
Output:
my_mc.onRelease = function () {
trace ("onRelease called");
}
onReleaseOutside (gestore MovieClip.onReleaseOutside)
onReleaseOutside = function() {}
Richiamato quando il pulsante del mouse è stato premuto all'interno dell'area del clip filmato e successivamente
rilasciato fuori della stessa.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 449
Classi ActionScript
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Nota: questo gestore di eventi è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onReleaseOutside che invia un'azione trace() al
pannello Output:
my_mc.onReleaseOutside = function () {
trace ("onReleaseOutside called");
}
onRollOut (gestore MovieClip.onRollOut)
onRollOut = function() {}
Richiamato quando il puntatore viene spostato fuori dell'area del clip filmato.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onRollOut che invia un'azione trace() al pannello
Output:
my_mc.onRollOut = function () {
trace ("onRollOut called");
}
onRollOver (gestore MovieClip.onRollOver)
onRollOver = function() {}
Richiamato quando il puntatore viene spostato sopra l'area del clip filmato.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 450
Classi ActionScript
Esempio
Nell'esempio seguente viene definita una funzione per il metodo onRollOver che invia un'azione trace() al pannello
Output:
my_mc.onRollOver = function () {
trace ("onRollOver called");
}
onSetFocus (gestore MovieClip.onSetFocus)
onSetFocus = function(oldFocus:Object) {}
Richiamato quando un clip filmato viene attivato. Il parametro oldFocus indica l'oggetto che viene disattivato. Ad
esempio, se l'utente preme il tasto Tab per passare da un clip filmato a un campo di testo, oldFocus contiene l'istanza
del clip filmato.
Se in precedenza non è stato attivato alcun oggetto, oldFocus contiene il valore null.
È necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Disponibilità
Flash Lite 2.0
Parametri
oldFocus:Object - L'oggetto che viene disattivato.
Esempio
Nell'esempio seguente vengono visualizzate informazioni sul clip filmato attivato e sull'istanza attiva in precedenza. I
due clip filmato, denominati my_mc e other_mc, si trovano sullo stage. Aggiungere il codice ActionScript seguente al
documento AS o FLA:
my_mc.onRelease = Void;
other_mc.onRelease = Void;
my_mc.onSetFocus = function(oldFocus) {
trace("onSetFocus called, previous focus was: "+oldFocus);
}
Quando si preme il tasto Tab tra due istanze, nel pannello Output vengono visualizzate le informazioni.
Vedete anche
onKillFocus (gestore MovieClip.onKillFocus)
onUnload (gestore MovieClip.onUnload)
onUnload = function() {}
Richiamato nel primo fotogramma dopo che il clip filmato è stato rimosso dalla linea temporale. Le azioni associate al
gestore di eventi onUnload vengono elaborate prima di associare qualunque azione al fotogramma interessato. È
necessario definire una funzione che viene eseguita nel momento in cui il gestore di eventi viene richiamato. È
possibile definire la funzione sulla linea temporale oppure in un file di classe che estenda la classe MovieClip o sia
collegato a un simbolo presente nella libreria.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 451
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene definita una funzione per il metodo MovieClip.onUnload che invia un'azione trace()
al pannello Output:
my_mc.onUnload = function () {
trace ("onUnload called");
}
_parent (proprietà MovieClip._parent)
public _parent : MovieClip
Un riferimento al clip filmato o all'oggetto che contiene il clip filmato o l'oggetto corrente. L'oggetto corrente è
l'oggetto a cui fa riferimento la proprietà _parent. Utilizzare la proprietà _parent per specificare un percorso relativo
per i clip filmato o gli oggetti che si trovano sopra il clip filmato o per l'oggetto corrente.
È possibile utilizzare _parent per spostare verso l'alto più livelli nell'elenco di visualizzazione, come illustrato di
seguito:
this._parent._parent._alpha = 20;
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene tracciato il riferimento a un clip filmato e alla relativa relazione con la linea temporale
principale. Creare un clip filmato con il nome di istanza my_mc e aggiungerlo alla linea temporale principale.
Aggiungere il codice ActionScript seguente al file FLA o AS:
my_mc.onRelease = function() {
trace("You clicked the movie clip: "+this);
trace("The parent of "+this._name+" is: "+this._parent);
}
Quando si fa clic sul clip filmato, nel pannello Output vengono visualizzate le informazioni seguenti:
You clicked the movie clip: _level0.my_mc
The parent of my_mc is: _level0
Vedete anche
_parent (proprietà Button._parent), Proprietà _root, Funzione targetPath, _parent (proprietà
TextField._parent)
play (metodo MovieClip.play)
public play() : Void
Sposta l'indicatore di riproduzione nella linea temporale del clip filmato.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 452
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Utilizzare il codice ActionScript seguente per riprodurre la linea temporale principale di un file SWF. Questo codice
ActionScript si riferisce a un pulsante di un clip filmato denominato my_mc sulla linea temporale principale:
stop();
my_mc.onRelease = function() {
this._parent.play();
};
Utilizzare il codice ActionScript seguente per riprodurre la linea temporale di un clip filmato in un file SWF. Questo
codice ActionScript si riferisce a un pulsante denominato my_btn sulla linea temporale principale che riproduce un
clip filmato denominato animation_mc:
animation_mc.stop();
my_btn.onRelease = function(){
animation_mc.play();
};
Vedete anche
Funzione play, gotoAndPlay (metodo MovieClip.gotoAndPlay), Funzione gotoAndPlay
prevFrame (metodo MovieClip.prevFrame)
public prevFrame() : Void
Invia l'indicatore di riproduzione al fotogramma precedente e lo ferma.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, due pulsanti di clip filmato controllano la linea temporale. Il pulsante prev_mc sposta
l'indicatore di riproduzione sul fotogramma precedente, mentre il pulsante next_mc sposta l'indicatore di
riproduzione sul fotogramma successivo. Aggiungere contenuto a una serie di fotogrammi sulla linea temporale e
aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 453
Classi ActionScript
stop();
prev_mc.onRelease = function() {
var parent_mc:MovieClip = this._parent;
if (parent_mc._currentframe>1) {
parent_mc.prevFrame();
} else {
parent_mc.gotoAndStop(parent_mc._totalframes);
}
};
next_mc.onRelease = function() {
var parent_mc:MovieClip = this._parent;
if (parent_mc._currentframe<parent_mc._totalframes) {
parent_mc.nextFrame();
} else {
parent_mc.gotoAndStop(1);
}
};
Vedete anche
Funzione prevFrame
_quality (proprietà MovieClip._quality)
public _quality : String
Imposta o recupera la qualità di rendering utilizzata per un file SWF. I caratteri del dispositivo sono sottoposti ad
aliasing e pertanto non vengono modificati dalla proprietà _quality.
La proprietà _quality può essere impostata sui valori seguenti:
Valore
Descrizione
Antialiasing personalizzato
"LOW"
Qualità di rendering bassa.
Alle funzioni non viene applicata la funzione di
antialiasing.
"MEDIUM"
Qualità di rendering media. Si
tratta di un'impostazione adatta
per i filmati che non contengono
testo.
Le immagini vengono sottoposte ad
antialiasing utilizzando una griglia di 2 x 2 pixel.
"HIGH"
Qualità di rendering alta. È
Le immagini vengono sottoposte ad
l'impostazione predefinita
antialiasing utilizzando una griglia di 4 x 4 pixel.
utilizzata da Flash per la qualità di
rendering.
"BEST"
Qualità di rendering molto alta.
Le immagini vengono sottoposte ad
antialiasing utilizzando una griglia di 4 x 4 pixel.
Nota: benché sia possibile specificare questa proprietà per un oggetto Movie Clip, si tratta anche di una proprietà
globale ed è possibile specificarne il valore semplicemente come _quality.
Disponibilità
Flash Lite 2.0
Esempio
Questo esempio imposta la qualità di rendering di un clip filmato di nome my_mc su LOW:
my_mc._quality = "LOW";
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 454
Classi ActionScript
Vedete anche
Proprietà _quality
removeMovieClip (metodo MovieClip.removeMovieClip)
public removeMovieClip() : Void
Rimuove un'istanza del clip filmato creata con duplicateMovieClip(), MovieClip.duplicateMovieClip(),
MovieClip.createEmptyMovieClip(), o MovieClip.attachMovie().
Questo metodo non rimuove un clip filmato assegnato a un valore di profondità negativo. Per impostazione
predefinita, ai clip filmato creati con lo strumento di creazione vengono assegnati valori di profondità negativi. Per
rimuovere un clip filmato al quale è assegnato un valore di profondità negativo, utilizzare innanzitutto
MovieClip.swapDepths() per spostare il clip filmato su un valore di profondità positivo.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Esempio
Ogni volta che si fa clic su un pulsante nell'esempio seguente, si associa un'istanza di clip filmato sullo stage in una
posizione casuale. Quando si fa clic sull'istanza di un clip filmato, l'istanza viene rimossa dal file SWF.
function randRange(min:Number, max:Number):Number {
var randNum:Number = Math.round(Math.random()*(max-min))+min;
return randNum;
}
var bugNum:Number = 0;
addBug_btn.onRelease = addBug;
function addBug() {
var thisBug:MovieClip = this._parent.attachMovie("bug_id", "bug"+bugNum+"_mc", bugNum,
{_x:randRange(50, 500), _y:randRange(50, 350)});
thisBug.onRelease = function() {
this.removeMovieClip();
};
bugNum++;
}
Vedete anche
Funzione duplicateMovieClip, createEmptyMovieClip (metodo MovieClip.createEmptyMovieClip),
duplicateMovieClip (metodo MovieClip.duplicateMovieClip), attachMovie (metodo
MovieClip.attachMovie)swapDepths (metodo MovieClip.swapDepths)
_rotation (proprietà MovieClip._rotation)
public _rotation : Number
Specifica la rotazione del clip filmato, espressa in gradi, rispetto alla posizione originale. I valori da 0 a 180
rappresentano la rotazione oraria, quelli da 0 a -180 la rotazione antioraria. I valori esterni a questo intervallo vengono
aggiunti o sottratti a 360 per ottenere un valore interno all'intervallo. Ad esempio, l'istruzione my_mc._rotation =
450 è uguale a my_mc._rotation = 90.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 455
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene creata dinamicamente un'istanza clip filmato denominato triangle. Quando si esegue il
file SWF, fare clic sul clip filmato per ruotarlo:
this.createEmptyMovieClip("triangle", this.getNextHighestDepth());
triangle.beginFill(0x0000FF, 100);
triangle.moveTo(100, 100);
triangle.lineTo(100, 150);
triangle.lineTo(150, 100);
triangle.lineTo(100, 100);
triangle.onMouseUp= function() {
this._rotation += 15;
};
Vedete anche
_rotation (proprietà Button._rotation), _rotation (proprietà TextField._rotation)
setMask (metodo MovieClip.setMask)
public setMask(mc:Object) : Void
Il clip filmato del parametro mc viene reso come una maschera che rivela il clip filmato richiedente.
Il metodo setmask() consente ai clip filmato con più fotogrammi e con contenuto complesso e su più livelli di fungere
da maschere (un'operazione possibile mediante livelli maschera). Se in un clip filmato mascherato sono presenti dei
caratteri dispositivo, questi ultimi vengono disegnati ma non mascherati. Non è possibile impostare un clip filmato
come maschera di se stesso ad esempio, my_mc.setMask(my_mc).
Se si crea un livello maschera che contiene un clip filmato e successivamente vi si applica il metodo setMask(), la
chiamata a setMask() ha la priorità. Questo comportamento non è reversibile. Ad esempio, è possibile che un clip
filmato sia presente in un livello maschera di nome UIMask, che maschera un altro livello che contiene un altro clip
filmato di nome UIMaskee. Se mentre viene riprodotto il file SWF si chiama il metodo UIMask.setMask(UIMaskee),
da quel punto in poi UIMask viene mascherato da UIMaskee.
Per annullare una maschera creata con ActionScript, passare il valore null al metodo setMask(). Il codice seguente
annulla la maschera senza incidere sul livello maschera nella linea temporale.
UIMask.setMask(null);
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
mc:Object - Il nome dell'istanza di un clip filmato da utilizzare come maschera. Può essere un valore String o
MovieClip.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 456
Classi ActionScript
Esempio
Nel codice riportato di seguito il clip filmato circleMask_mc viene utilizzato per mascherare il clip filmato
theMaskee_mc:
theMaskee_mc.setMask(circleMask_mc);
_soundbuftime (proprietà MovieClip._soundbuftime)
public _soundbuftime : Number
Specifica il numero di secondi per cui un suono viene inserito nel prebuffer prima che ne inizi lo streaming.
Nota: benché sia possibile specificare questa proprietà per un oggetto MovieClip, si tratta in realtà di una proprietà
globale che si applica a tutti i suoni caricati ed è possibile specificarne il valore semplicemente come _soundbuftime.
Se si imposta questa proprietà per un oggetto MovieClip, viene in effetti impostata la proprietà globale.
Disponibilità
Flash Lite 2.0
Vedete anche
Proprietà _soundbuftime
startDrag (metodo MovieClip.startDrag)
public startDrag([lockCenter:Boolean], [left:Number], [top:Number], [right:Number],
[bottom:Number]) : Void
Consente all'utente di trascinare il clip filmato specificato. È possibile trascinare il clip filmato fino a quando il
trascinamento non viene interrotto esplicitamente mediante una chiamata a MovieClip.stopDrag() o non viene
reso trascinabile un altro clip filmato. È possibile trascinare un solo clip filmato alla volta.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Parametri
lockCenter:Boolean [opzionale] - Valore booleano che specifica che il clip filmato trascinabile è bloccato al centro
della posizione del mouse (true) oppure bloccato nel punto in cui l'utente aveva fatto clic sul clip filmato la prima volta
(false).
left:Number [opzionale] - Valore relativo alle coordinate del clip filmato principale, che indica un rettangolo di
delimitazione per il clip filmato.
top:Number [opzionale] - Valore relativo alle coordinate del clip filmato principale, che indica un rettangolo di
delimitazione per il clip filmato.
right:Number [opzionale] - Valore relativo alle coordinate del clip filmato principale, che indica un rettangolo di
delimitazione per il clip filmato.
bottom:Number [opzionale] - Valore relativo alle coordinate del clip filmato principale, che indica un rettangolo di
delimitazione per il clip filmato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 457
Classi ActionScript
Esempio
Nell'esempio seguente viene creata l'istanza di un clip filmato trascinabile denominata mc_1:
this.createEmptyMovieClip("mc_1", 1);
with (mc_1) {
lineStyle(1, 0xCCCCCC);
beginFill(0x4827CF);
moveTo(0, 0);
lineTo(80, 0);
lineTo(80, 60);
lineTo(0, 60);
lineTo(0, 0);
endFill();
}
mc_1.onPress = function() {
this.startDrag();
};
mc_1.onRelease = function() {
this.stopDrag();
};
Vedete anche
_droptarget (MovieClip._droptarget, proprietà), Funzione startDrag, stopDrag (metodo
MovieClip.stopDrag)
stop (metodo MovieClip.stop)
public stop() : Void
Interrompe il clip filmato in riproduzione.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene illustrato come interrompere un clip filmato denominato aMovieClip:
aMovieClip.stop();
Vedete anche
Funzione stop
stopDrag (metodo MovieClip.stopDrag)
public stopDrag() : Void
Termina un metodo MovieClip.startDrag(). Un clip filmato che è stato reso trascinabile mediante questo metodo
rimane tale finché non viene aggiunto un metodo stopDrag() o fino a quando un altro clip filmato non diventa
trascinabile. È possibile trascinare un solo clip filmato alla volta.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 458
Classi ActionScript
Nota: questo metodo è supportato in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene creata l'istanza di un clip filmato trascinabile denominata mc_1:
this.createEmptyMovieClip("mc_1", 1);
with (mc_1) {
lineStyle(1, 0xCCCCCC);
beginFill(0x4827CF);
moveTo(0, 0);
lineTo(80, 0);
lineTo(80, 60);
lineTo(0, 60);
lineTo(0, 0);
endFill();
}
mc_1.onPress = function() {
this.startDrag();
};
mc_1.onRelease = function() {
this.stopDrag();
};
Vedete anche
_droptarget (MovieClip._droptarget, proprietà), startDrag (metodo MovieClip.startDrag),
Funzione stopDrag
swapDepths (metodo MovieClip.swapDepths)
public swapDepths(target:Object) : Void
Scambia l'impilamento, detto anche livello di profondità (z-order), di questo clip filmato con il clip filmato specificato
dal parametro target o con il clip filmato che occupa il livello di profondità specificato nel parametro target.
Entrambi i clip filmato devono avere lo stesso clip filmato principale. Lo scambio del livello di profondità dei clip
filmato ha l'effetto di spostare un clip filmato in primo piano o dietro all'altro. Se un clip filmato sta eseguendo
un'interpolazione quando si chiama questo metodo, l'interpolazione viene interrotta.
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Questo parametro può avere uno dei due formati seguenti:
• Un numero che specifica il livello di profondità in cui deve essere collocato il clip filmato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 459
Classi ActionScript
• Una stringa che specifica il clip filmato la cui profondità viene sostituita con il clip filmato per il quale viene
applicato il metodo. Entrambi i clip filmato devono avere lo stesso clip filmato principale.
Esempio
Nell'esempio seguente viene scambiato l'ordine di impilamento di due istanze di clip filmato. Sovrapporre due istanze
del clip filmato, denominate myMC1_mc e myMC2_mc, sullo stage e quindi aggiungere il seguente script alla linea
temporale:
myMC1_mc.onRelease = function() {
this.swapDepths(myMC2_mc);
};
myMC2_mc.onRelease = function() {
this.swapDepths(myMC1_mc);
};
Vedete anche
Proprietà _level, getDepth (metodo MovieClip.getDepth), getInstanceAtDepth (metodo
MovieClip.getInstanceAtDepth), getNextHighestDepth (metodo MovieClip.getNextHighestDepth)
tabChildren (proprietà MovieClip.tabChildren)
public tabChildren : Boolean
Determina se gli elementi secondari di un clip filmato vengono inclusi nell'ordine di tabulazione automatico. Se la
proprietà tabChildren è undefined o true, gli elementi secondari di un clip filmato vengono inclusi nell'ordine di
tabulazione automatico. Se il valore di tabChildren è false, gli elementi secondari di un clip filmato non vengono
inclusi nell'ordine di tabulazione automatico. Il valore predefinito è undefined.
Disponibilità
Flash Lite 2.0
Esempio
Un widget dell'interfaccia di tipo casella di riepilogo creato come clip filmato contiene diversi elementi. L'utente può
fare clic su ogni elemento per selezionarlo, quindi ogni elemento rappresenta un pulsante. Solo la casella di riepilogo
stessa dovrebbe, tuttavia, corrispondere a uno spazio di tabulazione. Gli elementi all'interno della casella di riepilogo
dovrebbero essere esclusi dall'ordine di tabulazione. Per eseguire questa operazione, impostare la proprietà
tabChildren della casella di riepilogo su false.
La proprietà tabChildren non ha alcun effetto se viene utilizzata la proprietà tabIndex; la proprietà tabChildren
incide solo sull'ordine di tabulazione automatico.
Nell'esempio seguente viene disattivata la tabulazione per tutti i clip filmato secondari all'interno di un clip filmato
principale denominato menu_mc:
menu_mc.onRelease = function(){};
menu_mc.menu1_mc.onRelease = function(){};
menu_mc.menu2_mc.onRelease = function(){};
menu_mc.menu3_mc.onRelease = function(){};
menu_mc.menu4_mc.onRelease = function(){};
menu_mc.tabChildren = false;
Modificare l'ultima riga di codice come riportato di seguito, in modo da includere le istanze di clip filmato secondarie
di menu_mc nell'ordine di tabulazione automatico:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 460
Classi ActionScript
menu_mc.tabChildren = true;
Vedete anche
tabIndex (proprietà Button.tabIndex), tabEnabled (proprietà MovieClip.tabEnabled), tabIndex
(proprietà MovieClip.tabIndex), tabIndex (proprietà TextField.tabIndex)
tabEnabled (proprietà MovieClip.tabEnabled)
public tabEnabled : Boolean
Specifica se il clip filmato è incluso nell'ordine di tabulazione automatico. È non definito per impostazione
predefinita.
Se la proprietà tabEnablednon è definita, l'oggetto viene incluso nell'ordine di tabulazione automatico solo se
definisce almeno un gestore di clip filmato, ad esempio MovieClip.onRelease. Se tabEnabled è true, l'oggetto viene
incluso nell'ordine di tabulazione automatico. Se anche la proprietà tabIndex è impostata su un valore, l'oggetto viene
incluso a sua volta nell'ordine di tabulazione personalizzato.
Se tabEnabled è false, l'oggetto non viene incluso nell'ordine di tabulazione automatico o personalizzato, nemmeno
nel caso in cui la proprietà tabIndex sia impostata. Tuttavia, se MovieClip.tabChildren è true, è comunque
possibile includere gli elementi secondari del clip filmato nell'ordine di tabulazione automatico, anche se tabEnabled
è impostata su false.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente, myMC2_mc non viene incluso nell'ordine di tabulazione automatico:
myMC1_mc.onRelease = function() {};
myMC2_mc.onRelease = function() {};
myMC3_mc.onRelease = function() {};
myMC2_mc.tabEnabled = false;
Vedete anche
onRelease (gestore MovieClip.onRelease), tabEnabled (proprietà Button.tabEnabled), tabChildren
(proprietà MovieClip.tabChildren), tabIndex (proprietà MovieClip.tabIndex), tabEnabled
(proprietà TextField.tabEnabled)
tabIndex (proprietà MovieClip.tabIndex)
public tabIndex : Number
Consente di personalizzare l'ordine di tabulazione degli oggetti in un filmato. La proprietà tabIndexnon è definita
per impostazione predefinita. È possibile impostare la proprietà tabIndex su un'istanza di pulsante, clip filmato o
campo di testo.
Se un oggetto di un file SWF contiene una proprietà tabIndex, l'ordine di tabulazione automatico viene disabilitato e
l'ordine di tabulazione viene calcolato in base alle proprietà tabIndex degli oggetti presenti nel file SWF. L'ordine di
tabulazione automatico include solo gli oggetti dotati delle proprietà tabIndex.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 461
Classi ActionScript
La proprietà tabIndex deve essere un numero intero positivo. Gli oggetti vengono ordinati in base alle relative
proprietà tabIndex, in ordine ascendente. Un oggetto con un valore tabIndex di 1 precede un oggetto con il valore
tabIndex di 2. L'ordine di tabulazione personalizzato non tiene in considerazione le relazioni gerarchiche tra gli
oggetti in un file SWF. Tutti gli oggetti del file SWF dotati di proprietà tabIndex vengono inseriti nell'ordine di
tabulazione. Si consiglia di non utilizzare lo stesso valore di tabIndex per più oggetti.
Disponibilità
Flash Lite 2.0
Esempio
Il seguente codice ActionScript imposta un ordine di tabulazione personalizzato per tre istanze di clip filmato.
myMC1_mc.onRelease = function() {};
myMC2_mc.onRelease = function() {};
myMC3_mc.onRelease = function() {};
myMC1_mc.tabIndex = 2;
myMC2_mc.tabIndex = 1;
myMC3_mc.tabIndex = 3;
Vedete anche
tabIndex (proprietà Button.tabIndex), tabIndex (proprietà TextField.tabIndex)
_target (proprietà MovieClip._target)
public _target : String [read-only]
Restituisce il percorso di destinazione dell'istanza del clip filmato in notazione a barra. Utilizzare la funzione eval()
per convertire il percorso di destinazione in notazione del punto.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente vengono visualizzati i percorsi target delle istanze di clip filmato in un file SWF, sia in notazione
della barra che in notazione del punto.
for (var i in this) {
if (typeof (this[i]) == "movieclip") {
trace("name: " + this[i]._name + ",\t target: " + this[i]._target + ",\t target(2):"
+ eval(this[i]._target));
}
}
_totalframes (proprietà MovieClip._totalframes)
public _totalframes : Number [read-only]
Restituisce il numero totale di fotogrammi dell'istanza del clip filmato specificata dal parametro MovieClip.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 462
Classi ActionScript
Esempio
Nell'esempio seguente, due pulsanti di clip filmato controllano la linea temporale. Il pulsante prev_mc sposta
l'indicatore di riproduzione sul fotogramma precedente, mentre il pulsante next_mc sposta l'indicatore di
riproduzione sul fotogramma successivo. Aggiungere contenuto a una serie di fotogrammi sulla linea temporale e
aggiungere il codice ActionScript seguente al fotogramma 1 della linea temporale:
stop();
prev_mc.onRelease = function() {
var parent_mc:MovieClip = this._parent;
if (parent_mc._currentframe>1) {
parent_mc.prevFrame();
} else {
parent_mc.gotoAndStop(parent_mc._totalframes);
}
};
next_mc.onRelease = function() {
var parent_mc:MovieClip = this._parent;
if (parent_mc._currentframe<parent_mc._totalframes) {
parent_mc.nextFrame();
} else {
parent_mc.gotoAndStop(1);
}
};
trackAsMenu (proprietà MovieClip.trackAsMenu)
public trackAsMenu : Boolean
Un valore booleano che indica se altri pulsanti o clip filmato possono ricevere eventi associati al rilascio del mouse o
dello stilo. Se si trascina uno stilo o un mouse su un clip filmato e successivamente lo si rilascia su un altro clip filmato,
l'evento onRelease viene registrato per il secondo clip filmato. In questo modo è possibile creare i menu per il secondo
clip filmato. È possibile impostare la proprietà trackAsMenu su qualunque oggetto pulsante o clip filmato. Se la
proprietà trackAsMenu non è stata definita, il comportamento predefinito è false.
È possibile modificare la proprietà trackAsMenu in qualsiasi momento; al clip filmato modificato viene associato
immediatamente il nuovo comportamento.
Nota: questa proprietà è supportata in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene impostata la proprietà trackAsMenu per tre clip filmato sullo stage. Fare clic su un clip
filmato e rilasciare il pulsante del mouse su un secondo clip filmato per visualizzare l'istanza che riceve l'evento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 463
Classi ActionScript
myMC1_mc.trackAsMenu = true;
myMC2_mc.trackAsMenu = true;
myMC3_mc.trackAsMenu = false;
myMC1_mc.onRelease = clickMC;
myMC2_mc.onRelease = clickMC;
myMC3_mc.onRelease = clickMC;
function clickMC() {
trace("you clicked the "+this._name+" movie clip.");
};
Vedete anche
trackAsMenu (proprietà Button.trackAsMenu)
transform (proprietà MovieClip.transform)
public transform : Transform
Un oggetto con proprietà relative alla matrice, alla trasformazione del colore e ai limiti di pixel di un clip filmato. Le
specifiche proprietà matrix, colorTransform e tre proprietà di sola lettura (concatenatedMatrix,
concatenatedColorTransform e pixelBounds) sono descritte nella voce relativa alla classe Transform.
Ognuna delle proprietà dell'oggetto di trasformazione è, essa stessa, un oggetto. Questo aspetto è importante, poiché
il solo modo per impostare nuovi valori per gli oggetti matrice o colorTransform consiste nel creare un oggetto e
copiarlo nella proprietà transform.matrix o transform.colorTransform.
Ad esempio, per aumentare il valore tx della matrice di un clip filmato, è necessario eseguire una copia dell'intero
oggetto matrice, modificare la proprietà tx del nuovo oggetto e quindi copiare quest'ultimo nella proprietà matrix
dell'oggetto di trasformazione:
var myMatrix:Object = myDisplayObject.transform.matrix;
myMatrix.tx += 10;
myDisplayObject.transform.matrix = myMatrix;
Non è possibile impostare direttamente la proprietà tx. Il codice seguente non ha effetto su myDisplayObject:
myDisplayObject.transform.matrix.tx += 10;
È inoltre possibile copiare un numero intero oggetto di trasformazione e assegnarlo alla proprietà di trasformazione
di un altro clip filmato. Ad esempio, il codice seguente copia l'intero oggetto di trasformazione da myOldDisplayObj
a myNewDisplayObj:
myNewDisplayObj.transform = myOldDisplayObj.transform;
Il nuovo clip filmato, myNewDisplayObj, dispone ora degli stessi valori relativi alla matrice, alla trasformazione del
colore e ai limiti di pixel del clip filmato precedente, myOldDisplayObj.
Disponibilità
Flash Lite 3.1
Esempio
L'esempio seguente mostra come utilizzare la proprietà transform di un clip filmato per accedere e modificare la
posizione di un clip filmato mediante il posizionamento Matrix.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 464
Classi ActionScript
import flash.geom.Matrix;
var rect:MovieClip = createRectangle(20, 80, 0xFF0000);
var translateMatrix:Matrix = new Matrix();
translateMatrix.translate(10, 0);
rect.onPress = function() {
var tmpMatrix:Matrix = this.transform.matrix;
tmpMatrix.concat(translateMatrix);
this.transform.matrix = tmpMatrix;
}
function createRectangle(width:Number, height:Number, color:Number, scope:MovieClip):MovieClip {
scope = (scope == undefined) ? this : scope;
var depth:Number = scope.getNextHighestDepth();
var mc:MovieClip = scope.createEmptyMovieClip("mc_" + depth, depth);
mc.beginFill(color);
mc.lineTo(0, height);
mc.lineTo(width, height);
mc.lineTo(width, 0);
mc.lineTo(0, 0);
return mc;
}
Vedete anche
“Transform (flash.geom.Transform)” a pagina 666
unloadMovie (metodo MovieClip.unloadMovie)
public unloadMovie() : Void
Rimuove il contenuto di un'istanza di clip filmato. Le proprietà dell'istanza e i gestori del clip vengono conservati.
Per rimuovere l'istanza insieme alle relative proprietà e ai gestori del clip, utilizzare MovieClip.removeMovieClip().
È possibile estendere i metodi e i gestori di eventi della classe MovieClip creando una sottoclasse.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene scaricata un'istanza di clip filmato denominata box quando un utente fa clic sul clip
filmato box:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 465
Classi ActionScript
this.createEmptyMovieClip("box", 1);
with (box) {
lineStyle(1, 0xCCCCCC);
beginFill(0x4827CF);
moveTo(0, 0);
lineTo(80, 0);
lineTo(80, 60);
lineTo(0, 60);
lineTo(0, 0);
endFill();
}
box.onRelease = function() {
box.unloadMovie();
};
Vedete anche
removeMovieClip (metodo MovieClip.removeMovieClip), attachMovie (metodo MovieClip.attachMovie),
loadMovie (metodo MovieClip.loadMovie), Funzione unloadMovie, Funzione unloadMovieNum
_url (proprietà MovieClip._url)
public _url : String [read-only]
Recupera l'URL del file SWF, JPEG, GIF o PNG da cui è stato scaricato il clip filmato.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene visualizzato l'URL dell'immagine caricata nell'istanza image_mc nel pannello Output.
this.createEmptyMovieClip("image_mc", 1);
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
trace("_url: "+target_mc._url);
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
_visible (proprietà MovieClip._visible)
public _visible : Boolean
Un valore booleano che indica se il clip filmato è visibile. I clip filmato non visibili (quelli con la proprietà _visible
impostata su false) sono disabilitati. Ad esempio, non è possibile fare clic su un pulsante presente in un clip filmato
con _visible impostato sufalse.
Disponibilità
Flash Lite 2.0
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 466
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Esempio
Nell'esempio seguente viene impostata la proprietà _visible per due clip filmato denominati myMC1_mc e myMC2_mc.
La proprietà è impostata su true per un'istanza e su false per l'altra. Non è possibile fare clic sull'istanza myMC1_mc
dopo che la proprietà _visible è stata impostata su false.
myMC1_mc.onRelease = function()
trace(this._name+"._visible
this._visible = false;
};
myMC2_mc.onRelease = function()
trace(this._name+"._alpha =
this._alpha = 0;
};
{
= false");
{
0");
Vedete anche
_visible (proprietà Button._visible), _visible (proprietà TextField._visible)
_width (proprietà MovieClip._width)
public _width : Number
La larghezza del clip filmato, espressa in pixel.
Disponibilità
Flash Lite 2.0
Esempio
Nel seguente esempio di codice vengono visualizzate la larghezza e l'altezza di un clip filmato nel pannello Output:
this.createEmptyMovieClip("triangle", this.getNextHighestDepth());
triangle.beginFill(0x0000FF, 100);
triangle.moveTo(100, 100);
triangle.lineTo(100, 150);
triangle.lineTo(150, 100);
triangle.lineTo(100, 100);
trace(triangle._name + " = " + triangle._width + " X " + triangle._height + " pixels");
Vedete anche
_height (proprietà MovieClip._height)
_x (MovieClip._x, proprietà)
public _x : Number
Un numero intero che imposta la coordinata x di un clip filmato in relazione alle coordinate locali del clip filmato
principale. Se un clip filmato si trova sulla linea temporale principale, le sue coordinate considerano l'angolo superiore
sinistro dello stage come punto (0, 0). Se è all'interno di un altro clip filmato che contiene delle trasformazioni, il clip
filmato utilizza il sistema di coordinate locali del clip filmato. Pertanto, se un clip filmato viene ruotato di 90 gradi in
senso antiorario, l'elemento secondario del clip filmato eredita un sistema di coordinate che è ruotato di 90 gradi in
senso antiorario. Le coordinate del clip filmato sono relative al punto di registrazione.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 467
Classi ActionScript
Disponibilità
Flash Lite 2.0
Vedete anche
_xscale (proprietà MovieClip._xscale), _y (proprietà MovieClip._y), _yscale (proprietà
MovieClip._yscale)
_xmouse (proprietà MovieClip._xmouse)
public _xmouse : Number [read-only]
Restituisce la coordinata x della posizione del mouse.
Nota: questa proprietà è supportata in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente restituisce le coordinate correnti x e y del mouse sullo stage _level0) e in relazione a un clip
filmato denominato my_mc sullo stage:
this.createTextField("mouse_txt", this.getNextHighestDepth(), 0, 0, 150, 66);
mouse_txt.html = true;
mouse_txt.multiline = true;
var row1_str:String = "&nbsp;\t<b>_xmouse\t</b><b>_ymouse</b>";
my_mc.onMouseMove = function() {
mouse_txt.htmlText = "<textformat tabStops='[50,100]'>";
mouse_txt.htmlText += row1_str;
mouse_txt.htmlText += "<b>_level0</b>\t"+_xmouse+"\t"+_ymouse;
mouse_txt.htmlText += "<b>my_mc</b>\t"+this._xmouse+"\t"+this._ymouse;
mouse_txt.htmlText += "</textformat>";
};
Vedete anche
hasMouse (proprietà capabilities.hasMouse), _ymouse (proprietà MovieClip._ymouse)
_xscale (proprietà MovieClip._xscale)
public _xscale : Number
Imposta la scala orizzontale (in percentuale) del clip filmato applicata dal punto di registrazione del clip filmato. Il
punto di registrazione predefinito è (0,0).
Se si modifica in scala il sistema di coordinate locale, vengono cambiate anche le impostazioni delle proprietà _x e _y,
che sono definite in pixel. Ad esempio, quando il clip filmato principale viene modificato in scala del 50%, se si imposta
la proprietà _y un oggetto nel clip filmato viene spostato per la metà dei pixel per cui verrebbe spostato se il filmato
fosse al 100% delle proprie dimensioni.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 468
Classi ActionScript
Esempio
Nell'esempio seguente viene creato un clip filmato in fase di runtime denominato box_mc. L'API di disegno viene
utilizzata per disegnare un riquadro in questa istanza e, quando il mouse passa sopra il riquadro, al clip filmato viene
applicata la modifica in scala orizzontale e verticale. Quando il mouse viene allontanato dall'istanza, viene ripristinata
la modifica in scala precedente.
this.createEmptyMovieClip("box_mc", 1);
box_mc._x = 100;
box_mc._y = 100;
with (box_mc) {
lineStyle(1, 0xCCCCCC);
beginFill(0xEEEEEE);
moveTo(0, 0);
lineTo(80, 0);
lineTo(80, 60);
lineTo(0, 60);
lineTo(0, 0);
endFill();
};
box_mc.onRollOver = function() {
this._x -= this._width/2;
this._y -= this._height/2;
this._xscale = 200;
this._yscale = 200;
};
box_mc.onRollOut = function() {
this._xscale = 100;
this._yscale = 100;
this._x += this._width/2;
this._y += this._height/2;
};
Vedete anche
_x (MovieClip._x, proprietà), _y (proprietà MovieClip._y), _yscale (proprietà
MovieClip._yscale), _width (proprietà MovieClip._width)
_y (proprietà MovieClip._y)
public _y : Number
Imposta la coordinata y di un clip filmato relativa alle coordinate locali del clip filmato principale. Se un clip filmato si
trova sulla linea temporale principale, le sue coordinate considerano l'angolo superiore sinistro dello stage come (0,0).
Se è all'interno di un altro clip filmato che contiene delle trasformazioni, il clip filmato utilizza il sistema di coordinate
locali del clip filmato che lo racchiude. Pertanto, se un clip filmato viene ruotato di 90 gradi in senso antiorario,
l'elemento secondario del clip filmato eredita un sistema di coordinate che è ruotato di 90 gradi in senso antiorario. Le
coordinate del clip filmato sono relative al punto di registrazione.
Disponibilità
Flash Lite 2.0
Vedete anche
_x (MovieClip._x, proprietà), _xscale (proprietà MovieClip._xscale), _yscale (proprietà
MovieClip._yscale)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 469
Classi ActionScript
_ymouse (proprietà MovieClip._ymouse)
public _ymouse : Number [read-only]
Indica la coordinata y della posizione del mouse.
Nota: questa proprietà è supportata in Flash Lite solo se System.capabilities.hasMouse è true o
System.capabilities.hasStylus è true.
Disponibilità
Flash Lite 2.0
Esempio
L'esempio seguente restituisce le coordinate correnti x e y del mouse sullo stage _level0) e in relazione a un clip
filmato denominato my_mc sullo stage.
this.createTextField("mouse_txt", this.getNextHighestDepth(), 0, 0, 150, 66);
mouse_txt.html = true;
mouse_txt.multiline = true;
var row1_str:String = "&nbsp;\t<b>_xmouse\t</b><b>_ymouse</b>";
my_mc.onMouseMove = function() {
mouse_txt.htmlText = "<textformat tabStops='[50,100]'>";
mouse_txt.htmlText += row1_str;
mouse_txt.htmlText += "<b>_level0</b>\t"+_xmouse+"\t"+_ymouse;
mouse_txt.htmlText += "<b>my_mc</b>\t"+this._xmouse+"\t"+this._ymouse;
mouse_txt.htmlText += "</textformat>";
};
Vedete anche
hasMouse (proprietà capabilities.hasMouse), _xmouse (proprietà MovieClip._xmouse)
_yscale (proprietà MovieClip._yscale)
public _yscale : Number
Imposta la scala verticale (in percentuale) del clip filmato applicata dal punto di registrazione del clip filmato. Il
punto di registrazione predefinito è (0,0).
Se si modifica in scala il sistema di coordinate locale, vengono cambiate anche le impostazioni delle proprietà _x e _y,
che sono definite in pixel. Ad esempio, quando il clip filmato principale viene modificato in scala del 50%, se si imposta
la proprietà _x un oggetto nel clip filmato viene spostato per la metà dei pixel per cui verrebbe spostato se il filmato
fosse al 100% delle proprie dimensioni.
Disponibilità
Flash Lite 2.0
Esempio
Nell'esempio seguente viene creato un clip filmato in fase di runtime denominato box_mc. L'API di disegno viene
utilizzata per disegnare un riquadro in questa istanza e, quando il mouse passa sopra il riquadro, al clip filmato viene
applicata la modifica in scala orizzontale e verticale. Quando il mouse viene allontanato dall'istanza, viene ripristinata
la modifica in scala precedente.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 470
Classi ActionScript
this.createEmptyMovieClip("box_mc", 1);
box_mc._x = 100;
box_mc._y = 100;
with (box_mc) {
lineStyle(1, 0xCCCCCC);
beginFill(0xEEEEEE);
moveTo(0, 0);
lineTo(80, 0);
lineTo(80, 60);
lineTo(0, 60);
lineTo(0, 0);
endFill();
};
box_mc.onRollOver = function() {
this._x -= this._width/2;
this._y -= this._height/2;
this._xscale = 200;
this._yscale = 200;
};
box_mc.onRollOut = function() {
this._xscale = 100;
this._yscale = 100;
this._x += this._width/2;
this._y += this._height/2;
};
Vedete anche
_x (MovieClip._x, proprietà), _xscale (proprietà MovieClip._xscale), _y (proprietà
MovieClip._y), _height (proprietà MovieClip._height)
MovieClipLoader
Object
|
+-MovieClipLoader
public class MovieClipLoader
extends Object
La classe MovieClipLoader consente di implementare le funzioni di callback del listener che forniscono le
informazioni sullo stato mentre i file SWF, JPEG, GIF e PNG vengono caricati (scaricati) nei clip filmato. Per utilizzare
le funzioni di MovieClipLoader, utilizzare MovieClipLoader.loadClip() anziché loadMovie() o
MovieClip.loadMovie() per caricare i file SWF.
Dopo aver eseguito il metodo MovieClipLoader.loadClip(), si verificano gli eventi seguenti nell'ordine elencato:
• Quando i primi byte del file scaricato sono stati scritti su disco, viene richiamato il listener
MovieClipLoader.onLoadStar.
• Se è stato implementato, il listener MovieClipLoader.onLoadProgress viene richiamato durante il processo di
caricamento.
• Nota: è possibile chiamare MovieClipLoader.getProgress() in qualunque momento del processo di
caricamento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 471
Classi ActionScript
• Quando l'intero file scaricato è stato scritto su disco, viene richiamato il listener
MovieClipLoader.onLoadComplete.
• Dopo che sono state eseguite le azioni del primo fotogramma del file scaricato, viene richiamato il listener
MovieClipLoader.onLoadInit.
Dopo che è stato richiamato MovieClipLoader.onLoadInit, è possibile impostare le proprietà, utilizzare i metodi e
interagire in altro modo con il filmato caricato.
Se il file non viene caricato completamente, viene richiamato il listener MovieClipLoader.onLoadError.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo degli eventi
Evento
Descrizione
onLoadComplete =
Richiamato dopo che è stato scaricato completamente un file caricato con
function(listenerOb MovieClipLoader.loadClip().
ject, [target_mc])
{}
onLoadError =
Richiamato quando non è possibile completare il caricamento di un file mediante
function(target_mc, MovieClipLoader.loadClip().
errorCode) {}
onLoadInit =
Richiamato quando sono state eseguite le azioni del primo fotogramma del clip
function([target_mc caricato.
]) {}
onLoadProgress =
Richiamato ogni volta che il contenuto caricato viene scritto sul disco nel corso del
function([target_mc processo di caricamento (vale a dire tra MovieClipLoader.onLoadStart e
], loadedBytes,
MovieClipLoader.onLoadComplete).
totalBytes) {}
onLoadStart =
Richiamato quando inizia lo scaricamento di un file a seguito di una chiamata a
function([target_mc MovieClipLoader.loadClip().
]) {}
Riepilogo delle funzioni di costruzione
Firma
Descrizione
MovieClipLoader()
Crea un oggetto MovieClipLoader che è possibile utilizzare per implementare una serie
di listener che reagiscano agli eventi mentre si sta scaricando il file SWF, JPEG, GIF o
PNG.
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 472
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Riepilogo dei metodi
Modificatori
Firma
Descrizione
addListener(listener:
Object) : Boolean
Registra un oggetto per ricevere una notifica quando viene
richiamato un gestore di eventi MovieClipLoader.
getProgress(target:Obj Restituisce il numero di byte caricati e il numero totale di byte
di un file che viene caricato mediante
ect) : Object
MovieClipLoader.loadClip(); per i filmati compressi, il
metodo getProgress rispecchia il numero di byte compressi.
loadClip(url:String,
target:Object) :
Boolean
Carica un file SWF o JPEG in un clip filmato nel player Flash Lite
mentre è in riproduzione il filmato originale.
removeListener(listene Rimuove il listener precedentemente utilizzato per ricevere
r:Object) : Boolean
una notifica quando è stato richiamato un gestore di eventi
MovieClipLoader.
unloadClip(target:Obje Rimuove un clip filmato che è stato caricato mediante
MovieClipLoader.loadClip().
ct) : Boolean
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString), unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
addListener (metodo MovieClipLoader.addListener)
public addListener(listener:Object) : Boolean
Registra un oggetto per ricevere una notifica quando viene richiamato un gestore di eventi MovieClipLoader.
Disponibilità
Flash Lite 2.0
Parametri
listener:Object - Un oggetto listener per una notifica callback dai gestori di eventi MovieClipLoader.
Restituisce
Boolean - Un valore booleano. Il valore restituito è true se il listener è stato stabilito correttamente; in caso contrario
è false.
Esempio
Nell'esempio seguente viene caricata un'immagine in un clip filmato, denominata image_mc. L'istanza di clip filmato
viene ruotata e centrata sullo stage; lungo i perimetri dello stage e del clip filmato viene disegnato un tratto.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 473
Classi ActionScript
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._x = Stage.width/2-target_mc._width/2;
target_mc._y = Stage.height/2-target_mc._width/2;
var w:Number = target_mc._width;
var h:Number = target_mc._height;
target_mc.lineStyle(4, 0x000000);
target_mc.moveTo(0, 0);
target_mc.lineTo(w, 0);
target_mc.lineTo(w, h);
target_mc.lineTo(0, h);
target_mc.lineTo(0, 0);
target_mc._rotation = 3;
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
Vedete anche
onLoadComplete (listener di eventi MovieClipLoader.onLoadComplete), onLoadError (listener di
eventi MovieClipLoader.onLoadError), onLoadInit (listener di eventi
MovieClipLoader.onLoadInit), onLoadProgress (listener di eventi
MovieClipLoader.onLoadProgress), onLoadStart (listener di eventi MovieClipLoader.onLoadStart),
removeListener (metodo MovieClipLoader.removeListener)
getProgress (metodo MovieClipLoader.getProgress)
public getProgress(target:Object) : Object
Restituisce il numero di byte caricati e il numero totale di byte di un file che si sta caricando mediante
MovieClipLoader.loadClip(); per i filmati compressi, il metodo getProgress rispecchia il numero di byte
compressi. Il metodo getProgress consente di richiedere esplicitamente queste informazioni, anziché (oppure oltre
a) scrivere una funzione del listener MovieClipLoader.onLoadProgress.
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Un file SWF, JPEG, GIF o PNG che viene caricato mediante MovieClipLoader.loadClip().
Restituisce
Object - Un oggetto dotato di due proprietà a valore intero: bytesLoaded e bytesTotal.
Esempio
L'esempio seguente mostra come utilizzare il metodo getProgress. Invece di utilizzare tale metodo, di solito viene
creato un oggetto listener "in ascolto" dell'evento onLoadProgress. Un'altra caratteristica importante di questo
metodo è il fatto che la prima chiamata sincrona a getProgress può restituire i valori di bytesLoaded e bytesTotal del
container e non i valori relativi all'oggetto richiesto esternamente.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 474
Classi ActionScript
var container:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth());
var image:MovieClip = container.createEmptyMovieClip("image", container.getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
listener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number,
bytesTotal:Number):Void {
trace(target + ".onLoadProgress with " + bytesLoaded + " bytes of " + bytesTotal);
}
mcLoader.addListener(listener);
mcLoader.loadClip("http://www.w3.org/Icons/w3c_main.png", image);
var interval:Object = new Object();
interval.id = setInterval(checkProgress, 100, mcLoader, image, interval);
function checkProgress(mcLoader:MovieClipLoader, image:MovieClip, interval:Object):Void {
trace(">> checking progress now with : " + interval.id);
var progress:Object = mcLoader.getProgress(image);
trace("bytesLoaded: " + progress.bytesLoaded + " bytesTotal: " + progress.bytesTotal);
if(progress.bytesLoaded == progress.bytesTotal) {
clearInterval(interval.id);
}
}
Vedete anche
loadClip (metodo MovieClipLoader.loadClip), onLoadProgress (listener di eventi
MovieClipLoader.onLoadProgress)
loadClip (metodo MovieClipLoader.loadClip)
public loadClip(url:String, target:Object) : Boolean
Carica un file SWF o JPEG in un clip filmato nel player Flash Lite mentre è in riproduzione il filmato originale.
Consente di visualizzare più file SWF contemporaneamente e di passare da uno all'altro senza caricare un altro
documento HTML.
L'utilizzo del metodo loadClip() in luogo di loadMovie() o MovieClip.loadMovie() comporta una serie di
vantaggi. I gestori elencati di seguito vengono implementati mediante un oggetto listener. Per attivare il listener
mediante MovieClipLoader.addListener(listenerObject), registrarlo con la classe MovieClipLoader.
• Il gestore MovieClipLoader.onLoadStart viene richiamato quando inizia il caricamento.
• Il gestore MovieClipLoader.onLoadError viene richiamato se non è possibile caricare il clip.
• Il gestore MovieClipLoader.onLoadProgress viene richiamato mentre è in corso il processo di caricamento.
• Il gestore MovieClipLoader.onLoadComplete viene richiamato quando viene completato lo scaricamento di un
file, ma prima che siano disponibili i metodi e le proprietà del clip filmato caricato. Questo gestore viene chiamato
prima del gestore onLoadInit.
• Il gestore MovieClipLoader.onLoadInit viene richiamato dopo che sono state eseguite le azioni del primo
fotogramma del clip, per consentire di manipolare il clip caricato. Questo gestore viene chiamato dopo il gestore
onLoadComplete. Nella maggior parte delle situazioni, utilizzare il gestore onLoadInit.
Un file SWF o un'immagine caricata in un clip filmato eredita le proprietà di posizione, rotazione e scala del clip
filmato. È possibile utilizzare il percorso target del clip filmato per indicare come destinazione il filmato caricato.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 475
Classi ActionScript
È possibile utilizzare il metodo loadClip() per caricare uno o più file in un unico clip filmato o livello; agli oggetti del
listener MovieClipLoader viene passata, come parametro, l'istanza del clip filmato target in fase di caricamento. In
alternativa, è possibile creare un oggetto MovieClipLoader diverso per ciascun file caricato.
Utilizzare MovieClipLoader.unloadClip() per rimuovere i filmati o le immagini caricate con questo metodo o per
annullare un'operazione di caricamento in corso.
MovieClipLoader.getProgress() e MovieClipLoaderListener.onLoadProgress non indicano i valori
bytesLoaded and bytesTotal effettivi nel lettore dell'ambiente di creazione. Quando si utilizza la funzione Profilo
ampiezza banda nell'ambiente di creazione, MovieClipLoader.getProgress() e
MovieClipLoaderListener.onLoadProgress riportano lo scaricamento alla velocità effettiva, non alla velocità
ridotta dell'ampiezza di banda fornita da Profilo ampiezza banda.
Disponibilità
Flash Lite 2.0
Parametri
url:String - L'URL assoluto o relativo del file SWF o JPEG da caricare. Un percorso relativo deve essere tale rispetto al
file SWF che si trova sul livello 0. Gli URL assoluti devono includere il riferimento al protocollo, ad esempio http:// o
file:///. I nomi file non devono contenere specifiche relative all'unità disco.
target:Object - Il percorso di destinazione di un clip filmato o un numero intero che specifica il livello di Flash Player
in cui viene caricato il clip filmato. Il clip filmato target viene sostituito dal file SWF o dall'immagine caricati.
Restituisce
Boolean - Un valore booleano. Il valore restituito è true se la richiesta URL è stata inviata correttamente; in caso
contrario è false.
Esempio
Nell'esempio seguente viene illustrato come utilizzare il metodo MovieClipLoader.loadClip mediante la creazione
di un gestore per l'evento onLoadInit e il successivo invio della richiesta.
Aggiungere il codice seguente direttamente a un'azione fotogramma sulla linea temporale oppure incollarlo in una
classe che estende MovieClip.
Creare un metodo del gestore per l'evento onLoadInit.
public function onLoadInit(mc:MovieClip):Void {
trace("onLoadInit: " + mc);
}
Creare un MovieClip vuoto e caricare al suo interno un'immagine mediante MovieClipLoader.
var container:MovieClip = createEmptyMovieClip("container", getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
mcLoader.loadClip("YourImage.jpg", container);
function onLoadInit(mc:MovieClip) {
trace("onLoadInit: " + mc);
}
Vedete anche
onLoadInit (listener di eventi MovieClipLoader.onLoadInit)
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 476
Classi ActionScript
MovieClipLoader (funzione di costruzione)
public MovieClipLoader()
Crea un oggetto MovieClipLoader che è possibile utilizzare per implementare una serie di listener che reagiscano agli
eventi mentre si sta scaricando il file SWF, JPEG, GIF o PNG.
Disponibilità
Flash Lite 2.0
Esempio
Vedere MovieClipLoader.loadClip().
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip)
onLoadComplete (listener di eventi MovieClipLoader.onLoadComplete)
onLoadComplete = function(listenerObject, [target_mc]) {}
Richiamato dopo che è stato scaricato completamente un file caricato con MovieClipLoader.loadClip(). Il valore
di target_mc identifica il clip filmato per il quale viene eseguita la chiamata. È utile quando vengono caricati più file
con lo stesso set di listener.
Questo parametro viene passato da Flash al codice, ma non è necessario implementare tutti i parametri della funzione
del listener.
Quando si utilizzano gli eventi onLoadComplete e onLoadInit mediante la classe MovieClipLoader, è importante
comprendere la differenza tra questo uso specifico e il caso in cui gli eventi agiscono insieme al file SWF. L'evento
onLoadComplete viene chiamato dopo che il file SWF, JPEG, GIF o PNG è stato caricato, ma prima che l'applicazione
venga inizializzata. A questo punto è impossibile accedere ai metodi e alle proprietà del clip filmato caricato e per tale
motivo non è possibile chiamare una funzione, passare a un fotogramma specifico, e così via. Nella maggior parte dei
casi, è preferibile utilizzare l'evento onLoadInit, che viene chiamato dopo che il contenuto è stato caricato e
inizializzato completamente.
Disponibilità
Flash Lite 2.0
Parametri
listenerObject:
- Un oggetto listener aggiunto utilizzando MovieClipLoader.addListener().
target_mc: [opzionale] - Un clip filmato caricato da un metodo MovieClipLoader.loadClip(). Questo parametro
è opzionale.
Esempio
Nell'esempio seguente viene caricata un'immagine in un'istanza di clip filmato, denominata image_mc. Gli eventi
onLoadInit e onLoadComplete vengono utilizzati per determinare il tempo necessario per caricare l'immagine. Le
informazioni vengono visualizzate in un campo di testo creato dinamicamente, denominato timer_txt.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 477
Classi ActionScript
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
target_mc.startTimer = getTimer();
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
target_mc.completeTimer = getTimer();
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
var timerMS:Number = target_mc.completeTimer-target_mc.startTimer;
target_mc.createTextField("timer_txt", target_mc.getNextHighestDepth(), 0,
target_mc._height, target_mc._width, 22);
target_mc.timer_txt.text = "loaded in "+timerMS+" ms.";
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.macromedia.com/images/shared/product_boxes/112x112/box_studio
_112x112.jpg", image_mc);
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip),
onLoadStart (listener di eventi MovieClipLoader.onLoadStart), onLoadError (listener di eventi
MovieClipLoader.onLoadError), onLoadInit (listener di eventi MovieClipLoader.onLoadInit)
onLoadError (listener di eventi MovieClipLoader.onLoadError)
onLoadError = function(target_mc, errorCode) {}
Richiamato quando non è possibile completare il caricamento di un file mediante MovieClipLoader.loadClip(). È
possibile richiamare il listener per varie ragioni: ad esempio, se il server è guasto, se è impossibile trovare il file o
quando si verifica una violazione della sicurezza.
Chiamare questo listener su un oggetto listener aggiunto mediante MovieClipLoader.addListener().
Il valore di target_mc identifica il clip filmato per il quale viene eseguita la chiamata. Il parametro è utile quando
devono essere caricati più file con lo stesso set di listener.
Per il parametro errorCode, viene restituita la stringa "URLNotFound" se non è stato chiamato né il listener
MovieClipLoader.onLoadStart né MovieClipLoader.onLoadComplete; ad esempio, se un server è guasto o è
impossibile trovare il file. La stringa "LoadNeverCompleted" viene restituita se è stato chiamato
MovieClipLoader.onLoadStart ma non MovieClipLoader.onLoadComplete; ad esempio, nel caso in cui lo
scaricamento sia stato interrotto per un sovraccarico del server, un blocco del server e così via.
Disponibilità
Flash Lite 2.0
Parametri
target_mc: - Un clip filmato caricato da un metodo MovieClipLoader.loadClip().
errorCode: - Una stringa che spiega il motivo dell'errore.
Esempio
Nell'esempio seguente vengono visualizzate informazioni nel pannello Output quando è impossibile caricare
un'immagine.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 478
Classi ActionScript
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadError = function(target_mc:MovieClip, errorCode:String) {
trace("ERROR!");
switch (errorCode) {
case 'URLNotFound' :
trace("\t Unable to connect to URL: "+target_mc._url);
break;
case 'LoadNeverCompleted' :
trace("\t Unable to complete download: "+target_mc);
break;
}
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
trace("success");
trace(image_mcl.getProgress(target_mc).bytesTotal+" bytes loaded");
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.fakedomain.com/images/bad_hair_day.jpg", image_mc);
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip),
onLoadStart (listener di eventi MovieClipLoader.onLoadStart), onLoadComplete (listener di
eventi MovieClipLoader.onLoadComplete)
onLoadInit (listener di eventi MovieClipLoader.onLoadInit)
onLoadInit = function([target_mc]) {}
Richiamato quando sono state eseguite le azioni del primo fotogramma del clip caricato. Dopo che è stato richiamato
il listener, è possibile impostare le proprietà, utilizzare i metodi e interagire in altro modo con il filmato caricato.
Chiamare questo listener su un oggetto listener aggiunto mediante MovieClipLoader.addListener().
Il valore di target_mc identifica il clip filmato per il quale viene eseguita la chiamata. Il parametro è utile quando
devono essere caricati più file con lo stesso set di listener.
Disponibilità
Flash Lite 2.0
Parametri
target_mc: [opzionale] - Un clip filmato caricato da un metodo MovieClipLoader.loadClip().
Esempio
Nell'esempio seguente viene caricata un'immagine in un'istanza di clip filmato, denominata image_mc. Gli eventi
onLoadInit e onLoadComplete vengono utilizzati per determinare il tempo necessario per caricare l'immagine. Le
informazioni vengono visualizzate in un campo di testo denominato timer_txt.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 479
Classi ActionScript
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
target_mc.startTimer = getTimer();
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
target_mc.completeTimer = getTimer();
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
var timerMS:Number = target_mc.completeTimer-target_mc.startTimer;
target_mc.createTextField("timer_txt", target_mc.getNextHighestDepth(), 0,
target_mc._height,
target_mc._width, 22);
target_mc.timer_txt.text = "loaded in "+timerMS+" ms.";
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
Nell'esempio seguente viene controllato se un filmato è stato caricato in un clip filmato creato in fase di runtime:
this.createEmptyMovieClip("tester_mc", 1);
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
trace("movie loaded");
}
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.yourserver.com/your_movie.swf", tester_mc);
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip),
onLoadStart (listener di eventi MovieClipLoader.onLoadStart)
onLoadProgress (listener di eventi MovieClipLoader.onLoadProgress)
onLoadProgress = function([target_mc], loadedBytes, totalBytes) {}
Richiamato ogni volta che il contenuto caricato viene scritto sul disco nel corso del processo di caricamento (vale a dire
tra MovieClipLoader.onLoadStart e MovieClipLoader.onLoadComplete). Chiamare questo listener su un
oggetto listener aggiunto mediante MovieClipLoader.addListener(). È possibile utilizzare questo metodo per
visualizzare le informazioni relative all'avanzamento dello scaricamento, utilizzando i parametri loadedBytes e
totalBytes.
Il valore di target_mc identifica il clip filmato per il quale viene eseguita la chiamata. È utile quando devono essere
caricati più file con lo stesso set di listener.
Nota: se si tenta di utilizzare onLoadProgress nella modalità di prova del filmato con un file locale che risiede sul
disco rigido, l'evento non funziona correttamente poiché in modalità di prova il player Flash Lite carica i file locali
integralmente.
Parametri
target_mc: MovieClip [opzionale] Un clip filmato caricato da un metodo MovieClipLoader.loadClip().
loadedBytes: Number Il numero di byte caricati quando è stato richiamato il listener.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 480
Classi ActionScript
totalBytes: Number Il numero totale di byte del file in fase di caricamento.
Disponibilità
Flash Lite 2.0
Parametri
target_mc: [opzionale] - Un clip filmato caricato da un metodo MovieClipLoader.loadClip().
loadedBytes: - Il numero di byte caricati quando è stato richiamato il listener.
totalBytes: - Il numero totale di byte del file in fase di caricamento.
Esempio
Nell'esempio seguente viene creato un clip filmato, un nuovo MovieClipLoader e un listener di eventi anonimo.
Dovrebbe fornire come output periodico l'avanzamento di un carico e come output finale la notifica dell'avvenuto
completamento e della disponibilità della risorsa in ActionScript.
var container:MovieClip = this.createEmptyMovieClip("container", this.getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
listener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number,
bytesTotal:Number):Void {
trace(target + ".onLoadProgress with " + bytesLoaded + " bytes of " + bytesTotal);
}
listener.onLoadInit = function(target:MovieClip):Void {
trace(target + ".onLoadInit");
}
mcLoader.addListener(listener);
mcLoader.loadClip("http://www.w3.org/Icons/w3c_main.png", container);
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip),
getProgress (metodo MovieClipLoader.getProgress)
onLoadStart (listener di eventi MovieClipLoader.onLoadStart)
onLoadStart = function([target_mc]) {}
Richiamato quando inizia lo scaricamento di un file a seguito di una chiamata a MovieClipLoader.loadClip().
Chiamare questo listener su un oggetto listener aggiunto mediante MovieClipLoader.addListener().
Il valore di target_mc identifica il clip filmato per il quale viene eseguita la chiamata. Il parametro è utile quando
devono essere caricati più file con lo stesso set di listener.
Disponibilità
Flash Lite 2.0
Parametri
target_mc: [opzionale] - Un clip filmato caricato da un metodo MovieClipLoader.loadClip().
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 481
Classi ActionScript
Esempio
Nell'esempio seguente viene caricata un'immagine in un'istanza di clip filmato, denominata image_mc. Gli eventi
onLoadInit e onLoadComplete vengono utilizzati per determinare il tempo necessario per caricare l'immagine. Le
informazioni vengono visualizzate in un campo di testo denominato timer_txt.
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
target_mc.startTimer = getTimer();
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
target_mc.completeTimer = getTimer();
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
var timerMS:Number = target_mc.completeTimer-target_mc.startTimer;
target_mc.createTextField("timer_txt", target_mc.getNextHighestDepth(), 0,
target_mc._height,
target_mc._width, 22);
target_mc.timer_txt.text = "loaded in "+timerMS+" ms.";
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
Vedete anche
addListener (metodo MovieClipLoader.addListener), loadClip (metodo MovieClipLoader.loadClip),
onLoadError (listener di eventi MovieClipLoader.onLoadError), onLoadInit (listener di eventi
MovieClipLoader.onLoadInit)onLoadComplete (listener di eventi MovieClipLoader.onLoadComplete)
removeListener (metodo MovieClipLoader.removeListener)
public removeListener(listener:Object) : Boolean
Rimuove il listener precedentemente utilizzato per ricevere una notifica quando è stato richiamato un gestore di eventi
MovieClipLoader. Non viene ricevuto alcun ulteriore messaggio di caricamento.
Disponibilità
Flash Lite 2.0
Parametri
listener:Object - Un oggetto listener aggiunto mediante MovieClipLoader.addListener().
Restituisce
Boolean Esempio
Nell'esempio seguente viene caricata un'immagine in un clip filmato e viene consentito all'utente di avviare e
interrompere il processo di caricamento mediante due pulsanti denominati start_button e stop_button. Le
informazioni relative all'avvio o all'interruzione dell'avanzamento vengono visualizzate nel pannello Output.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 482
Classi ActionScript
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadStart = function(target_mc:MovieClip) {
trace("\t onLoadStart");
};
mclListener.onLoadComplete = function(target_mc:MovieClip) {
trace("\t onLoadComplete");
};
mclListener.onLoadError = function(target_mc:MovieClip, errorCode:String) {
trace("\t onLoadError: "+errorCode);
};
mclListener.onLoadInit = function(target_mc:MovieClip) {
trace("\t onLoadInit");
start_button.enabled = true;
stop_button.enabled = false;
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
//
start_button.clickHandler = function() {
trace("Starting...");
start_button.enabled = false;
stop_button.enabled = true;
//
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
};
stop_button.clickHandler = function() {
trace("Stopping...");
start_button.enabled = true;
stop_button.enabled = false;
//
image_mcl.removeListener(mclListener);
};
stop_button.enabled = false;
Vedete anche
addListener (metodo MovieClipLoader.addListener)
unloadClip (metodo MovieClipLoader.unloadClip)
public unloadClip(target:Object) : Boolean
Rimuove un clip filmato che è stato caricato mediante MovieClipLoader.loadClip(). Se si chiama questo metodo
mentre un filmato è in fase di caricamento, viene richiamato MovieClipLoader.onLoadError.
Disponibilità
Flash Lite 2.0
Parametri
target:Object - Un valore intero o stringa passato alla corrispondente chiamata a my_mcl.loadClip().
Restituisce
Boolean -
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 483
Classi ActionScript
Esempio
Nell'esempio seguente viene caricata un'immagine in un clip filmato, denominata image_mc. Se si fa clic sul clip
filmato, questo viene rimosso e le relative informazioni vengono visualizzate nel pannello Output.
this.createEmptyMovieClip("image_mc", this.getNextHighestDepth());
var mclListener:Object = new Object();
mclListener.onLoadInit = function(target_mc:MovieClip) {
target_mc._x = 100;
target_mc._y = 100;
target_mc.onRelease = function() {
trace("Unloading clip...");
trace("\t name: "+target_mc._name);
trace("\t url: "+target_mc._url);
image_mcl.unloadClip(target_mc);
};
};
var image_mcl:MovieClipLoader = new MovieClipLoader();
image_mcl.addListener(mclListener);
image_mcl.loadClip("http://www.helpexamples.com/flash/images/image1.jpg", image_mc);
Vedete anche
loadClip (metodo MovieClipLoader.loadClip), onLoadError (listener di eventi
MovieClipLoader.onLoadError)
NetConnection
Crea un oggetto NetConnection che è possibile utilizzare con un oggetto NetStream per richiamare i comandi su un
server applicazioni remoto o per riprodurre localmente o da un server i file video in streaming (FLV).
Metodo
Descrizione
connect();
connect(command:String, ... arguments):void
Apre una connessione con un server.
close();
close():void
Chiude la connessione aperta localmente o con il server e invia l'evento netStatus con
una proprietà di codice NetConnection.Connect.Closed.
Disponibilità
Flash Lite 3.0
connect (NetConnection.connect), metodo
Apre una connessione con un server. Mediante questa connessione è possibile riprodurre file audio o video (FLV) dal
sistema locale oppure richiamare comandi su un server remoto.
Quando si utilizza questo metodo, considerare il modello di sicurezza del player Flash Lite nonché le seguenti
considerazioni:
• Per impostazione predefinita, il sito Web nega l'accesso tra due sandbox. Il sito Web può consentire l'accesso a una
risorsa utilizzando un file di criteri dei domini.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 484
Classi ActionScript
• Un sito Web può negare l'acceso a una risorsa aggiungendo la logica dell'applicazione ActionScript lato server a
Flash Media Server.
• Non è possibile utilizzare il metodo NetConnection.connect() se il file SWF che effettua la chiamata si trova
nella sandbox locale con il file system.
• Per impedire al file SWF l'utilizzo di questo metodo, impostare il parametro allowNetworking dell'oggetto e i tag
inclusi nella pagina HTML con il contenuto SWF.
Disponibilità
Flash Lite 3.0
close (NetConnection.close), metodo
public function close():void
Chiude la connessione aperta localmente o con il server e invia l'evento netStatus con una proprietà di codice
NetConnection.Connect.Closed.
Questo metodo disconnette tutti gli oggetti NetStream in esecuzione su questa connessione; qualsiasi dato inserito in
una coda non inviato viene ignorato (per terminare gli streaming senza chiudere la connessione, utilizzare
NetStream.close()). Se si chiama questo metodo e quindi si desidera riconnettersi, sarà necessario creare l'oggetto
NetStream.
Disponibilità
Flash Lite 3.0
Vedete anche
NetStream
Funzione di costruzione NetConnection
public “NetConnection” a pagina 483()
Crea un oggetto NetConnection che è possibile utilizzare in combinazione con un oggetto NetStream per riprodurre
dei file video in streaming (FLV) locali. Dopo aver creato l'oggetto NetConnection, utilizzare il metodo
Connect(NetConnection.connect) per effettuare la connessione effettiva.
La riproduzione di file FLV esterni offre diversi vantaggi rispetto all'incorporamento di video in un documento Flash,
ad esempio migliori prestazioni e gestione della memoria, oltre a frequenze di fotogrammi video e Flash indipendenti.
La classe NetConnection fornisce il mezzo per riprodurre i file FLV in streaming da un'unità locale o da un indirizzo
HTTP.
Disponibilità
Flash Lite 3.0
Esempio
Vedere l'esempio per il metodo connect (NetConnection.connect).
Vedete anche
“connect (NetConnection.connect), metodo” a pagina 483, “attachVideo (metodo Video.attachVideo)” a
pagina 675,“NetStream” a pagina 485
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 485
Classi ActionScript
NetStream
Crea uno streaming da utilizzare per la riproduzione dei file FLV mediante l'oggetto NetConnection specificato.
Possono essere supportati anche gli URL dei file locali con la semplice sostituzione di “http:” con “file:”. Ad esempio
NetStream.play("http://somefile.flv");
NetStream.play("file://somefile.flv");
Nota: vengono applicate le restrizioni di sicurezza standard. Ad esempio, un file SWF remoto non può accedere agli URL
assoluti file:// utilizzando la forma "file://C:/somefile.flv".
Disponibilità
Flash Lite 3.0
NetStream Class, metodi
Metodo
Descrizione
close()
close():void
Interrompe la riproduzione di tutti i dati dello streaming, imposta la proprietà time su
0 e rende lo streaming disponibile per altri usi.
pause()
pause():void
Sospende la riproduzione dello streaming video.
play()
play(... arguments):void
Inizia la riproduzione del file audio o video (FLV) esterno.
seek()
Cerca il fotogramma chiave più vicino al numero di secondi specificato, a partire
dall'inizio dello streaming.
setBufferTime()
Specifica per quanto tempo eseguire il buffering dei messaggi prima di avviarne la
visualizzazione.
NetStream Class, proprietà
Proprietà
Descrizione
bufferLength
Il numero di secondi dei dati attualmente presenti nel buffer.
bufferTime
Il numero di secondi assegnati al buffer da setBufferTime().
bytesLoaded
Il numero di byte di dati caricati nel lettore.
bytesTotal
La dimensione totale in byte del file caricato nel lettore.
currentFPS
Il numero di fotogrammi visualizzati al secondo.
time
La posizione dell'indicatore di riproduzione, in secondi.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 486
Classi ActionScript
NetStream Class, eventi
Evento
Descrizione
onStatus
Richiamato quando viene inviato un cambiamento di stato o un errore per l'oggetto
NetStream.
onCuePoint
Richiamato quando si raggiunge un cue point incorporato durante la riproduzione di
un file FLV.
OnMetaData
Richiamato dal player Flash Lite quando si ricevono informazioni descrittive
incorporate nel file FLV.
bufferLength (proprietà NetStream.bufferLength)
public bufferLength : Number [read-only]
Il numero di secondi dei dati attualmente presenti nel buffer. Utilizzare questa proprietà insieme a
NetStream.bufferTime per valutare quanto manca al buffer per riempirsi, ad esempio per visualizzare una risposta
a un utente che attende il caricamento di dati nel buffer.
Disponibilità
Flash Lite 3.0
Nota: questa proprietà è supportata anche in Flash Player 6, se utilizzata con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Esempio
L'esempio seguente crea dinamicamente un campo di testo in cui sono visualizzate informazioni sul numero di secondi
attualmente presenti nel buffer. Nel campo di testo è mostrata anche la lunghezza del buffer su cui è impostato il video
e la percentuale di buffer occupata.
this.createTextField("buffer_txt", this.getNextHighestDepth(), 10, 10, 300, 22);
buffer_txt.html = true;
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
stream_ns.setBufferTime(3);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
var buffer_interval:Number = setInterval(checkBufferTime, 100, stream_ns);
function checkBufferTime(my_ns:NetStream):Void {
var bufferPct:Number = Math.min(Math.round(my_ns.bufferLength/my_ns.bufferTime*100), 100);
var output_str:String = "<textformat tabStops='[100,200]'>";
output_str += "Length: "+my_ns.bufferLength+"\t"+"Time:
"+my_ns.bufferTime+"\t"+"Buffer:"+bufferPct+"%";
output_str += "</textformat>";
buffer_txt.htmlText = output_str;
}
bufferTime (proprietà NetStream.bufferTime)
public bufferTime : Number [read-only]
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 487
Classi ActionScript
Il numero di secondi assegnati al buffer da NetStream.setBufferTime(). Il valore predefinito è 0,1 (un decimo di
secondo). Per determinare il numero di secondi attualmente presenti nel buffer, utilizzare
NetStream.setBufferLength.
Disponibilità
Flash Lite 3.0
Nota: questa proprietà è supportata anche in Flash Player 6, se utilizzata con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Esempio
L'esempio seguente crea dinamicamente un campo di testo in cui sono visualizzate informazioni sul numero di secondi
attualmente presenti nel buffer. Nel campo di testo è mostrata anche la lunghezza del buffer su cui è impostato il video
e la percentuale di buffer occupata.
this.createTextField("buffer_txt", this.getNextHighestDepth(), 10, 10, 300, 22);
buffer_txt.html = true;
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
stream_ns.setBufferTime(3);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
var buffer_interval:Number = setInterval(checkBufferTime, 100, stream_ns);
function checkBufferTime(my_ns:NetStream):Void {
var bufferPct:Number = Math.min(Math.round(my_ns.bufferLength
my_ns.bufferTime*100), 100);
var output_str:String = "<textformat tabStops='[100,200]'>";
output_str += "Length: "+my_ns.bufferLength+"\t"+"Time:
"+my_ns.bufferTime+"\t"+"Buffer:"+bufferPct+"%";
output_str += "</textformat>";
buffer_txt.htmlText = output_str;
}
bytesLoaded (proprietà NetStream.bytesLoaded)
public bytesLoaded : Number [read-only]
Il numero di byte di dati caricati nel lettore. Utilizzare questo metodo insieme a NetStream.bytesTotal per valutare
quanto manca al buffer per riempirsi, ad esempio per visualizzare una risposta a un utente che attende il caricamento
di dati nel buffer.
Disponibilità
Flash Lite 3.0
Esempio
L'esempio seguente crea una barra di avanzamento mediante l'API di disegno e le proprietà bytesLoaded e
bytesTotal. La barra visualizza l'avanzamento dell'operazione mentre video1.flv viene caricato nell'istanza
dell'oggetto video denominato called my_video. Viene creato dinamicamente un campo di testo denominato
loaded_txt per visualizzare anche le informazioni sull'avanzamento del caricamento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 488
Classi ActionScript
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
this.createTextField("loaded_txt", this.getNextHighestDepth(), 10, 10, 160, 22);
this.createEmptyMovieClip("progressBar_mc", this.getNextHighestDepth());
progressBar_mc.createEmptyMovieClip("bar_mc", progressBar_mc.getNextHighestDepth());
with (progressBar_mc.bar_mc) {
beginFill(0xFF0000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
progressBar_mc.createEmptyMovieClip("stroke_mc", progressBar_mc.getNextHighestDepth());
with (progressBar_mc.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
var loaded_interval:Number = setInterval(checkBytesLoaded, 500, stream_ns);
function checkBytesLoaded(my_ns:NetStream) {
var pctLoaded:Number = Math.round(my_ns.bytesLoaded/my_ns.bytesTotal*100);
loaded_txt.text = Math.round(my_ns.bytesLoaded/1000)+" of
"+Math.round(my_ns.bytesTotal/1000)+" KB loaded ("+pctLoaded+"%)";
progressBar_mc.bar_mc._xscale = pctLoaded;
if (pctLoaded>=100) {
clearInterval(loaded_interval);
}
}
bytesTotal (proprietà NetStream.bytesTotal)
public bytesTotal : Number [read-only]
La dimensione totale in byte del file caricato nel lettore.
Disponibilità
Flash Lite 3.0
Esempio
L'esempio seguente crea una barra di avanzamento mediante l'API di disegno e le proprietà bytesLoaded e
bytesTotal. La barra visualizza l'avanzamento dell'operazione mentre video1.flv viene caricato nell'istanza
dell'oggetto video denominato called my_video. Viene creato dinamicamente un campo di testo denominato
loaded_txt per visualizzare anche le informazioni sull'avanzamento del caricamento.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 489
Classi ActionScript
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
this.createTextField("loaded_txt", this.getNextHighestDepth(), 10, 10, 160, 22);
this.createEmptyMovieClip("progressBar_mc", this.getNextHighestDepth());
progressBar_mc.createEmptyMovieClip("bar_mc", progressBar_mc.getNextHighestDepth());
with (progressBar_mc.bar_mc) {
beginFill(0xFF0000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
endFill();
_xscale = 0;
}
progressBar_mc.createEmptyMovieClip("stroke_mc", progressBar_mc.getNextHighestDepth());
with (progressBar_mc.stroke_mc) {
lineStyle(0, 0x000000);
moveTo(0, 0);
lineTo(100, 0);
lineTo(100, 10);
lineTo(0, 10);
lineTo(0, 0);
}
var loaded_interval:Number = setInterval(checkBytesLoaded, 500, stream_ns);
function checkBytesLoaded(my_ns:NetStream) {
var pctLoaded:Number = Math.round(my_ns.bytesLoaded/my_ns.bytesTotal*100);
loaded_txt.text = Math.round(my_ns.bytesLoaded/1000)+" of
"+Math.round(my_ns.bytesTotal/1000)+" KB loaded ("+pctLoaded+"%)";
progressBar_mc.bar_mc._xscale = pctLoaded;
if (pctLoaded>=100) {
clearInterval(loaded_interval);
}
}
currentFps (proprietà NetStream.currentFps)
public currentFps : Number [read-only]
Il numero di fotogrammi visualizzati al secondo. Se si esegue l'esportazione di file FLV da riprodurre su una serie di
sistemi, è possibile verificare questo valore durante il test per stabilire la compressione da applicare per l'esportazione
del file.
Disponibilità
Flash Lite 3.0
Nota: questa proprietà è supportata anche in Flash Player 6, se utilizzata con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 490
Classi ActionScript
Esempio
L'esempio seguente crea un campo di testo che mostra il numero corrente di fotogrammi al secondo visualizzati da
video1.flv.
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
this.createTextField("fps_txt", this.getNextHighestDepth(), 10, 10, 50, 22);
fps_txt.autoSize = true;
var fps_interval:Number = setInterval(displayFPS, 500, stream_ns);
function displayFPS(my_ns:NetStream) {
fps_txt.text = "currentFps (frames per second): "+Math.floor(my_ns.currentFps);
}
time (NetStream.time property)
Funzione di costruzione NetStream
public NetStream(connection:“NetConnection” a pagina 483)
Crea uno streaming da utilizzare per la riproduzione dei file FLV mediante l'oggetto NetConnection specificato.
Nota: questa classe è supportata anche in Flash Player 6 quando è utilizzato con Flash Communication Server. Per
ulteriori informazioni, consultare la documentazione di Flash Communication Server.
Parametri
connection:NetConnection - Un oggetto NetConnection.
Esempio
Il codice seguente crea innanzitutto un nuovo oggetto NetConnection, connection_nc, e quindi lo utilizza per creare
un nuovo oggetto NetStream denominato stream_ns. Selezionare Nuovo Video dal menu Opzioni della libreria per
creare una nuova istanza dell'oggetto video e assegnarvi il nome istanza my_video.
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
Vedete anche
“NetConnection” a pagina 483, “attachVideo (metodo Video.attachVideo)” a pagina 675
time (proprietà NetStream.time)
public time : Number [read-only]
La posizione dell'indicatore di riproduzione, in secondi.
Disponibilità
Flash Lite 3.0
Nota: questa proprietà è supportata anche in Flash Player 6, se utilizzata con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 491
Classi ActionScript
Esempio
Nell'esempio seguente la posizione attuale dell'indicatore di riproduzione viene visualizzata in un campo di testo
creato dinamicamente denominato time_txt. Selezionare Nuovo video dal menu Opzioni della libreria per creare
un'istanza di oggetto video e assegnarle il nome my_video. Creare un nuovo oggetto video denominato my_video.
Aggiungere il codice ActionScript seguente al file FLA o AS:
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
//
stream_ns.onStatus = function(infoObject:Object) {
statusCode_txt.text = infoObject.code;
};
this.createTextField("time_txt", this.getNextHighestDepth(), 10, 10, 100, 22);
time_txt.text = "LOADING";
var time_interval:Number = setInterval(checkTime, 500, stream_ns);
function checkTime(my_ns:NetStream) {
var ns_seconds:Number = my_ns.time;
var minutes:Number = Math.floor(ns_seconds/60);
var seconds = Math.floor(ns_seconds%60);
if (seconds<10) {
seconds = "0"+seconds;
}
time_txt.text = minutes+":"+seconds;
}
onStatus (gestore NetStream.onStatus)
onStatus = function(infoObject:Object) {}
Richiamato ogni volta che viene inviato un cambiamento di stato o un errore per l'oggetto NetStream. Se si desidera
rispondere a questo gestore di eventi, creare una funzione che elabori l'oggetto informazioni.
L'oggetto informazioni ha una proprietà di codice contenente una stringa che descrive il risultato del gestore onStatus
e una proprietà level contenente una stringa status o error.
Gli eventi seguenti notificano all'utente quando si svolgono determinate attività di NetStream.
Proprietà di codice
Proprietà di livello
Significato
NetStream.Buffer.Empty
status
I dati non vengono ricevuti con una rapidità
sufficiente a occupare il buffer. Il flusso di dati
viene interrotto finché il buffer si riempie
nuovamente; a quel punto viene inviato un
messaggio NetStream.Buffer.Full e la
riproduzione dello streaming ricomincia.
NetStream.Buffer.Full
status
Il buffer è pieno e inizia la riproduzione dello
streaming.
NetStream.Buffer.Flush
status
Lo streaming dei dati è completato e verrà
svuotata la parte restante del buffer.
NetStream.Play.Start
status
La riproduzione è stata avviata.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 492
Classi ActionScript
Proprietà di codice
Proprietà di livello
Significato
NetStream.Play.Stop
status
La riproduzione è stata interrotta.
NetStream.Play.StreamNotFound
status
Impossibile trovare il file FLV passato al metodo
play().
NetStream.Seek.InvalidTime
error
Per i video scaricati con download progressivo,
l'utente ha tentato di eseguire una ricerca o la
riproduzione oltre la fine dei dati video scaricati
fino a quel momento o oltre la fine del video,
per un file scaricato completamente. La
proprietà Error.message.details
contiene un codice di tempo che indica l'ultima
posizione valida fino a cui poter cercare. Vedere
la proprietà Error.message.
NetStream.Seek.Notify
status
L'operazione di ricerca è stata completata.
Se si verificano frequentemente errori relativi al buffer, provare a modificare il buffer con il metodo
NetStream.setBufferTime().
Disponibilità
Flash Lite 3.0
Parametri
infoObject:Object - Un parametro definito in base al messaggio di stato o di errore.
Esempio
L'esempio seguente mostra i dati relativi allo streaming nel pannello Output.
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
stream_ns.onStatus = function(infoObject:Object) {
trace("NetStream.onStatus called: ("+getTimer()+" ms)");
for (var prop in infoObject) {
trace("\t"+prop+":\t"+infoObject[prop]);
}
trace("");
};
onCuePoint (gestore NetStream.onCuePoint)
onCuePoint = function(infoObject:Object) {}
Richiamato quando si raggiunge un cue point incorporato durante la riproduzione di un file FLV. Questo gestore può
essere utilizzato per attivare azioni nel codice quando il video raggiunge un particolare cue point. In tal modo è
possibile sincronizzare le altre azioni dell'applicazione con gli eventi di riproduzione video.
In un file FLV è possibile incorporare due tipi di cue point.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 493
Classi ActionScript
Un cue point di "navigazione" che specifica un fotogramma chiave all'interno del file FLV la cui proprietà time
corrisponde a quel preciso fotogramma chiave. I cue point di navigazione spesso sono utilizzati come segnalibri o
punti di accesso che consentono di navigare nel file video.
Un cue point “evento” è specificato da un valore temporale, a prescindere dalla sua corrispondenza o meno a un
fotogramma chiave specifico. I cue point evento normalmente rappresentano un momento nel video in cui accade
qualcosa che consente di attivare altri eventi dell'applicazione.
Il gestore di eventi onCuePoint riceve un oggetto con le seguenti proprietà:
Proprietà
Descrizione
name
Il nome assegnato al cue point quando è stato incorporato nel file FLV.
time
Il tempo, espresso in secondi, in cui si verifica il cue point nel file video durante la
riproduzione.
type
Il tipo di cue point raggiunto, di "navigazione" o "evento".
parameters
Un array associativo di stringhe di coppie nome/valore specificate per questo cue
point. Per il parametro nome p valore è possibile utilizzare una qualsiasi stringa
valida.
È possibile definire i cue point in un file FLV quando il file viene codificato per la prima volta o quando si importa
un clip video nello strumento di creazione Flash Authoring mediante la procedura guidata Importa video.
Anche il gestore di eventi onMetaData() recupera informazioni sui cue point in un file video. Tuttavia, il gestore di
eventi onMetaData recupera le informazioni su tutti i cue point prima che inizi la riproduzione del video. Il gestore di
eventi onCuePoint riceve le informazioni sui singoli cue point al momento specificato per ciascuno di essi durante la
riproduzione.
In genere, per far sì che il codice risponda a un determinato cue point nel momento che si verifica, è necessario
utilizzare il gestore di eventi onCuePoint per attivare un'azione nel codice.
Utilizzare l'elenco di cue point disponibile nel gestore di eventi onMetaData per consentire di avviare la riproduzione
del video in punti prestabiliti dello streaming video. Per riprodurre un video partendo da un cue point, passare il valore
della proprietà time di tale cue point al metodo NetStream.seek().
Disponibilità
Flash Lite 3.0
Parametri
infoObject:Object - Un oggetto contenente il nome, il momento, il tipo e i parametri per il cue point.
Esempio
In questo esempio il codice parte dalla creazione di nuovi oggetti NetConnection e NetStream. Quindi definisce il
gestore onCuePoint() per l'oggetto NetStream. Il gestore passa ciclicamente attraverso ciascuna proprietà nominata
nell'oggetto infoObject e stampa il nome e il valore della proprietà. Quando trova i parametri nominati della proprietà,
scorre ciascun nome di parametro nell'elenco tutti e ne stampa nome e valore.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 494
Classi ActionScript
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.onCuePoint = function(infoObject:Object)
{
trace("onCuePoint:");
for (var propName:String in infoObject) {
if (propName != "parameters")
{
trace(propName + " = " + infoObject[propName]);
}
else
{
trace("parameters =");
if (infoObject.parameters != undefined) {
for (var paramName:String in infoObject.parameters)
{
trace(" " + paramName + ": " + infoObject.parameters[paramName]);
}
}
else
{
trace("undefined");
}
}
}
trace("---------");
}
ns.play("http://www.helpexamples.com/flash/video/cuepoints.flv");
Questo provoca la visualizzazione delle seguenti informazioni:
onCuePoint:
parameters =
lights: beginning
type = navigation
time = 0.418
name = point1
--------onCuePoint:
parameters =
lights: middle
type = navigation
time = 7.748
name = point2
--------onCuePoint:
parameters =
lights: end
type = navigation
time = 16.02
name = point3
---------
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 495
Classi ActionScript
Il nome di parametro “lights” è un nome arbitrario utilizzato dall'autore del video di esempio. Ai parametri dei cue
point è possibile assegnare un nome qualsiasi.
onMetaData (gestore NetStream.onMetaData)
onMetaData = function(infoObject:Object) {}
Richiamato quando il player Flash Lite riceve informazioni descrittive incorporate nel file FLV in riproduzione.
L'utilità Flash Video Exporter (versione 1.1 o successiva) inserisce nel video informazioni quali durata, data di
creazione, velocità dei dati e così via. I dati incorporati variano in base al codificatore video utilizzato.
Questo gestore viene avviato dopo che è stato richiamato il metodo NetStream.play(), ma prima che l'indicatore di
riproduzione inizi a muoversi.
Spesso, il valore di durata incorporato nei metadati FLV si avvicina alla durata effettiva ma non è mai esatto. In altri
termini, non sempre corrisponde al valore della proprietà NetStream.time quando l'indicatore di riproduzione di
trova alla fine dello streaming video.
Disponibilità
Flash Lite 3.0
Parametri
infoObject: Object - Un oggetto che contiene una proprietà per ciascun elemento di metadati.
Esempio
In questo esempio il codice parte dalla creazione di nuovi oggetti NetConnection e NetStream. Quindi definisce il
gestore onMetaData() per l'oggetto NetStream. Il gestore passa ciclicamente attraverso ciascuna proprietà nominata
nell'oggetto infoObject e stampa il nome e il valore della proprietà.
var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.onMetaData = function(infoObject:Object) {
for (var propName:String in infoObject) {
trace(propName + " = " + infoObject[propName]);
}
};
ns.play("http://www.helpexamples.com/flash/video/water.flv");
Questo provoca la visualizzazione delle seguenti informazioni:
canSeekToEnd = true
videocodecid = 4
framerate = 15
videodatarate = 400
height = 215
width = 320
duration = 7.347
L'elenco delle proprietà varia in base al software utilizzato per codificare il file FLV.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 496
Classi ActionScript
Metodo close (NetStream.close)
public close() : Void
Interrompe la riproduzione di tutti i dati dello streaming, imposta la proprietà NetStream.time su 0 e rende lo
streaming disponibile per altri usi. Questo comando inoltre elimina la copia locale dei file FLV scaricati tramite HTTP.
Benché la copia locale del file FLV creata dal player Flash Lite venga eliminata, è possibile che una copia del video
rimanga nella directory della cache del browser. Se è la memorizzazione nella cache o locale del file FLV è impedita,
utilizzare Flash Media Server.
Disponibilità
Flash Lite 3.0
Nota: Questo metodo è supportato anche in Flash Player 6, se utilizzato con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Esempio
La funzione close() seguente chiude una connessione ed elimina la copia temporanea di video1.flv memorizzata sul
disco locale quando si preme il pulsante denominato close_btn:
var connection_nc:NetConnection = new NetConnection();
connection_nc.connect(null);
var stream_ns:NetStream = new NetStream(connection_nc);
my_video.attachVideo(stream_ns);
stream_ns.play("video1.flv");
close_btn.onRelease = function(){
stream_ns.close();
};
pause (metodo NetStream.pause)
public pause([flag:Boolean]) : Void
Sospende o riprende la riproduzione di uno stream.
La prima volta che questo metodo viene richiamato (senza inviare un parametro), la riproduzione viene sospesa; la
volta successiva invece viene ripresa. Può risultare utile collegare questo metodo a un pulsante che quando viene
premuto sospende la riproduzione o la riprende.
Disponibilità
Flash Lite 3.0
Nota: Questo metodo è supportato anche in Flash Player 6, se utilizzato con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Parametri
flag : Boolean [opzionale] - Un valore booleano che indica se sospendere la riproduzione (true) o riprenderla
(false). Se si omette questo parametro, NetStream.pause() funge da interruttore: la prima volta che viene
richiamato per un determinato streaming, la riproduzione viene sospesa; la volta successiva invece viene ripresa.
Esempio
Gli esempi seguenti mostrano alcuni usi di questo metodo :
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 497
Classi ActionScript
my_ns.pause(); // pauses play first time issued
my_ns.pause(); // resumes play
my_ns.pause(false); // no effect, play continues
my_ns.pause(); // pauses play
play (NetStream.play), metodo
public play(name:Object, start:Number, len:Number, reset:Object) : Void
Inizia la riproduzione di un file video (FLV) esterno. Per vedere i dati video, è necessario richiamare un metodo
Video.attachVideo(); l'audio riprodotto con il video o i file FLV che contengono solo audio vengono riprodotti
automaticamente.
Per controllare l'audio associato a un file FLV, è possibile utilizzare MovieClip.attachAudio() per indirizzare
l'audio a un clip filmato; successivamente è possibile creare un oggetto Sound che controlli alcuni aspetti dell'audio.
Per ulteriori informazioni, vedete MovieClip.attachAudio().
Se non si riesce a trovare il file FLV, è possibile richiamare il gestore di eventi NetStream.onStatus. Se si desidera
interrompere uno streaming in fase di riproduzione, utilizzare NetStream.close().
È possibile riprodurre i file FLV locali memorizzati nella stessa directory del file SWF o in una sottodirectory; non è
possibile passare a una directory di livello superiore. Ad esempio, se il file SWF si trova in una directory nome /training
e si desidera riprodurre un video memorizzato nella directory /training/videos, è necessario utilizzare la seguente
sintassi:
my_ns.play("videos/videoName.flv");
Per riprodurre un video memorizzato nella directory /training, utilizzare la seguente sintassi:
my_ns.play("videoName.flv");
Quando si usa questo metodo, tenere presente il modello di sicurezza di Flash Player.
Per Flash Player 8:
Non è possibile utilizzare il metodo NetStream.play() se il file SWF che effettua la chiamata si trova nella sandbox
locale con il file system e la risorsa è in una sandbox non locale.
L'accesso alle sandbox di rete da sandbox locali affidabili o locali con rete richiede l'autorizzazione del sito Web
mediante un file di criteri dei domini.
Per ulteriori informazioni, consultare i seguenti riferimenti:
White Paper Flash Player 9 Security all'indirizzo http://www.adobe.com/go/fp9_0_security_it
White Paper Flash sulle API connesse alla sicurezza per Flash Player 8 all'indirizzo
http://www.adobe.com/go/fp8_security_apis_it
Disponibilità
Flash Lite 3.0
Nota: Questo metodo è supportato anche in Flash Player 6, se utilizzato con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Parametri
name : Object - Il nome di un file FLV da riprodurre, racchiuso tra virgolette. Sono supportati sia il formato http://
che file://; la posizione file:// è sempre correlata alla posizione del file SWF.
start : Number - Da utilizzare con Flash Media Server; consultate la documentazione di Flash Media Server.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 498
Classi ActionScript
len : Number - Da utilizzare con Flash Media Server; consultate la documentazione di Flash Media Server.
reset : Object - Da utilizzare con Flash Media Server; consultate la documentazione di Flash Media Server.
Esempio
L'esempio seguente illustra alcuni modi per l'uso del metodo NetStream.seek(). È possibile riprodurre un file che
si trova sul computer di un utente. La directory joe_user è una sottodirectory della directory in cui si trova il file SWF.
Inoltre, è possibile riprodurre un file su un server:
// Play a file that is on the user's computer.
my_ns.play("file://joe_user/flash/videos/lectureJune26.flv");
// Play a file on a server.
my_ns.play("http://someServer.someDomain.com/flash/video/orientation.flv");
seek (NetStream.seek), metodo
public seek(offset:Number) : Void
Cerca il fotogramma chiave più vicino al numero di secondi specificato, a partire dall'inizio dello streaming. La
riproduzione viene riavviata quando viene raggiunta questa posizione.
Disponibilità
Flash Lite 3.0
Nota: Questo metodo è supportato anche in Flash Player 6, se utilizzato con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Parametri
offset : Number - Il valore temporale approssimativo, in secondi, per lo spostamento dell'indicatore di riproduzione
in un file FLV. L'indicatore di riproduzione passa al fotogramma chiave del video più vicino al valore specificato da
offset.
• Per ritornare all'inizio dello streaming, spostare offset a 0.
• Per cercare in avanti, partendo dall'inizio dello streaming, specificare il numero di secondi per l'avanzamento. Ad
esempio, per posizionare l'indicatore di riproduzione a 15 secondi dall'inizio, utilizzare my_ns.seek(15).
• Per cercare a partire dalla posizione corrente, specificare my_ns.time
+ n o my_ns.time - n per cercare
rispettivamente n secondi in avanti o all'indietro, dalla posizione attuale. Ad esempio, per un riavvolgimento di 20
secondi dalla posizione corrente, utilizzare my_ns.seek(my_ns.time - 20).
La posizione precisa in cui si sposta l'indicatore di riproduzione varia in base all'impostazione fps (frames-per-second)
con cui è stato esportato il video. Ad esempio, si supponga avere due oggetti video che rappresentano lo stesso video,
uno esportato a 6 fps e l'altro a 30 fps. Se si utilizza my_ns.seek(15) per entrambi gli oggetti, l'indicatore di
riproduzione si sposta in due posizioni differenti.
Esempio
L'esempio seguente illustra alcuni modi per l'uso del comando NetStream.seek(). È possibile ritornare all'inizio
dello streaming, passare a una posizione che si trova a 30 secondi dall'inizio e tornare indietro di tre minuti rispetto
alla posizione corrente:
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 499
Classi ActionScript
// Return to the beginning of the stream
my_ns.seek(0);
// Move to a location 30 seconds from the beginning of the stream
my_ns.seek(30);
// Move backwards three minutes from current location
my_ns.seek(my_ns.time - 180);
setBufferTime (NetStream.setBufferTime), metodo
public setBufferTime(bufferTime:Number) : Void
Specifica per quanto tempo eseguire il buffering dei messaggi prima di avviare la visualizzazione dello streaming. Ad
esempio, per garantire la riproduzione dei primi 15 secondi dello streaming senza interruzioni, impostare bufferTime
su 15; la riproduzione viene avviata solo dopo aver eseguito il buffering di 15 secondi di dati.
Disponibilità
Flash Lite 3.0
Nota: Questo metodo è supportato anche in Flash Player 6, se utilizzato con Flash Media Server. Per ulteriori
informazioni, consultare la documentazione di Flash Media Server.
Parametri
bufferTime: Number - Il numero di secondi di esecuzione del buffering dei dati prima di avviare la visualizzazione
dei dati. Il valore predefinito è 0,1(un decimo di secondo).
Esempio
Vedere l'esempio per NetStream.bufferLength.
Number
Object
|
+-Number
public class Number
extends Object
La classe Number è un semplice oggetto wrapper per il tipo di dati Number. È possibile manipolare i valori numerici
di base utilizzando i metodi e le proprietà associati alla classe Number. Questa classe è identica alla classe Number del
codice JavaScript.
Le proprietà della classe sono statiche; questo significa che non è necessario che un oggetto le utilizzi e pertanto non è
necessario utilizzare la funzione di costruzione.
L'esempio seguente chiama il metodo toString() della classe Number, che restituisce la stringa 1234:
var myNumber:Number = new Number(1234);
myNumber.toString();
L'esempio seguente assegna il valore della proprietà MIN_VALUE a una variabile dichiarata senza ricorrere a una
funzione di costruzione:
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 500
Ultimo aggiornamento 4/5/2010
Classi ActionScript
var smallest:Number = Number.MIN_VALUE;
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
Proprietà
Descrizione
static
MAX_VALUE:Number
Il più grande numero rappresentabile (IEEE-754 a doppia
precisione).
static
MIN_VALUE:Number
Il più piccolo numero rappresentabile (IEEE-754 a doppia
precisione).
static
NaN:Number
Il valore IEEE-754 che rappresenta Not A Number (NaN).
static
NEGATIVE_INFINITY:Num
ber
Indica il valore IEEE-754 che rappresenta l'infinito negativo.
static
POSITIVE_INFINITY:Numb
er
Indica il valore IEEE-754 che rappresenta l'infinito positivo.
Proprietà ereditate dalla classe Object
constructor (proprietà Object.constructor), __proto__ (proprietà Object._proto),
prototype (proprietà Object.prototype), __resolve (proprietà Object.__resolve)
Riepilogo delle funzioni di costruzione
Firma
Descrizione
Number(num:Object)
Crea un nuovo oggetto Number.
Riepilogo dei metodi
Modificatori
Firma
Descrizione
toString(radix:Number
) : String
Restituisce la rappresentazione in formato stringa dell'oggetto
Number specificato (myNumber).
valueOf() : Number
Restituisce il tipo di valore di base dell'oggetto Number
specificato.
Metodi ereditati dalla classe Object
addProperty (metodo Object.addProperty), hasOwnProperty (metodo Object.hasOwnProperty),
isPropertyEnumerable (metodo Object.isPropertyEnumerable), isPrototypeOf (metodo
Object.isPrototypeOf), registerClass (metodo Object.registerClass), toString (metodo
Object.toString)unwatch (metodo Object.unwatch), valueOf (metodo Object.valueOf), watch
(metodo Object.watch)
MAX_VALUE (proprietà Number.MAX_VALUE)
public static MAX_VALUE : Number
Il più grande numero rappresentabile (IEEE-754 a doppia precisione). Questo numero corrisponde
approssimativamente a 1,79e+308.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 501
Classi ActionScript
Disponibilità
Flash Lite 2.0
Esempio
Il codice ActionScript seguente visualizza scrive i numeri rappresentabili più grande e più piccolo nel pannello Output.
trace("Number.MIN_VALUE = "+Number.MIN_VALUE);
trace("Number.MAX_VALUE = "+Number.MAX_VALUE);
Questo codice registra visualizza i valori seguenti:
Number.MIN_VALUE = 4.94065645841247e-324
Number.MAX_VALUE = 1.79769313486232e+308
MIN_VALUE (proprietà Number.MIN_VALUE)
public static MIN_VALUE : Number
Il più piccolo numero rappresentabile (IEEE-754 a doppia precisione). Questo numero corrisponde
approssimativamente a 5e-324.
Disponibilità
Flash Lite 2.0
Esempio
Il codice ActionScript seguente visualizza i numeri rappresentabili più grande e più piccolo nel pannello Output nel
file di registro.
trace("Number.MIN_VALUE = "+Number.MIN_VALUE);
trace("Number.MAX_VALUE = "+Number.MAX_VALUE);
Questo codice registra visualizza i valori seguenti:
Number.MIN_VALUE = 4.94065645841247e-324
Number.MAX_VALUE = 1.79769313486232e+308
NaN (proprietà Number.NaN)
public static NaN : Number
Il valore IEEE-754 che rappresenta Not A Number (NaN).
Disponibilità
Flash Lite 2.0
Vedete anche
Funzione isNaN
NEGATIVE_INFINITY (proprietà Number.NEGATIVE_INFINITY)
public static NEGATIVE_INFINITY : Number
Indica il valore IEEE-754 che rappresenta l'infinito negativo. Il valore di questa proprietà equivale a quello della
costante -Infinity.
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 502
Classi ActionScript
L'infinito negativo è un valore numerico speciale che viene restituito quando un'operazione o una funzione
matematica restituisce un valore negativo superiore a quello che è possibile rappresentare.
Disponibilità
Flash Lite 2.0
Esempio
Questo esempio confronta il risultato della divisione dei valori seguenti.
var posResult:Number = 1/0;
if (posResult == Number.POSITIVE_INFINITY) {
trace("posResult = "+posResult); // output: posResult = Infinity
}
var negResult:Number = -1/0;
if (negResult == Number.NEGATIVE_INFINITY) {
trace("negResult = "+negResult); // output: negResult = -Infinity
Number (funzione di costruzione)
public Number(num:Object)
Crea un nuovo oggetto Number. La funzione di costruzione new Number viene utilizzata principalmente come
segnaposto. L'oggetto Number non equivale alla funzione Number() che converte un parametro in un valore di base.
Disponibilità
Flash Lite 2.0
Parametri
num : Object - Il valore numerico dell'oggetto Number da creare o un valore da convertire in un numero. Il valore
predefinito è 0, se non viene specificato value.
Esempio
Il codice seguente crea nuovi oggetti Number:
var n1:Number = new Number(3.4);
var n2:Number = new Number(-10);
Vedete anche
toString (metodo Number.toString), valueOf (metodo Number.valueOf)
POSITIVE_INFINITY (proprietà Number.POSITIVE_INFINITY)
public static POSITIVE_INFINITY : Number
Indica il valore IEEE-754 che rappresenta l'infinito positivo. Il valore di questa proprietà equivale a quello della
costante Infinity.
L'infinito positivo è un valore numerico speciale che viene restituito quando un'operazione o una funzione matematica
restituisce un valore superiore a quello che è possibile rappresentare.
Disponibilità
Flash Lite 2.0
Ultimo aggiornamento 4/5/2010
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 503
Classi ActionScript
Esempio
Questo esempio confronta il risultato della divisione dei valori seguenti.
var posResult:Number = 1/0;
if (posResult == Number.POSITIVE_INFINITY) {
trace("posResult = "+posResult); // output: posResult = Infinity
}
var negResult:Number = -1/0;
if (negResult == Number.NEGATIVE_INFINITY) {
trace("negResult = "+negResult); // output: negResult = -Infinity
toString (metodo Number.toString)
public toString(radix:Number) : String
Restituisce la rappresentazione in formato stringa dell'oggetto Number specificato (myNumber).
Disponibilità
Flash Lite 2.0
Parametri
radix : Number - Specifica la base numerica (da 2 a 36) da utilizzare per la conversione da numero a stringa. Se non
si specifica il parametro radix, il valore predefinito è 10.
Restituisce
String - Una stringa.
Esempio
Nell'esempio seguente vengono utilizzati i valori 2 e 8 per il parametro radix e viene restituita una stringa contenente
la corrispondente rappresentazione del numero 9:
var myNumber:Number = new Number(9);
trace(myNumber.toString(2)); // output: 1001
trace(myNumber.toString(8)); // output: 11
Nell'esempio seguente viene restituito un valore esadecimale.
var r:Number = new Number(250);
var g:Number = new Number(128);
var b:Number = new Number(114);
var rgb:String = "0x"+ r.toString(16)+g.toString(16)+b.toString(16);
trace(rgb);
// output: rgb:0xFA8072 (Hexadecimal equivalent of the color 'salmon')
valueOf (metodo Number.valueOf)
public valueOf() : Number
Restituisce il tipo di valore di base dell'oggetto Number specificato.
Disponibilità
Flash Lite 2.0
GUIDA DI RIFERIMENTO DI ACTIONSCRIPT PER FLASH LITE 2.X E 3.X 504
Ultimo aggiornamento 4/5/2010
Classi ActionScript
Restituisce
Number - Una stringa.
Esempio
Nell'esempio seguente viene restituito il valore di base dell'oggetto numSocks.
var numSocks = new Number(2);
trace(numSocks.valueOf()); // output: 2
Object
Object
public class Object
La classe Object è alla radice della gerarchia delle classi ActionScript. Contiene un piccolo sottoinsieme di funzioni
fornite dalla classe Object di JavaScript.
Disponibilità
Flash Lite 2.0
Riepilogo delle proprietà
Modificatori
static
Proprietà
Descrizione
constructor:Obje