Arrêt SCROLL sur boutons AS2
Fermé
Flop
-
14 sept. 2009 à 16:09
zoubiock Messages postés 57 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 2 mars 2010 - 15 sept. 2009 à 17:25
zoubiock Messages postés 57 Date d'inscription mardi 12 mai 2009 Statut Membre Dernière intervention 2 mars 2010 - 15 sept. 2009 à 17:25
A voir également:
- Arrêt SCROLL sur boutons AS2
- Manette ps4 vibre sans arrêt ✓ - Forum PS4
- Scroll lock ✓ - Forum MacOS
- Comment supprimer les pubs qui apparaissent sans arrêt - Guide
- Freebox tv se coupe sans arrêt 2023 - Forum Réseaux sociaux
- Arret en cours infini ✓ - Forum Windows 8 / 8.1
4 réponses
zoubiock
Messages postés
57
Date d'inscription
mardi 12 mai 2009
Statut
Membre
Dernière intervention
2 mars 2010
10
14 sept. 2009 à 17:09
14 sept. 2009 à 17:09
Salut, une fois déclaré, le onEnterFrame s'execute en permanence, il faut donc bien que tu le désaloues:
if(bt_14._y ==300){
bt_bas.onEnterFrame = function () {}
};
Et puis attention, tu avais mis bt_14._y=300 et pas bt_14._y ==300
Voilà, j'espère que ça va te débloquer !
if(bt_14._y ==300){
bt_bas.onEnterFrame = function () {}
};
Et puis attention, tu avais mis bt_14._y=300 et pas bt_14._y ==300
Voilà, j'espère que ça va te débloquer !
Bonjour zoubiock,
merci de m'avoir répondu.
Hélas, ça ne fonctionne pas... j'ai peur que le fait que j'ai mis :
bt_haut.onRollOver = function () {
this.onEnterFrame = function () {
/*1*/bt_1._y ++;
bt_1._y ++;
/*2*/bt_2._y ++;
bt_2._y ++;
/*3*/bt_3._y ++;
bt_3._y ++;
/*4*/bt_4._y ++;
bt_4._y ++;
};
};
Flash ne prend plus en compte la valeur y.
Par exemple, j'ai fais, comme suggéré ci-dessus, if(bt_1._y == 50){
bt_haut.onEnterFrame = false;
};
Mais, pareil. Les clips continuent de monter.
Aurais-tu une autre proposition?
Sinon, ce que je peux aussi faire, c'est déclarer que lorsque le clip bt_1 arrive dans un masque, celui-ci se stoppe, est-ce possible? (j'ai regardé les différentes propriétés comportant un masque mais rien ne correspond.)
Et, là,... c'est le drame!
Merci d'avance.
Cdlt,
Florent.
merci de m'avoir répondu.
Hélas, ça ne fonctionne pas... j'ai peur que le fait que j'ai mis :
bt_haut.onRollOver = function () {
this.onEnterFrame = function () {
/*1*/bt_1._y ++;
bt_1._y ++;
/*2*/bt_2._y ++;
bt_2._y ++;
/*3*/bt_3._y ++;
bt_3._y ++;
/*4*/bt_4._y ++;
bt_4._y ++;
};
};
Flash ne prend plus en compte la valeur y.
Par exemple, j'ai fais, comme suggéré ci-dessus, if(bt_1._y == 50){
bt_haut.onEnterFrame = false;
};
Mais, pareil. Les clips continuent de monter.
Aurais-tu une autre proposition?
Sinon, ce que je peux aussi faire, c'est déclarer que lorsque le clip bt_1 arrive dans un masque, celui-ci se stoppe, est-ce possible? (j'ai regardé les différentes propriétés comportant un masque mais rien ne correspond.)
Et, là,... c'est le drame!
Merci d'avance.
Cdlt,
Florent.
zoubiock
Messages postés
57
Date d'inscription
mardi 12 mai 2009
Statut
Membre
Dernière intervention
2 mars 2010
10
15 sept. 2009 à 10:44
15 sept. 2009 à 10:44
Salut,
Tu définies la fonction onEnterFrame sur le movieClip "this" dans ta fonction bt_haut.onRollOver. Il faut savoir quel est le movieClip en question, rejoute donc la ligne:
trace(this);
juste avant de déclarer onEnterFrame.
Ensuite, si ce trace ressort bien _level0.btn_haut, tu désaloues la fonction on EnterFrame comme cela:
btn_haut.onEnterFrame = null;
A condition bien sur que btn_haut soit accessible, fais donc un trace(btn_haut) avant la ligne ci dessus et renvois moi les sorties de ces traces, stp !
Cdt,
Tu définies la fonction onEnterFrame sur le movieClip "this" dans ta fonction bt_haut.onRollOver. Il faut savoir quel est le movieClip en question, rejoute donc la ligne:
trace(this);
juste avant de déclarer onEnterFrame.
Ensuite, si ce trace ressort bien _level0.btn_haut, tu désaloues la fonction on EnterFrame comme cela:
btn_haut.onEnterFrame = null;
A condition bien sur que btn_haut soit accessible, fais donc un trace(btn_haut) avant la ligne ci dessus et renvois moi les sorties de ces traces, stp !
Cdt,
t'Chious,
alors, j'ai suivi à la lettre tes instructions.
Les deux sorties des deux traces me disent la même chose:
_level0.btn_haut
_level0.btn_haut
Ce qui fonctionne, c'est lorsque j'écris (alors je ne sais pas si c'est bon) :
if(bt_1._y == 50){
trace(bt_haut);
bt_haut.onEnterFrame = null;
};
Oui, effectivement, il s'arrête lorsque bt_1 vient à 50 px mais lorsque l'on revient dessus, il continue.
Est-ce normal, sachant qu'on lui a déclaré qu'à 50 il se stoppe?
Merci de tes réponses,
Cordialement.
alors, j'ai suivi à la lettre tes instructions.
Les deux sorties des deux traces me disent la même chose:
_level0.btn_haut
_level0.btn_haut
Ce qui fonctionne, c'est lorsque j'écris (alors je ne sais pas si c'est bon) :
if(bt_1._y == 50){
trace(bt_haut);
bt_haut.onEnterFrame = null;
};
Oui, effectivement, il s'arrête lorsque bt_1 vient à 50 px mais lorsque l'on revient dessus, il continue.
Est-ce normal, sachant qu'on lui a déclaré qu'à 50 il se stoppe?
Merci de tes réponses,
Cordialement.
zoubiock
Messages postés
57
Date d'inscription
mardi 12 mai 2009
Statut
Membre
Dernière intervention
2 mars 2010
10
15 sept. 2009 à 17:25
15 sept. 2009 à 17:25
Salut, et Oui bien sur !
Quand tu reviens (onOver) ton bouton, Flash réinstantie btn_haut.onEnterFrame avec la fonction qui te fait bt_1._y ++;
Donc à la frame suivante, bt_1._y vaut 51 ! Et là, ils se remet à scroller sans fin !
C'est un petit problème d'algo !
Tu peux peut-être uriliser un objet scrollPane plutôt, non ? ou mettre la condition (y >= 50) directement dans ta fonction onEnterFrame !
Quand tu reviens (onOver) ton bouton, Flash réinstantie btn_haut.onEnterFrame avec la fonction qui te fait bt_1._y ++;
Donc à la frame suivante, bt_1._y vaut 51 ! Et là, ils se remet à scroller sans fin !
C'est un petit problème d'algo !
Tu peux peut-être uriliser un objet scrollPane plutôt, non ? ou mettre la condition (y >= 50) directement dans ta fonction onEnterFrame !