begin process at 2012 05 26 17:09:02
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Divers

 > 

Débutant(e)

 > 

changer une variable en fonction d'un clic sur un bouton


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

changer une variable en fonction d'un clic sur un bouton

mercredi 9 décembre 2009 à 16:54:15 | changer une variable en fonction d'un clic sur un bouton

madness_cxp

Bonjour à tous.

J'ai une question de vrai débutant, et j'ai beau chercher, je trouve pas ce que je fais de travers. :-(
Je vous explique, c'est assez simple en fait :
J'ai 5 fichier xml, correspondant à 5 langues.
J'ai 5 drapeaux posé sur ma scène.
Je voudrais qu'une variable prenne la valeur que je souhaite, afin de charger le bon fichier de langue au clic du bouton.
Seulement voilà, je coince. J'ai fait tout mon code, mais la variable ne change pas. Elle reste figée, et je me demande si il faut que je passe par une boucle ou autre, ou si un écouteur d'évènement est nécessaire...
J'ai beau chercher dans mes bouquins, sur le net, je pige pas où je me trompe, et ça me gonfle

Merci d'avance à ceux qui voudront bien se pencher sur mon cas :-)

Détail : code en AS2 :-)

Voici mon code :
Code ActionScript :
var choixLangue:String = "UK.xml";
//déclaration de la variable contenant le nom du xml à charger, UK par défaut
this.DE_flag_bt.onRelease = function() 
{
	choixLangue = "DE.xml";
	}
this.UK_flag_bt.onRelease = function() 
{
	choixLangue = "UK.xml";
	}
this.FR_flag_bt.onRelease = function() 
{
	choixLangue = "FR.xml";
	}
this.SP_flag_bt.onRelease = function() 
{
	choixLlangue = "SP.xml";
	}
this.IT_flag_bt.onRelease = function() 
{
	choixLangue = "IT.xml";
	}
trace(choixLangue);
mercredi 9 décembre 2009 à 18:55:59 | Re : changer une variable en fonction d'un clic sur un bouton

nickydaquick

Membre Club

Salut,

mets des trace dans chaque fonctions onRelease(),
si tu ne vois pas le changement utilise le mot cle _global.


Bonne continuation.

http://liveplayaz.com
je suis heureux de faire partie d'une grande famille ...!
jeudi 10 décembre 2009 à 14:03:16 | Re : changer une variable en fonction d'un clic sur un bouton

madness_cxp

Bonjour,

Merci de prendre le temps de m'aider, c'est super sympa :-)

Alors, effectivement, ça fonctionne quand je met le trace dans la fonction. Par contre, quand je place le trace en dehors de cette fonction, je n'arrive toujours pas à avoir ma valeur de variable qui change...

Si j'utilise la fonction comme déclarée en variable globale, le résultat est le même : j'arrive à faire le trace dans la fonction, mais jamais en dehors ???

Merci d'avance pour l'aide :-)
jeudi 17 décembre 2009 à 13:25:44 | Re : changer une variable en fonction d'un clic sur un bouton

shuaibch

Salut Madness

Je cherche à réaliser un peu la même chose, charger différentes variables (faisant references à différent xml).

Et je voulais savoir si tu avais trouver la solution?

Amicalement
jeudi 17 décembre 2009 à 13:29:20 | Re : changer une variable en fonction d'un clic sur un bouton

madness_cxp

ouais, j'ai trouvé la solution :-)

tu veux faire quoi exactement ? charger différents xml dans les mêmes variables ou charger différents xml dans des variables différentes ?
jeudi 17 décembre 2009 à 13:39:29 | Re : changer une variable en fonction d'un clic sur un bouton

shuaibch

Je voudrais charger différents xml dans une variable, à chaque clic sur différents boutons.

En fait je cherche à realiser des soutitres en différentes langues pour une vidéo.
Et un peu comme toi je voudrai pouvoir charger différent xml lors de clic sur des boutons(bouton french, bouton english...) dans une fonction qui affichent les soustitres.

