Pb d'affectation de valeur

Brendarth Messages postés 15 Date d'inscription jeudi 16 décembre 2004 Statut Membre Dernière intervention 25 novembre 2005 - 24 juin 2005 à 12:25
Brendarth Messages postés 15 Date d'inscription jeudi 16 décembre 2004 Statut Membre Dernière intervention 25 novembre 2005 - 6 juil. 2005 à 11:08
Bonjour à tous !

Premier message, donc je vais essayé d'être clair concernant mon problème.



J'ai un fichier XML avec des noms rataché à des références.

Ces références me permettent d'appeler les noms dans des boutons "Menu" et "Sous Menu".

Voici ci-dessous l'action lorsque je clic sur mon bouton :

- Tous les boutons du menu disparaissent sauf celui qui a été cliqué (que j'identifie par "if (b==a) { " )

- Je renvoie à ce bouton la valeur _y = 0 (ligne 10 dans mon code)

C'est là que survient mon problème.

- j'essaye ensuite de décaller le sous-menu rataché à mon bouton
restant. Le décalage est égal à ma valeur alpha (les 2 lignes en rouge
dans mon code).

Pour une raison mystérieuse, alpha prend la valeur (b-1), et non pas (b-1)*1.5
(pourtant le "trace" me renvoie la valeur souhaitée)... et encore plus
mystérieusement cela survient seulement lors de mon premier clic. Je
m'explique : si je fais réapparaitre mon menu et que je reclic sur le
même bouton pour le faire disparaitre à nouveau... alors là le
décallage est correct...



Bref je vous laisse regarder le code, le problème est pas évident à expliquer...





a = VarMenu;

for (b=0; b<20; b++) {

_root["Menu"+b]._visible = false;

if (b==a) {

alpha = (b-1)*1.5;

trace (alpha);

_root["Menu"+b]._visible = true;

}



_root["Menu"+b]._y = 0;


for (d=0; d<40; d++) {
_root["SousMenu"+d]._y = _root["SousMenu"+d]._y -
alpha;
}

3 réponses

cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
24 juin 2005 à 17:53
Refais un trace:
a = VarMenu;
for (b=0; b<20; b++) {
_root["Menu"+b]._visible = false;
if (b==a) {
alpha = (b-1)*1.5;
trace (alpha);
_root["Menu"+b]._visible = true;
}

_root["Menu"+b]._y = 0;

for (d=0; d<40; d++) {
trace(alpha);
_root["SousMenu"+d]._y = _root["SousMenu"+d]._y - alpha;
}

ou alors:
a = VarMenu;
for (b=0; b<20; b++) {
_root["Menu"+b]._visible = false;
if (b==a) {
alpha = (b-1);
//Pour vérifier que ça le fait pas 2 fois et quelle devrait être la valeur de alpha ou peut-être qu'il y a un pb d'initialisation de a avec varMenu
trace ("var a=" +a +" var b=" +b +" var alpha=" +alpha);
_root["Menu"+b]._visible = true;
}

_root["Menu"+b]._y = 0;

for (d=0; d<40; d++) {
trace(alpha);
_root["SousMenu"+d]._y = _root["SousMenu"+d]._y - alpha*1.5;
}

Par contre, évite le terme "alpha" car ça pourrait t'induire en erreur quand tu manipuleras la propriété _alpha (la transparence).

@+! Samy
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
24 juin 2005 à 17:53
Refais un trace:
a = VarMenu;
for (b=0; b<20; b++) {
_root["Menu"+b]._visible = false;
if (b==a) {
alpha = (b-1)*1.5;
trace (alpha);
_root["Menu"+b]._visible = true;
}

_root["Menu"+b]._y = 0;

for (d=0; d<40; d++) {
trace(alpha);
_root["SousMenu"+d]._y = _root["SousMenu"+d]._y - alpha;
}

ou alors:
a = VarMenu;
for (b=0; b<20; b++) {
_root["Menu"+b]._visible = false;
if (b==a) {
alpha = (b-1);
//Pour vérifier que ça le fait pas 2 fois et quelle devrait être la valeur de alpha ou peut-être qu'il y a un pb d'initialisation de a avec varMenu
trace ("var a=" +a +" var b=" +b +" var alpha=" +alpha);
_root["Menu"+b]._visible = true;
}

_root["Menu"+b]._y = 0;

for (d=0; d<40; d++) {
trace(alpha);
_root["SousMenu"+d]._y = _root["SousMenu"+d]._y - alpha*1.5;
}

Par contre, évite le terme "alpha" car ça pourrait t'induire en erreur quand tu manipuleras la propriété _alpha (la transparence).

@+! Samy
0
Brendarth Messages postés 15 Date d'inscription jeudi 16 décembre 2004 Statut Membre Dernière intervention 25 novembre 2005
6 juil. 2005 à 11:08
Merci, je vais regarder ça de suite ! (pfff même pas eu le temps de m'en occuper plus tôt j'étais absent ;) )
0
Rejoignez-nous