rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: [Flash] Playlist Ven 23 Mar - 2:06 | |
| Pour cette fois ci, je vous montre comment faire une playlist dynamique permettant d'afficher autant de musiques que l'on veux sans rien changer. Ca peut être pratique pour ceux qui font un baladeur mp3. Perso je préfère utiliser ça aux composants, au moins c'est du personnalisé à fond. | |
|
rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: Re: [Flash] Playlist Ven 23 Mar - 2:08 | |
| Voilà un apercu de la playlist, là vous pouvez changer le nombre de musique que vous souhaitez faire aparaitre.
| |
|
rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: Re: [Flash] Playlist Ven 23 Mar - 2:29 | |
| Code étant sur le root - Code:
-
//bouton de défilement inactif au départ slide_mc.enabled=false; ////////////////////////////////////////////////////////////////////// // Défilment de la playlist // ////////////////////////////////////////////////////////////////////// //défillement de la playlist lorsque l'on appuie sur le bouton //seulement si il y a plus de 21 musiques (limite de lisibilité //de l'écran) slide_mc.onPress=function(){ //nbLigne est le nom de variable de la zone de texte // contenant le nombre de ligne nbmusique=nbLigne; //le bouton de défilement sera actif que si il y a plus de //21lignes, c'est défini dans le clip Playlist if(slide_mc.enabled==true){ slide_mc.startDrag(false,this._x,30,this._x,180); slide_mc.onMouseMove=function(){ playlist_mc._y=-(nbmusique*19.1-400)*((slide_mc._y-30)/150); } } } slide_mc.onRelease=slide_mc.onReleaseOutside=function(){ slide_mc.stopDrag(); } //Défilement de la playlist via la roulette de la souris var ecouteur:Object=new Object(); //le delta dans function est là par défaut quand on veux //utiliser la roulette de la souris, il contient la valeur de //rotation de la roulette. //J'ai défini des bornes pour éviter de dépasser les limites //de défilement. ecouteur.onMouseWheel=function(delta){ nbmusique=nbLigne; diviseur=nbmusique*4; if(slide_mc.enabled==true){ if(slide_mc._y<=30){ slide_mc._y=30; if(delta<0){ slide_mc._y-=2*delta; playlist_mc._y=-(nbmusique*19.1-Stage.height)*((slide_mc._y-30)/150); } } if(slide_mc._y<180 && slide_mc._y>30){ slide_mc._y-=2*delta; playlist_mc._y=-(nbmusique*19.1-Stage.height)*((slide_mc._y-30)/150); } if(slide_mc._y>=180){ slide_mc._y=180; if(delta>0){ slide_mc._y-=2*delta; playlist_mc._y=-(nbmusique*19.1-Stage.height)*((slide_mc._y-30)/150); } } } } Mouse.addListener(ecouteur);
//Cette fonction permet lors d'un click de sélectionner une //piste quelconque. La valeur num est un paramètre qui //lui est envoyé venant de la piste, lui indiquant laquelle on //a cliqué. 19.1 est la hauteur des zones de texte. playlist=function(num){ piste=num; playlist_mc.select_mc._y=piste*19.1; } Code étant dans le clip Playlist - Code:
-
//on réceptionne le nombre de lignes indiqué sur le root. nbMusique=_parent.nbLigne; //maintenant on créé la playlist selon le nombre de ligne. _root.onLoad=function(){playlist();} function playlist(){ for(i=0;i<nbMusique;i++){ var playlist = this.createEmptyMovieClip("musique"+i,this.getNextHighestDepth()); var final =eval("musique"+i).attachMovie("selectPlaylist","musique"+i,this.getNextHighestDepth()); eval("musique"+i)._x=0; eval("musique"+i)._y=19.1*i; final.titre_txt.text="Artiste n°"+(i+1)+" - "+"Titre n°"+(i+1); final.temps_txt.text="03:21"; } ancienNb=nbMusique; }
//quand le bouton actualisé est cliqué, on regarde le nombre //de musique précédent, et on supprime tout avant que la //playlist soit recréé. _parent.actualiser_btn.onRelease=function(){ for(i=0;i<ancienNb;i++){ eval("musique"+i).removeMovieClip(); } nbMusique=_parent.nbLigne; //on appel la fonction playlist pour qu'elle recrée la playlist playlist(); //si le nombre de ligne indiqué est supérieur à 21, on active //le bouton de défilement if(nbMusique>=21){ _parent.slide_mc.enabled=true; } } Code se trouvant dans chaque élément de la playlist (chaque pistes) - Code:
-
//tout d'abord inclure les fonctionnalités tween #include "lmc_tween.as" etat=false; var num; if(etat==false){ //ici on gère les effet de rollOver et rollOut piour les changement //de couleur du texte et de la zone de sélection. select_mc.onRollOver=function(){ select_mc.alphaTo(100,0.5); titre_txt.colorTo(0x999999,0.5); temps_txt.colorTo(0x999999,0.5); } select_mc.onReleaseOutside=select_mc.onRollOut=function(){ select_mc.alphaTo(0,1.5); titre_txt.colorTo(0xFFFFFF,2); temps_txt.colorTo(0xFFFFFF,2); } //ici on détermine le nom de l'élément (exemple si on est la piste //21, il va retrouver son nom "musique21", ensuite il détermine sa //longueur et ne va garder que les élément se trouvant après //"musique", c'est à dire le numéro. Puis il le renvoie à la fonction de //sélection se trouvant dans le clip root. select_mc.onRelease=function(){ var nom:String=_parent._name.toString(); var long:Number=nom.length; fin=long-7; num=nom.substr(7,fin); _root.playlist(num); } } | |
|
rabou Actif du SrC
Nombre de messages : 716 Age : 38 Localisation : au fond... sisi, et même à droite Date d'inscription : 02/12/2005
| Sujet: Re: [Flash] Playlist Ven 23 Mar - 2:32 | |
| | |
|
Contenu sponsorisé
| Sujet: Re: [Flash] Playlist | |
| |
|