LoadVars pour modifier une couleur...

nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005 - 7 déc. 2004 à 10:53
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006 - 8 déc. 2004 à 10:06
loadVars pour modifier une couleur...
est-ce possible ?

Sur ce merveilleux forum j'ai appris (om m'a appris, en fait !) à charger des données textes d'un fichier externe pour nourrir des zones de texte dans une appli flash.

Aujourd'hui je souhaite aller plus loin et voir s'il est possible d'appeler une variable (vu que ça s'appelle loadVars je me suis dit...) dans un champ texte et de changer un paramètre dans une fonction...

En l'occurence la couleur d'un clip instancié sur ma scène. Moi j'ai pensé à ça....

myColor = new Color(bandeau);
myColor.setRGB(colour);

texte=new LoadVars();
texte.load("couleur.txt");
texte.onLoad = function (success){
if (success){
colour=true;
colour=this.couleur;
trace(colour);
}
}
Du coup le « trace » fonctionne et récupère la variable « colour » mais mon clip reste noir. Quelqu'un peut m?aider ?
Merci d'avance.

Nicosse

12 réponses

John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
7 déc. 2004 à 11:25
Je comprends apas le colour=true; je vois pas a quoi ca sert mais le pb ne doit pas venir de la.

Par contre il faut que tu changes ta couleur apres l'avoir chargée !
Il faut que tu mette ce petit bout de code :

myColor = new Color(bandeau);
myColor.setRGB(colour);


après le reste. Sinon c normal qu'il ne change pas parce que colour est undefined.
0
nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005
7 déc. 2004 à 11:50
myColor = new Color(bandeau);
myColor.setRGB(colour);

texte=new LoadVars();
texte.load("couleur.txt");
texte.onLoad = function (success){
if (success){
colour=this.couleur;
myColor = new Color(bandeau);
myColor.setRGB(colour);
trace(colour);
}
}

j'ai fait un essai avec ça mais la couleur reste noire alors que le trace récupère la valeur. Pourtant logiquement on devrait avoir dans mon code :

myColor.setRGB("0x000099");

Arf...

Nicosse
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
7 déc. 2004 à 12:00
Essaie de le remplacer dans ton code, pour voir :

texte=new LoadVars();
texte.load("couleur.txt");
texte.onLoad = function (success){
if (success){
colour=this.couleur;
myColor = new Color(bandeau);
myColor.setRGB("0x000099");   //ligne changée
trace(colour);
}
}


et dis moi si ca marche. Je pense que c un autre pb
0
nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005
7 déc. 2004 à 12:11
Tout à fait, le clip instancié "bandeau" prend la valeur indiquée.

D'après moi, le problème vient du fait que le setRGB comprend la valeur "color" comme un élément de texte et pas une valeur de couleur, du coup il n'a pas d'info.

Reste à savoir comment faire comprendre à Flash que quand on importe la valeur il doit la considérer comme une valeur RVB et l'appliquer au clip...

J'ai essayé la chose suivante : myColor.setRGB("colour");
mais les guillemets n'y changent rien...

merci de ton aide

Nicosse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
individis-bis Messages postés 293 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 25 septembre 2008
7 déc. 2004 à 13:15
this[couleur]

Si couleur est la variable chargée...

Patrice Gobert
Ingénieur Electronique
Formateur Informatique
0
individis-bis Messages postés 293 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 25 septembre 2008
7 déc. 2004 à 13:16
pardon.

this["couleur"]

Patrice Gobert
Ingénieur Electronique
Formateur Informatique
0
nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005
7 déc. 2004 à 14:45
Merci à vous deux, JohnDoe et Individi-bis !! le code suivant fonctionne :

texte=new LoadVars();
texte.load("couleur.txt");
texte.onLoad = function (success){
if (success){
colour=this["couleur"];
myColor = new Color(bandeau);
myColor.setRGB(colour);
}
}

Bravo vous êtes des pros !! cette possibilité ouvre des perspectives en ce qui concerne la mise à jour des applis flash !

Nicosse
0
nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005
7 déc. 2004 à 16:49
par contre petite précision : dans le fichier txt qui va contenir la variable, il faut seulement placer cette variable et aucune autre dans ce champ car le moindre espace en trop provoque un bug. J'ignore ce qu'il faut faire pour pouvoir ajouter d'autres variables...

Nicosse
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
7 déc. 2004 à 17:16
En effet le format du fichier est tres rigide, mais tu peux mettre plusieurs variables. Format du fichier :
var1=blabla&var2=blabla&var3=...
0
nicosse Messages postés 24 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 29 décembre 2005
7 déc. 2004 à 17:23
bonjour l'ergonomie !! on peut même pas sauter une ligne d'après ce que je vois... n'est-il pas possible de mettre un signe pour que flash comprenne que la variable est finie ? genre un / ou un <> ou je sais pas quoi....

Nicosse
0
individis-bis Messages postés 293 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 25 septembre 2008
7 déc. 2004 à 18:57
Tu peux écrire comme ca aussi...
var1=blabla
&var2=blabla
&var3=...

Normalement...
Mais ya longtemps que j'utilise plus les fichiers txt,
suis plus sur de rien ... lol...

Patrice Gobert
Ingénieur Electronique
Formateur Informatique
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
8 déc. 2004 à 10:06
oui tu peux mettre n'importe quel caractere a condition qu'il soit dans la valeur d'une variable. Dans l'exemple de individis-bis, var1="blabla\n". La variable se termine toujours au & suivant.
0
Rejoignez-nous