Est ce que toi aussi tu cherche à réaliser des soustitres?

Cordialement

jeudi 17 décembre 2009 à 13:48:31 | Re : changer une variable en fonction d'un clic sur un bouton

madness_cxp

nan, pas des sous-titres, mais c'est exactement ce que j'ai fait au niveau du principe :-)

Voilà comment j'ai fait le truc :
Des fichiers xml, avec exactement la même structure.
Des boutons, posés sur ma frame 1, dans un calque séparé.
Chacun de ces boutons possède un nom (dans les propriétés)

Le code correspondant aux boutons :
Code ActionScript :
var choixLangue:String = "UK.xml";//variable contenant le nom du xml à charger, anglais par défaut

//choix du xml à charger en fonction du drapeau cliqué
ChargerFichierXML ("UK.xml");   //charge l'anglais par défaut
// on appelle la fonction de chargement du fichier XML qui correspond à la langue sélectionnée
this.DE_flag_bt.onRelease = function() {ChargerFichierXML ("DE.xml");}
this.UK_flag_bt.onRelease = function() {ChargerFichierXML ("UK.xml");}
this.FR_flag_bt.onRelease = function() {ChargerFichierXML ("FR.xml");}
this.SP_flag_bt.onRelease = function() {ChargerFichierXML ("SP.xml");}
this.IT_flag_bt.onRelease = function() {ChargerFichierXML ("IT.xml");}


et le code correspondant au chargement de mon xml :
Code ActionScript :
function ChargerFichierXML (choixLangue) {
	fichier_xml = new XML();  // création d'un nouveau tableau de chargement XML
	fichier_xml.ignoreWhite = true; // on ignore les espaces dans le fichier XML
	fichier_xml.load(choixLangue); // on charge le fichier XML correspondant à la langue
	fichier_xml.onLoad = function(Reussite) { // si le chargement est une réussite
		if (Reussite) {
			x = fichier_xml.firstChild; //on rentre dans le fichier XML, au premier niveau
			// remplissage des boutons du menu principal
			for (i=0 ; i<5 ; i++) {
				tab_menu_principal[i] = x.childNodes[0].childNodes[i].attributes.text;
				//trace (tab_menu_principal[i]);
				}
		}
	}
}

Attention, j'ai chargé mon xml dans un tableau 1D dans mon exemple.
Mais sinon, tu peut tout à fait charger ton xml dans des variables séparées, en splitant tous tes noeuds de xml, et en les balançant dans tes variables :-)

ça te va la réponse ? :-)
jeudi 17 décembre 2009 à 15:40:14 | Re : changer une variable en fonction d'un clic sur un bouton

shuaibch

merci pour ta réponse

En fait mon code est en AS3, j'ai essayé d'intégrer ta réponse mais celà ne marche pas chez moi.
(seul le xml chargé par defaut apparait et qd je click ça ne charge pas l'autre xml)

Je me permet de mettre le code sur lequel je travail, au cas ou tu arrive à voir où ça coince :)
Ps: juste par curiosité est ce que le projet sur lequel tu travail est en ligne?

Code ActionScript :
import fl.video.*;
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.text.*;
import flash.xml.*;

this.mon_xml = new XML();

var xml_root:String = "elements/xml/english.xml"; //par défaut chargement en anglais


// bouton pour mettre en français
B77_btn.addEventListener(MouseEvent.CLICK,rCLICK2);
function rCLICK2(pEvt:Event):void
{
   var xml_root= "elements/xml/french.xml" ;
   
}


var request:URLRequest = new URLRequest(xml_root);
var loader:URLLoader = new URLLoader();


//chargement de la video en flv
this.mon_flv.load("elements/videos/BK-DAA.flv"); 

loader.addEventListener(Event.COMPLETE, SubTitlesLoaded, false, 0, true);
loader.load(request);


