Transmission de variables : FlashVars

© Christian PAULUS. Document créé le 16 septembre 2004 , mis à jour le 12 août 2007.

Les hommes vieillissent toujours mal quand ils restent jeunes. Romain Gary (Au-delà de cette limite...)

Accueil du site > Astuces > Flash > Transmission de variables : FlashVars

Astuce / Flash 6+

A partir de Flash 6+, il est possible de transmettre des variables à un objet flash (swf) via les flashvars.

1/ Ajouter les flashvars à l’objet flash, dans la page HTML. Par exemple :

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
WIDTH="550" HEIGHT="400" ALIGN="">
<PARAM NAME=movie VALUE="test.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#666666>
<param name="FlashVars" value="fv_message=Message%20flashvars%20OK">
<EMBED
src="test.swf" WIDTH="550" HEIGHT="400" ALIGN="" quality=high bgcolor=#666666
TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"
flashvars="fv_message=Message%20flashvars%20OK">
</EMBED>
</OBJECT>

Dans l’extrait ci-dessus, le paramètre flashvars, déclaré traditionnellement deux fois, permet de transmettre à l’objet flash appelé la variable fv_message contenant la valeur texte "Message flashvars OK".

Dans l’objet flash, il vaut mieux détecter la présence de la variable transmise, et vérifier sa qualité avant de l’utiliser. Ci-dessous, l’ActionScript pour une image de scénario, créé sa boîte de texte et y affiche le résultat transmis ou - au contraire - précise que la variable est absente.

createTextField ("stdout_txt",1,100,100,300,100);
if (_root.fv_message !== undefined && _root.fv_message.length < 16) {
this.stdout_txt.text = _root.fv_message;
} else {
this.stdout_txt.text = "Pas de valeur transmise ?";
}

Remarquez au passage que la variable transmise par flashvars se trouve dans _root, pas dans _global.

Plussoyez !

Les forums sont fermés.

  • Transmission de variables : FlashVars 4 septembre 2008 12:08, par Noeim
    Bonjour,
    j’admire la qualité de votre tutorial, cependant j’ai reproduis pas à pas les étapes et ça me dit toujours : "Pas de valeur transmise ?" comment cela est-il possible ?
    Je galère sur ce problème depuis avant hier, si quelqu’un pouvait m’aider...

    Les forums sont fermés.