Come passare variabili a SWF

March 29

Un file SWF contiene Actionscript, multimediali e di grafica vettoriale utilizzati nell'ambiente di Adobe Flash. Perché possono contenere applet di vari gradi di interattività, applicazioni SWF devono essere in grado di ricevere le variabili. Per passare variabili a SWF dall'ambiente HTML, è necessario utilizzare il parametro "Flashvars" del tag HTML <object>. Questo ti aiuta a personalizzare l'applet, tenendo conto delle esigenze degli utenti.

istruzione

1 Aggiungere il parametro FlashVars di un tag HTML <object>. Il seguente codice HTML passa la variabile "myVariable," con il valore "Ciao Mondo", a "myFlashMovie.swf":

<Object classid = "clsid: d27cdb6e-ae6d-11cf-96b8-444553540000" width = "550" height = "400" id = "myFlashMovie" align = "middle">

&lt;param name="movie" value="myFlashMovie.swf" />

& Lt; param name = FlashVars value = "myVariable = Ciao% 20World">

& Lt;! - [! Se IE]> ->

& Lt; tipo di oggetto = dati "application / x-shockwave-flash" = larghezza "myFlashMovie.swf" = "550" height = "400">

& Lt; param name = "movie" value = "myFlashMovie.swf" />

& Lt; param name = FlashVars value = "myVariable = Ciao% 20World">

& Lt;! - & Lt;! [Endif] ->

& Lt; a href = "http://www.adobe.com/go/getflash">

& Lt; img alt = "Get Adobe Flash player" />

& Lt; / a>

& Lt;! - [! Se IE]> ->

& Lt; / object>

& Lt;! - & Lt;! [Endif] ->

</ Object>.

2 Utilizzare il 3.0 oggetto "LoaderInfo" ActionScript per accedere e utilizzare la variabile che avete appena passato al file SWF. Una volta che si passa una variabile al file SWF, è obbligatorio usarlo. Il codice seguente crea un'istanza TextField denominato "tf", utilizza l'oggetto LoaderInfo di acquisire le variabili passate con il parametro FlashVars e, con un "per / a" loop, itera su ognuno di essi. E 'quindi visualizza il nome della variabile e il valore variabile in un campo di testo. Questo è l'esempio più semplice a disposizione, ma li si può usare ovunque all'interno del file SWF per creare complesse interazioni con gli utenti.

// AS3

var tf: TextField = new TextField ();

tf.autoSize = TextFieldAutoSize.LEFT;

tf.border = true;

addChild (tf);

tf.appendText ( "params:" + "\ n");

provare

{

var keyStr:String;

var valueStr: String;

var paramObj: Object = LoaderInfo (this.root.loaderInfo) .parameters;

per (keyStr in paramObj)

{

valueStr = String (paramObj [keyStr]);

tf.appendText ( "\ t" + keyStr + ": \ t" + valueStr + "\ n");

}

}

catch (errore: Errore)

{

tf.appendText(error.toString());

}.

3 Far passare il maggior numero di variabili di cui hai bisogno e utilizzare i nomi delle variabili che si desidera, ma tenere a mente che queste variabili sono passati prima che il primo fotogramma del file viene riprodotto. Le variabili sono passati nel livello principale del file SWF. Le variabili Flash sono codificati dal browser analogamente a tutto il codice HTML.