pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 2013
-
29 août 2008 à 19:38
simirore
Messages postés3Date d'inscriptionsamedi 31 décembre 2011StatutMembreDernière intervention31 décembre 2011
-
21 nov. 2010 à 21:01
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
simirore
Messages postés3Date d'inscriptionsamedi 31 décembre 2011StatutMembreDernière intervention31 décembre 2011 21 nov. 2010 à 21:01
J'ai une solution qui marche en remplaçant :
pop.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
par
stage.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
Mais ça ne me plait qu'à moitié, car cette instruction, dans un swf appelé par un prloader, déclenche une erreur #1009 (objet inconnu).
simirore
Messages postés3Date d'inscriptionsamedi 31 décembre 2011StatutMembreDernière intervention31 décembre 2011 21 nov. 2010 à 20:05
Je travaille un peu la dessus en ce moment et il y a un petit problème avec stopDrag() (qu'on retouve ici):
Si on fait bouger l'image avec la souris et qu'on la relâche en dehors de la scène, en fait, rien n'est relâché et on se retrouve avec l'image qui bouge au bout d'une souris "relâchée"...
Quelqu'un a-t-il une astuce pour l'empêcher ?
cs_mouahaha
Messages postés209Date d'inscriptionmercredi 4 août 2004StatutMembreDernière intervention 6 avril 20091 19 sept. 2008 à 11:58
Merci Peg' ^^
Bertrand c'est vrai que tes sources font très "pubs" !
Tu pourrais mettre le script au lieu de tes sites dans la partie "source"...
Si quelqu'un aime bien ce que tu fais il y a déjà un bouton "site perso" pour ça.
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 29 août 2008 à 19:44
pegase31
Messages postés6138Date d'inscriptiondimanche 21 décembre 2003StatutModérateurDernière intervention 4 septembre 201312 29 août 2008 à 19:38
Allez, comme je suis en pleins dedans, je te refais ton code "en propre" :
//import des classes necessaires
import flash.events.MouseEvent;
// fonction de la souris sur le clip pop
pop.mousechildren = false; //évite de modifier la souris avecn les objets contenus dans pop
pop.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown)
//évènements déclenché lors de l'appuis sur la souris
function mouseDown(evt:MouseEvent):void {
evt.currentTarget.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
evt.currentTarget.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoved);
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
evt.currentTarget.startDrag();
}
//évènements déclenché lors du relachement de la souris, après l'appuie
function mouseReleased(evt:MouseEvent):void {
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_UP, mouseReleased);
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoved);
evt.currentTarget.stopDrag();
}
//évènements déclenché une fois le bouton maintenu et mouvement de la souris
function mouseMoved(evt:MouseEvent):void {
evt.updateAfterEvent();
}
// et c'est tout
Là c'est du vrai AS3 et de la vrai POO ..
Peg'
Ps : ça fait carrément PUB tes deux sources, en fait.
21 nov. 2010 à 21:01
pop.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
par
stage.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
Mais ça ne me plait qu'à moitié, car cette instruction, dans un swf appelé par un prloader, déclenche une erreur #1009 (objet inconnu).
21 nov. 2010 à 20:05
Si on fait bouger l'image avec la souris et qu'on la relâche en dehors de la scène, en fait, rien n'est relâché et on se retrouve avec l'image qui bouge au bout d'une souris "relâchée"...
Quelqu'un a-t-il une astuce pour l'empêcher ?
19 sept. 2008 à 11:58
Bertrand c'est vrai que tes sources font très "pubs" !
Tu pourrais mettre le script au lieu de tes sites dans la partie "source"...
Si quelqu'un aime bien ce que tu fais il y a déjà un bouton "site perso" pour ça.
29 août 2008 à 19:44
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
ou alors ajouter ça à la fonction mouseReleased :
evt.currentTarget.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
Les deux sont faisable ...
Peg'
29 août 2008 à 19:38
//import des classes necessaires
import flash.events.MouseEvent;
// fonction de la souris sur le clip pop
pop.mousechildren = false; //évite de modifier la souris avecn les objets contenus dans pop
pop.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown)
//évènements déclenché lors de l'appuis sur la souris
function mouseDown(evt:MouseEvent):void {
evt.currentTarget.addEventListener(MouseEvent.MOUSE_UP, mouseReleased);
evt.currentTarget.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoved);
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
evt.currentTarget.startDrag();
}
//évènements déclenché lors du relachement de la souris, après l'appuie
function mouseReleased(evt:MouseEvent):void {
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_UP, mouseReleased);
evt.currentTarget.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoved);
evt.currentTarget.stopDrag();
}
//évènements déclenché une fois le bouton maintenu et mouvement de la souris
function mouseMoved(evt:MouseEvent):void {
evt.updateAfterEvent();
}
// et c'est tout
Là c'est du vrai AS3 et de la vrai POO ..
Peg'
Ps : ça fait carrément PUB tes deux sources, en fait.