ActionScript 3.0, l'essentiel sous la main Adobe Flash Accueil
Fiches
Boutique
Contact
Créer un slider/scrollbar
Nous allons voir ici comment créer un slider personnalisé. Cette méthode peut également de créer des scrollbars, c'est le même principe.

On commence par configurer la zone de déplacement du curseur :

//Imports Flash
import flash.geom.Rectangle;

//Définition de la zone de scrolling
var depPosX = 75; //Point de départ sur X
var depPosY = 200; //Point de départ sur Y
var largeur = 400; //Largeur
var hauteur = 0; //Hauteur

//Création de la zone de scrolling
var zoneScroll:Rectangle = new Rectangle(depPosX,depPosY,largeur,hauteur);

Ensuite, on attribut les évènements au curseur pour son déplacement en drag&drop :

//Imports Flash
import flash.events.MouseEvent;

//Déplacement du curseur
function mouseDOWN(e:MouseEvent):void
{
curseur.startDrag(false,zoneScroll); //Début du scrolling
}
function mouseUP(e:MouseEvent):void
{
curseur.stopDrag(); //Fin du scrolling
}
curseur.addEventListener(MouseEvent.MOUSE_DOWN, mouseDOWN); //Bouton pressé sur le curseur
curseur.addEventListener(MouseEvent.MOUSE_UP, mouseUP); //Bouton relaché sur le curseur
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUP); //Bouton relaché sur la scène

Enfin, on calcul les données renvoyé par le slider :

//Calcul des données
var valMAX = 320; //Valeur maximum du curseur
var valMIN = 240; //Valeur minimum du curseur
function mouseMOVE(e:MouseEvent):void
{
//Calcul de la valeur en fonction de la position du curseur
var curseurPosX = curseur.x; //Récupère la position du curseur
var resultat = Math.floor((curseurPosX-depPosX)*(valMAX-valMIN)/largeur)+valMIN; //Produit en croix
infos.text = resultat; //Affiche le resultat dans ma zone de texte
}
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMOVE); //Déplacement de la souris

Aperçus & Sources : (Flash CS4)
Commentaire(s)
Aucun.