ActionScript 3.0, l'essentiel sous la main Adobe Flash Accueil
Fiches
Boutique
Contact
Gérer la molette de la souris
Nous allons voir comment utiliser la molette de la souris sur la scène afin de gérer un défilement vertical.

ATTENTION : Ici, nous allons utiliser le package TweenLite, donc allez voir tout d'abord la partie 'Animation dynamique' pour savoir de quoi je parle.

//Imports Flash
Import Flash.events.MouseEvent;

//Imports TweenLite (by Greensock)
import com.greensock.*;
import com.greensock.easing.*;

var posY = 0; //On définit la position de départ sur l'axe Y pour la molette
var espace = 75; //Taille (en pixel) du défilement verticale de la scène à chaque utilisation de la molette
var posY_START = 200; //On définit la position initiale sur l'axe Y pour mon objet concerné par le déplacement vertical avec la molette.

function mouv(e:MouseEvent):void
{
if(e.delta > 0) //Si la valeur de 'delta' est positive, c'est que la molette roule vers le haut.
{
posY++; //On ajoute +1 à la position sur l'axe Y (+1 cran vers le haut)

//Animation sur les objets concernés par la molette de la souris
TweenLite.to(monClip, 1, {
y:posY_START + (posY * espace),
ease:Expo.easeOut
});
}
else //Sinon, la valeur de 'delta' est négative, et c'est que la molette roule vers le bas
{
posY--; //On ajoute -1 à la position sur l'axe Y (+1 cran vers le bas)

//Animation sur les objets concernés par la molette de la souris
TweenLite.to(monClip, 1, {
y:posY_START + (posY * espace),
ease:Expo.easeOut
});
}
}
stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouv); //On ajoute l'évènement sur la scène toute entière.

Dans cet exemple, j'utilise de défilement vertical pour faire bouger l'objet monClip. A chaque fois que je vais faire rouler la molette d'un cran, monClip se déplacera de 75 pixels vers le haut ou vers le bas.

Explications du calcul :

y:posY_START + (posY * espace),

Pour calculer la valeur de déplacement, je prend la valeur de départ de mon objet monClip (posY_START) à laquelle j'ajoute +/- (posY) 75 pixels (espace).

L'utilisation du package TweeLite permet d'avoir une animation de déplacement vertical plus fluide et agréable à l'œil. Mais c'est un choix personnel, vous pouvez utilisez la class Tween de Flash directement, ou créer le déplacement vous-même en agissant sur les propriétés de vos objets concernés par la molette de la souris.
Commentaire(s)
Aucun.