[Flash] transfert de variables

transfert de variables [Flash] - Programmation

Marsh Posté le 14-05-2001 à 09:30:16    

Est-il possible d'envoyer une variable d'une animation flash vers un document HTML? merci d'avance pke la je galere trop

Reply

Marsh Posté le 14-05-2001 à 09:30:16   

Reply

Marsh Posté le 14-05-2001 à 11:14:50    

Avec les FS Command !!
Tu envoies un ordre depuis Flash qui est alors traité par javascript:
C'est de la forme:
 
On (Release)  
// si je relache le bouton souris après avoir cliqué
FS Command ("ordre", "^_^" )
// ordre est intercepté par le browser, et utlisé  
//par Javascript, te permettant d'interagir avec le fichier .htm
End On
 
 
Reste un détail: comment obtenir le code Javascript ?
Réponse: dans la barre de menu de Flash, y a "Menu settings", dedans tu vas dans HTML et tu remplace HTML (default) par FLASH with FSCommand, tu click à droite sur Publish (y refait le fichier save.html en rajoutant le javascript), tu ressors et tu vas dans la source de save.html:
 
Dans le commentaire // place your code here, tu vires le commentaire pour mettre TON code (voir le mien pour voir comment ça s'écrit)
 
Et voilà,
 
tu peux faire des FSCommand toi aussi pour faire croire à tes amis que tu es un Sorcier,
 
A+,
 
 
 
 
 
"ô démon de Garrth, donne moi les raccourcis-claviers".  
 
PS: exemple plus détaillé, le fichier HTML correspondant:
 
Le fichier HTML, lui, ressemblera à ça:
 
<HTML>
<HEAD>
<TITLE>save</TITLE>
// ce script sert à ouvrir la fenetre: c'est une fonction, qui est appellée (voir plus bas)
 
<script language="JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) { file://v2.0
  window.open(theURL,winName,features);
}  
-->
</script>
 
</HEAD>
<BODY bgcolor="#CCCCFF">
<p align="center">  
  <SCRIPT LANGUAGE=JavaScript>
<!--
var InternetExplorer = navigator.appName.indexOf("Microsoft" ) != -1;
// Handle all the the FSCommand messages in a Flash movie
function save_DoFSCommand(command, args) {
  var saveObj = InternetExplorer ? save : document.save;
  //
  // ICI TU MET LE CODE c'est toujours sous la forme ci dessous:  
//si command c'est la FSCommand interceptée (j'ai mis "ordre"  
//mais tu peut mettre "bob" dans le fichier Flash si tu veux, à  
//condition d'avoir if(command=="bob" ) { ici), alors fait ceci
 
if(command=="ordre" ) {
 
//  j'ouvre une fenêtre avec cet ordre mais tu met le javascript  
//que tu veux, il marchera. Astuce: obtiens le code avec  
//Dreamweaver ou autre, et fait des copier/coller, c'est plus  
//simple.
 
MM_openBrWindow('amazan2.htm','amazan','scrollbars=yes,resizable=yes,width=640,height=480')
return document.MM_returnValue;
}
  //
}
// Hook for Internet Explorer / Il vérifie avec quoi tu browse
if (navigator.appName && navigator.appName.indexOf("Microsoft" ) != -1 &&  
   navigator.userAgent.indexOf("Windows" ) != -1 && navigator.userAgent.indexOf("Windows 3.1" ) == -1) {
 document.write('<SCRIPT LANGUAGE=VBScript\> \n');
 document.write('on error resume next \n');
 document.write('Sub save_FSCommand(ByVal command, ByVal args)\n');
 document.write('  call save_DoFSCommand(command, args)\n');
 document.write('end sub\n');
 document.write('</SCRIPT\> \n');
}
-->
</SCRIPT>
Bon, ça c'est le fichier .swf qui est appelé, rien de nouveau sous le Soleil:  
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0"
 ID=save WIDTH=550 HEIGHT=400 align="middle">
    <PARAM NAME=movie VALUE="save.swf">
    <PARAM NAME=quality VALUE=high>
    <PARAM NAME=bgcolor VALUE=#CCCCFF>
    <EMBED src="save.swf" quality=high bgcolor=#CCCCFF  WIDTH=550 HEIGHT=400 swLiveConnect=true
 TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" align="middle">
    </EMBED>  
  </OBJECT> </p>
 
</BODY>
</HTML>


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 14-05-2001 à 11:17:04    

Et voilà !! Ca n'est pas évident à comprendre du premier coup, mais c'est pas grave: quand tu auras compris, essayes de rajouter le code suivant à la place de la ligne:
MM_openBrWindow('amazan2.htm','amazan','scrollbars=yes,resizable=yes,width=640,height=480')
tu rajoutes:  
MM_displayStatusMsg(args);
 
cette commande fera apparaître l'argument tapé (dans mon cas ^_^) dans la barre du bas du browser.
 
Voilà. En espérant que ça t'a aidé.
 :hello:


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 15-05-2001 à 12:22:29    

Meuh ?
T'es parti ?
 :)


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 15-05-2001 à 15:45:27    

Euh, j'veux pas foutre la merde, mais pour l'inverse, passer du html au .swf ?

Reply

Marsh Posté le 16-05-2001 à 10:01:29    

merci pour le coup de main les gars c'est bien cool
j'ai pas encore eu le temps de bien comprendre mais ca va venir... d'ici le debut de la semaine prochaine je pense... :)

Reply

Marsh Posté le 16-05-2001 à 10:46:57    

ben je pensais pas y arriver aussi facilement
mais en fait c pas super comppliké. mais ya juste un truc ki coince... j'arrive pas a recuperrer la valeur passée en paramètres du FSCommand
sivouplè un dernier coup de main!! :)

Reply

Marsh Posté le 16-05-2001 à 10:52:13    

CA Y EST!!!
Je vais enfin pouvoir faire croire a mes amis que je suis un sorcier... :)
Merci beaucoup amazan tu m'as donné un sacré coup de main.
@++ les gens et merci encore

Reply

Marsh Posté le 16-05-2001 à 13:49:40    

Riton --> REPONSE CI DESSOUS !!  :D

 

[edit]--Message édité par Amazan--[/edit]


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 16-05-2001 à 13:51:09    

AVANT LE <HEAD>:
 
<script language="JavaScript">
<!--
function MM_controlShockwave(objStr,x,cmdName,frameNum) { //v3.0
  var obj=MM_findObj(objStr);
  if (obj) eval('obj.'+cmdName+'('+((cmdName=='GotoFrame')?frameNum:'')+')');
}
//-->
</script>
 
APRES LE <BODY>:
 
LE SWF et quelques lignes de javascript:
 
<SCRIPT LANGUAGE=JavaScript>
<!--
function masog1_DoFSCommand(command, args) {
  var masog1Obj = InternetExplorer ? masog1 : document.masog1
}
// Hook for Internet Explorer  
if (navigator.appName && navigator.appName.indexOf("Microsoft" ) != -1 &&  
   navigator.userAgent.indexOf("Windows" ) != -1 && navigator.userAgent.indexOf("Windows 3.1" ) == -1) {
 document.write('<SCRIPT LANGUAGE=VBScript\> \n');
 document.write('on error resume next \n');
 document.write('Sub masog1_FSCommand(ByVal command, ByVal args)\n');
 document.write('  call masog1_DoFSCommand(command, args)\n');
 document.write('end sub\n');
 document.write('</SCRIPT\> \n');
}
//-->
</SCRIPT>
 
<div align="center"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
 codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"
 id=masog1 width=200 height=200 name="masog1">
          <param name=movie value="masog1.swf">
          <param name=quality value=high>
          <param name="BGCOLOR" value="#FFFFFF">
          <embed src="masog1.swf" quality=high bgcolor=#FFFFFF  width=200 height=200 swliveconnect=true name=masog1 type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
          </embed>  
        </object></div>
 
LA COMMANDE JAVASCRIPT(les autres sont dispo sur le site www.macromedia.com):
 
