Hvordan passere variabler å SWF
En SWF-fil inneholder Actionscript, multimedia og vektorgrafikk som brukes i Adobe Flash miljøet. Fordi de kan inneholde applets av ulike grader av interaktivitet, må SWF-applikasjoner kunne motta variabler. Å passere variabler til SWF fra i HTML-miljø, må du bruke "Flashvars" parameter i HTML <OBJECT> tag. Dette hjelper deg tilpasse applet, tar hensyn til behovene til brukeren.
Bruksanvisning
1 Legg FlashVars parameter til en HTML <OBJECT> tag. Den følgende HTML-kode går variabelen "myVariable," med verdien "Hello World" til "myFlashMovie.swf":
<Object classid = "clsid: d27cdb6e-ae6d-11cf-96b8-444553540000" width = "550" height = "400" id = "myFlashMovie" align = "middle">
<param name="movie" value="myFlashMovie.swf" />
& Lt; param name = FlashVars value = "myVariable = Hei% 20verden">
& Lt;! - [! Hvis IE]> ->
& Lt; objekt type = "application / x-shockwave-flash" data = "myFlashMovie.swf" width = "550" height = "400">
& Lt; param name = "movie" value = "myFlashMovie.swf" />
& Lt; param name = FlashVars value = "myVariable = Hei% 20verden">
& Lt;! - & Lt;! [Endif] ->
& Lt; a href = "http://www.adobe.com/go/getflash">
& Lt; img alt = "Get Adobe Flash player" />
& Lt; / a>
& Lt;! - [! Hvis IE]> ->
& Lt; / object>
& Lt;! - & Lt;! [Endif] ->
</ Object>.
2 Bruk Actionscript 3.0 "LoaderInfo" objekt tilgang til og bruke variabelen du nettopp passert til SWF-fil. Når du passerer en variabel til SWF-fil, er det obligatorisk å bruke den. Følgende kode oppretter en Textfield eksempel heter "tf," bruker LoaderInfo objekt å tilegne variablene gått med FlashVars parameter, og med en "for / i" loop, gjentar mer enn hver enkelt av dem. Det viser deretter variabelnavnet og variabel verdi i et tekstfelt. Dette er den enkleste eksempelet tilgjengelig, men du kan bruke dem hvor som helst inne i SWF-fil for å lage komplekse interaksjoner med brukerne.
// AS3
Var tf: Textfield = new Textfield ();
tf.autoSize = TextFieldAutoSize.LEFT;
tf.border = true;
addChild (tf);
tf.appendText ( "params:" + "\ n");
prøve
{
var keyStr:String;
Var valueStr: String;
Var paramObj: Object = LoaderInfo (this.root.loaderInfo) .parameters;
for (keyStr i paramObj)
{
valueStr = String (paramObj [keyStr]);
tf.appendText ( "\ t" + keyStr + ": \ t" + valueStr + "\ n");
}
}
fangst (feil: Feil)
{
tf.appendText(error.toString());
}.
3 Passere så mange variabler som du trenger og bruke variabelnavn du vil, men husk at disse variablene er bestått før det første bildet av filen spilles. Variablene er gått inn i roten nivået av SWF-fil. De FlashVars er kodet av nettleseren på samme måte som all HTML-kode.