Le lutin a un peu disparu du web ces derniers temps, car beaucoup de travail, et blogguer, bah ça prend du temps!

Mais voici encore une petite classe basique extraite d’un récent projet, un « circle slider » paramétrable.
Cette classe permet d’ instancier un slider circulaire en paramétrant l’angle de rotation souhaité, les diamètres des éléments, la valeur initiale a setter, et de récupérer en retour un pourcentage.

Paramètres :

  • _radius:Number, // rayon du cercle
  • _angleMin:Number, // angle minimum de 0 a 360
  • _angleMax:Number, // angle maximum de 0 a 360
  • _initValue:Number // valeur initiale en pourcentage de 0 a 1
  • oStyleSlider:Object // style

Méthodes :

  • getValue // retourne un pourcentage de 0 a 1
  • setValue(percent) // envoi un pourcentage de 0 a 1
Circle Slider

Instancier un CircleSlider :


//import de la classe CircleSlider import com.lc.utils.CircleSlider; //definition du style des elements var oStyleSlider:Object = new Object(); oStyleSlider.colorBorderCircle = 0xcccccc; oStyleSlider.isFillCircle = false oStyleSlider.colorCentreCircle = 0x80923a; oStyleSlider.thicknessBorderCircle = 10; oStyleSlider.colorCursor = 0xf2a000; oStyleSlider.radiusCursor = 20; oStyleSlider.colorBorderCursor = 0x80923a; oStyleSlider.thicknessBorderCursor = 0; //creation du circle slider var mySlider:CircleSlider = new CircleSlider(70, 0, 180, 0.3 ,oStyleSlider) //_radius:Number, --> rayon du cercle //_angleMin:Number, --> angle minimum de 0 a 360 //_angleMax:Number, --> angle maximum de 0 a 360 //_initValue:Number --> valeur initiale en pourcentage de 0 a 1 //oStyleSlider:Object --> style //ajout sur la scene addChild(mySlider); //écouteur pour savoir quand la valeur a changée mySlider.addEventListener("onValueChange",onValueSliderChange,false,0,true) function onValueSliderChange(e:Event):void{ //retourne un pourcentage de 0 a 1 trace(e.target.value) }

Télécharger la source :
-Classe CircleSlider.as
-Exemple d’utilisation