Bonjour, et je tiens à vous remercier de soutient que vous portez à mon travaille. Et voici donc le soucis
Je souhaiterais déplacer un MC à l'aide de la souris. Mais le MC ne se déplacera que sur l'axe Y. Ses coordonées axe X ne doivent pas changer.
J'utilise AS 2.0 - FLASH C3
J'utilise ce code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| // ce code crée une interaction à une action de glisser-déposer à l'aide d'une fonction de suivi de souris
// (deuxième technique)
// circle est un objet d'affichage (par ex. une instance de MovieClip ou de Sprite).
import flash.events.MouseEvent;
var offsetX:Number;
var offsetY:Number;
// cette fonction est appelée lors de l'appui sur le bouton de la souris.
function startDragging(event:MouseEvent):void
{
// enregistrer la différence (décalage) entre le point où était
// le curseur lors de l'appui sur le bouton et les coordonnées x,y
// du cercle lors de cet appui.
offsetX = event.stageX - circle.x;
offsetY = event.stageY - circle.y;
// ordonner à Flash Player d'écouter l'événement mouseMove
stage.addEventListener(MouseEvent.MOUSE_MOVE, dragCircle);
}
// cette fonction est appelée lors du relâchement du bouton de la souris.
function stopDragging(event:MouseEvent):void
{
// ordonner à Flash Player de cesser d'écouter l'événement mouseMove
stage.removeEventListener(MouseEvent.MOUSE_MOVE, dragCircle);
}
// cette fonction est appelée à chaque mouvement de souris,
// tant que le bouton gauche reste appuyé.
function dragCircle(event:MouseEvent):void
{
// déplacement du cercle à l'emplacement du curseur, en préservant
// le décalage entre l'emplacement du curseur et
// l'emplacement de l'objet déplacé.
circle.x = event.stageX - offsetX;
circle.y = event.stageY - offsetY;
// ordonner à Flash Player d'exécuter un rafraîchissement d'écran après cet événement.
event.updateAfterEvent();
}
circle.addEventListener(MouseEvent.MOUSE_DOWN, startDragging);
circle.addEventListener(MouseEvent.MOUSE_UP, stopDragging); |
Celui ci ne fonctionne pas
Impossible de charger la classe ou l'interface 'flash.events.MouseEvent'.
Encore merci à vous.
Partager