<a href="whoswho.htm" target="frame" onClick="MM_controlShockwave('masog1','','GotoFrame','4')">Whoswho</a>

 

[edit]--Message édité par Amazan--[/edit]


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 16-05-2001 à 13:51:09   

Reply

Marsh Posté le 16-05-2001 à 15:10:26    

puisque tu m'as l'air de bien connaitre le flash amazan, je me demandais si tu savais pourquoi flash faisait pas l'antialiasing sur les caractères dans les zones de texte dynamiques.

Reply

Marsh Posté le 16-05-2001 à 15:17:39    

..c'est dans les technotes de macromedia. On ne peut simplement pas.

Reply

Marsh Posté le 16-05-2001 à 15:22:50    

'tain c mal foutu qd meme... pfffff bon merci megaBlaireau :)

Reply

Marsh Posté le 16-05-2001 à 15:30:30    

ouais je c ca fait pas mal e kestion, mais dites moi : est-ce-ke on peut voir des anims flash avec netscape si il y a du code dedans(dans le flash) du code genre un peu lourd(random....)?
Pke moi ca marche pas du tout, l'anim se lance ms le bouton sur lekel on appuie pour lancer l'annim marche pas pke il y a du code derrière...  
Je precise ke je travaille sous flash 5.0
Merci d'avance

Reply

Marsh Posté le 16-05-2001 à 17:07:59    

Drôle de question.
N'ayant pas Netscape, je ne puis répondre avec certitude, mais j'ai eu le même problème sur l'IE d'un pote  :D  
En gros plein de trucs déconnaient, fond blanc, appels foireux...
une horreur.
En fait c t simple: ce salô avait des vieux plugs in Flash.
Une fois téléchargés les nouveaux, ça fonctionnait.
A mon avis, ton problème doit venir de là:
 
le plug in Flash de ton Netscape est plus vieux que Flash 5
 
PS: j'ai remarqué il y a longtemps que certains ordres javascript déconnaient complétement sous Netscape, j'ignore si c'est un problème réglé depuis.

 

[edit]--Message édité par Amazan--[/edit]


---------------
7 auteurs pour les écrire, des gens pour les acheter, 7 jeux pour les amener tous autour d'une table pour jouer, dans les pages du Lab où s'étendent 7 jdra.
Reply

Marsh Posté le 16-05-2001 à 17:13:22    

parce que en plus il y a un plug in par navigateur...?
Remarke c'est peut etre normal je connais pas super ce genre de trucs... mais ou est-ce qu'on peut dl le plug in flash5 de netscape?

Reply

Marsh Posté le 16-05-2001 à 17:53:24    

Non, c'est pas des plug-ins, mais des flash-players. pour installer le dernier flash player:
http://www.macromedia.com/software/flashplayer/
 
sinon, ce qui arrive aussi, c'est que certains contrôle active X sous IE sont anciens et prennent le dessus sur le lecteur flash. Dans ce cas il te faut upgrder ton navigateur (ex:ie5 vers ie5.5)

Reply

Marsh Posté le 16-05-2001 à 23:11:42    

En fait ton anim flas est xporté au format swf. C'est le lecteur Flash player qui permet de le lire. (il est installé lors de l'install de ton flash 5) .Mais la version 5 de IE intégrait ce lecteur à travers des contrôles active X . Ceux-ci sont dépassé maintenant por les swf vers 5.

Reply

Marsh Posté le 17-05-2001 à 10:16:36    

merci pour ces infos megablaireau mais pratiquement, si je veux flash sous netscape, comment je fais?

Reply

Marsh Posté le 17-05-2001 à 12:00:46    

Je viens d'installer Netscape car tu m'a mis un doute, mais cela ne change effectivement rien, puisque c'est le lecteur qui visionne flash: Tu le techarge ici:
http://www.macromedia.com/software/flashplayer/
 
tu clique sur telecharger, et tu verras qu'il reconnait ton browser et s'installera dessus.
Malgré cela sous netscape, je visionnes les sites flash avec celui telechargé pour IE.
 
@+

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed