Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash
Flash Forum d'entraide sur la technologie Flash (Cours, FAQs, Sources)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/07/2007, 13h23   #1
Invité de passage
 
Inscription : juin 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 4
Points : 1
Points : 1
Par défaut externalinterface et retour de JS

Bonjour

j'ai commencé à tester la classe External Interface de Flash. Pour ça j'ai créé un petit code.. Flash appelle effectivement javascript. Mais Flash n'arrive pas à récupérer la valeur de retour de jascript. J'ai pensé que c'était mon code, donc j'ai copié/collé celui de l'exemple de Flash mais pareil...
Bref... Comment faire pour récupérer une variable ?

Pour info, le code que j'ai écris :
Code :
1
2
3
4
5
6
7
import flash.external.*;
 
btn.onPress = function() {
	 greeting = String(ExternalInterface.call("valeurs"));
		 truc.text=greeting;
		 getURL('notepad_t_wi2.html?'+greeting,'_blank',"GET");
}
dans la timeline. et truc.text renvoie nul.

pour le javasccript :
Code :
1
2
3
4
5
6
function valeurs(){
		var retour = /**plusieurs fonctions qui ne posent pas soucis*/;
 
		alert(retour);
		return retour;
}
alert(retour) donne le bon résultat, celui que je veux.

Donc le soucis se situe à la réception de la variable par Flash
quelqu'un a une idée ? Merci
La_xota est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2007, 20h54   #2
Inactif
 
Avatar de CR_Gio
 
Inscription : septembre 2005
Messages : 1 196
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 1 196
Points : 1 201
Points : 1 201
bonsoir a tous,

greeting n'a pas été déclaré ....
Le ciblage truc.text dans ton bouton n'est pas correcte ...
Sur quoi t'appuis tu pour savoir que la fonction javascript ne transmet pas ou mal la valeur a flash ?


Si ca peut t'aider a trouver ton erreur :
Code AS :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import flash.external.*; // use to ExternalInterface
 
// Conscrution d'un champ de texte
this.createTextField("label", this.getNextHighestDepth(), 0, 0, 150, 20);
this.label.border=true;
label.text = "Hello World";
 
// Construction d'un bouton
this.createEmptyMovieClip("my_btn", this.getNextHighestDepth());
this.my_btn.beginFill(0xFF0000);
this.my_btn.moveTo(0, 0);
this.my_btn.lineTo(50, 0);
this.my_btn.lineTo(50, 21);
this.my_btn.lineTo(0, 21);
this.my_btn.lineTo(0, 0);
this.my_btn.endFill();
this.my_btn._x=151;
this.my_btn._y=0;
 
my_btn.onRelease=function()
{
	var my_str:String;
	my_str=String(ExternalInterface.call("my_function", "It works"));
	this._parent.label.text=my_str;
}
Code HTML :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
<body>
 
  <script type="text/javascript">
    function my_function(param)
    {
      return param;
    }
  </script>
 
  <object>
    <param name="allowScriptAccess" value="always">
    <embed src="test1.swf" allowScriptAccess="always"></embed>
  </object>
 
</body>
</html>
CR_Gio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2007, 15h49   #3
Invité de passage
 
Inscription : septembre 2007
Messages : 1
Détails du profil
Informations forums :
Inscription : septembre 2007
Messages : 1
Points : 1
Points : 1
Bonjour,

Je me suis retrouvé face au même problème, et j'ai donc essayé de m'inspirer du code que CR_Gio nous a fournit.
Malheureusement cela ne fonctionne pas sous IE (meme le code que CR_Gio donne).

Mon code étant quasi similaire à celui de CR_Gio, si vous avez des idées pour faire fonctionner l'exemple ca serait cool, apres je m'en inspirerai.

Merci d'avance
The_Zed est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h51.


 
 
 
 
Partenaires

Hébergement Web