function SubTitlesLoaded(e:Event):void
{
           var szXML:String = URLLoader(e.target).data;
           this.mon_xml = new XML(szXML);
		   Launch();
		   
}
function showSubtitle(evt:fl.video.MetadataEvent):void
{
	//on récupère l'objet CuePoint
	var current:Object = this.mon_flv.findNearestCuePoint(Math.floor(this.mon_flv.playheadTime));
	//on assigne la valeur à notre textField
	if(current.parameters != null)
	this.txt_sous_titres.text = current.parameters.texte;
	
	currentBtn.select();
}
function Launch():void
{
	//on récupère un XMLList de CuePoint
	var list:XMLList = XMLList(this.mon_xml.cuepoints.cuepoint);
	//et on boucle : attention, length de XMLList est une méthode !
	
	for (var i:Number = 0; i < list.length(); i++)
	{
		//on récupère chacune des propriétés du XML grâce au Mappage de l'objet
		 var _time:Number = Number(list[i].@time);
		 var _nom:String = list[i].@name;
		 var _texte:String = list[i].toString();
		 //on assigne un nouveau CuePoint à notre FLV
		 this.mon_flv.addASCuePoint(_time, _nom, { texte:_texte } );
	}	

	this.mon_flv.addEventListener(fl.video.MetadataEvent.CUE_POINT, showSubtitle,false,0,true);
	this.mon_flv.play();
}
jeudi 17 décembre 2009 à 15:45:52 | Re : changer une variable en fonction d'un clic sur un bouton

madness_cxp

désolé, je connais pas du tout l'AS3 :-(
jeudi 17 décembre 2009 à 15:52:09 | Re : changer une variable en fonction d'un clic sur un bouton

shuaibch

merci quand même :)

En esperant qu'une âme (de developpeur en AS3) charitable me vienne en aide :)

Bonne coninuation...


Cette discussion est classée dans : code, variable, xml, flag, choixlangue


Répondre à ce message

Sujets en rapport avec ce message

GetUrl avec fichier XML [ par fenryo ] Bonjour, J'aimerais savoir comment garder une URL dans une variable et charger la page HTML dans le navigateur avec cette variable. Parce que quand je problème lien image [ par gusdark ] salut a tous ! voilà j'ai ce code là : [code=as]// Chargement XML et initialisation photos_xml = new XML(); photos_xml.ignoreWhite = true; photos_xml Petit problème de NaN. [ par Linkolas ] Salut, Je me suis lancé dans Flash qui calcule les pertes/blessés lors d'une bataille il y a peu et je viens de le finir. Il ne me reste plus qu'à rel Socket xml flash/PHP [ par benoit5699 ] Bonjour, J'essaie en ce moment de faire échanger mon swf avec un serveur via une socket xml. Pour l'envoie vers le serveur ça marche nickel. Ensuite probleme de variable i et de concaténation de deux variables [ par bakman ] bonjour à tous j'ai deux petits souci j'ai créé plusieur champs de texte dynamique qui ont pour nom (Var) ligne0,ligne1,...,lignen ces champs de text XML undefined [ par carton99 ] Bonjour, je sais c'est la question récurente ,vu le nombre de pages qui en parle ,et je suis nul car je n'arrive pa sa faire ce que je veux. myXML Conversion AS2 en AS3 (débutante) [ par niifaa ] Bonjour, Je vous écris parce que j'ai trouvé un tutoriel parfait pour ce que j'ai envie de faire pour un devoir super important. Le problème est qu Lien [ par figueline ] Bonsoir à tous ! À partir d'un fichier xml, je souhaiterais faire un lien vers un autre fichier qui se trouve dans le même répertoire. J'ai lancé un Hypelien dans flash via xml [ par fane30 ] Bonjour, Je vous explique mon problème : Je travaille sur un carousel en flash qui lorsqu'on clique sur une image, va afficher l'image en plus grand Comment faire quand une variable n'est pas string mais c'est du code AS3? [ par davidcian ] tous est dans le titre pour exemple voila: [code=as]function echo_5(str1:String,str2:String):Void { str1 vtxt += "\n\nExecution de la fonction echo


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,154 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales