astrolabbcracker
Messages postés106Date d'inscriptionmardi 11 janvier 2005StatutMembreDernière intervention11 juin 2012
-
28 mars 2006 à 19:43
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 2013
-
25 juin 2009 à 20:30
Bonjour et merci de lire ce message.
Comment arréter un écouteur ? je voudrais arréter cette fonction quand je n'en ai pas besoin :
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 29 mars 2006 à 08:57
il faut être un minimum curieux et fouiller dans l'aide de Flash avant de poser la question !
Tu as été voir à "addListener" ? Tu y aurais vu en bas de page une fonction trés sympa qui s'apelle "removeListener".
Je te décris ces effets ou rien que le nom est parlant pour toi ?
Il n'y a rien de pire que d'utiliser bêtement des fonctions sans savoir ce qui les entoure.
cs_shazamm
Messages postés3Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention25 juin 2009 25 juin 2009 à 00:25
Heu... D'abord merci pour vos éclairages!
Ben moi, j'ai fait le tour des add et remove, des new object et des delete, des null etc...
Et je ne comprends toujours pas un truc qui fait, du coup, planter mon animation... J'explique:
J'ai une animation "principale" qui sert d'interface générale (avec des boutons menus etc...) et au centre de cette animation, un clip vide pour y générer (loder) des animations en fonction de leur chemin. En gros, les boutons de l'animation principale sont codés ainsi:
on (release)
{loadMovie("histoire/histoire.swf",rub);}
Dans cet exemple, mon animation "histoire.swf" est chargée dans "rub" (le clip vide...)
Jusque là, tout va bien...
Seulement voilà. DANS histoire .swf, j'ai codé ceci sur la première image du scénario:
texte.mouseWheelEnabled = false;
souris = new Object();
souris.onMouseWheel = function(valeur) {
texte._y += valeur;
if (valeur > 0) {texte._y += valeur+10;}
if (valeur < 0) {texte._y += valeur-10;}
if (texte._y > 5){texte._y = 5;}
if (texte._y < -770){texte._y = -770;}
}
Mouse.addListener(souris);
Notez que j'ai un clip nommé "texte" qui est une grande zone de texte converti en clip. Avec ce code, lorsque j'actionne la roulette de la souris, le texte défile et s'arrête dans ses limites, vers le haut comme vers le bas... Content je suis :-)
Mais voilà!
Lorsque je load une autre SWF grace à un bouton de ma première animation, (par exemple)
on (release)
{loadMovie("geographie/geographie.swf",rub);}
Il me load cette nouvelle SWF à la place de historie .swf... Tout va toujours pour le mieux... Toujorus content...
BOUM!
Lorsque je REload la première (histoire) le scroll ne décale plus le texte de la valeur 1, mais double. Il y a cumul du scroll de la molette souris!
J'ai bien tenté de poser un Mouse.removeListener, ou delete object etc... Je ne m'en sors pas!!! Je suis sur que c'ets tout simple! Mais j'ai tout tenté (sans doute pas ce qu'il faut) et je me retrouve toujours avec ce décallage. Obligé de relancer TOUTE l'anim pour que le "compteur (ou listener, ou object ecouteur ou que sais-je) soit mis à zéro!
HEEEELP!!!
PS: désolé, c'ets un peu long, mais c'était pour bien expliquer le truc hein ;-)
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 25 juin 2009 à 20:30
il est expliqué dans le règlement du forum qu'on ne pose qu'une question par sujet. Le mieux pour toi est d'en recréer un spécialement pour ta question.