begin process at 2012 05 27 09:12:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

ActionScript

 > 

Problème de définition d'une variable...enfin, je crois!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème de définition d'une variable...enfin, je crois!

vendredi 1 avril 2005 à 21:44:41 | Problème de définition d'une variable...enfin, je crois!

Gizmil

Salut,

Je débute en action-script donc j'ai repiqué le code d'un lecteur mp3.
Le problème est que j'essaye de modifier certaines données du code pour
l'adpater à mes besoins et je bloque sur un truc en particulier:

Au départ, tous les sons étaient en attachSound. J'en ai fait des loadSound,
ça me paraissait logique puisque je charge les sons depuis une source externe
spécifiée par un url! De plus, je pensais au début que remplacer des
attachSound par des loadSound ne demandait pas de transformer la structure
du code. C'est du moins ce que je pensais au début parce que j'ai changé d'avis.

Sur la frame d'origine, voici le code (les commentaires sont d'origine aussi, ils ne
sont pas de moi):

/* La plus grande partie du code se trouve sur cette frame, le reste est dans le
bouton
pause ainsi que dans la définition du clip curseur ...*/
// new sound = nouveau son, on attribue cette valeur a la variable musique

musique = new Sound(this);

// attachsound sert à attacher un son de la bibliothèque
// par défault aucun son n'est attaché (inutile en fait ;-) )

musique.attachSound("");

// setVolume = réglage du volume du son attaché
// 50 par défault ( sur 100 )

musique.setVolume(50);

// setPan = positionne la balance
// 0 , c-a-d au milieu, par défault

musique.setPan(0);

// position des curseurs servant à regler le volume et la balance,
50 ( au milieu ) par défault

volume.curseur._x = 50;
balance.curseur._x = 50;

// affichage de la durée du son ( en secondes ) dans le champ de texte "pos"
sur la scene

_root.onEnterFrame = function() {
_root.pos = Number(musique.position)/1000;

// affichage de la durée finale du son dans le champ de texte "dur" sur la scene

_root.dur = Number(musique.duration)/1000+" s";
};

// BOUTON PLAY

_root.boutonplay.onRelease = function() {
   musique.stop();
   musique.start(0, 999);
   _root.pause = 0;
   _root.boutonpause.gotoAndStop(1);
};

// joue le son précédement attaché, 1 fois .
si on clic sur PLAY, la PAUSE est désactivée
// BOUTON STOP

_root.boutonstop.onRelease = function() {
   
musique.stop();
};

// BOUTON VOLUME

_root.volume.onEnterFrame = function() {
_root.musique.setVolume(this.curseur._x);
_root.vol = this.curseur._x;
};

// BOUTON BALANCE

_root.balance.onEnterFrame = function() {
_root.musique.setPan((this.curseur._x-50)*2);
_root.bal = this.curseur._x;
};

// CURSEUR
// ce clip va permettre a l'utilisateur de suivre "graphiquement" l'évolution du
son
choisi.

_root.curseur.onEnterFrame = function() {
this.barre._x = Number((_root.musique.position/_root.musique.duration))*100;
};

// la position _x ( abcisses ) de la barre du clip est définie par la relation :
( position / duration ) * 100
// L
ogique !

musique.onSoundComplete = function() {
musique.attachSound("");
musique.start(0, 999);


Personnellement, j'aimerais précharger 3 musiques différentes qui soient audibles
en fondsonore sur mon site. J'aimerais donc que l'utilisateur puisse passer d'une
musique à l'autre en cliquant sur un bouton! C'était déjà faisable sur le lecteur
d'origine. Le code de ces boutons était celui-ci:

on (release) {
_root.musique.stop();
_root.musique.attachSound("son01");
_root.type = "musique 1";
_root.musique.start(0, 99);
}

Voilà pour le code d'origine.
En ce qui me concerne, j'ai rajouté les codes suivant sur la frame:

musique01 = new Sound();
musique02 = new Sound();
musique03 = new Sound();

musique01.loadSound("son01.mp3",false);
musique01.onLoad : function(){
   musique01.stop();
}
musique02.loadSound("son02.mp3",false);
musique02.onLoad : function(){
   musique02.stop();
}
musique03.loadSound("son01.mp3",false);
musique03.onLoad : function(){
   musique03.stop();
}


Ensuite, sur mes boutons, j'ai mis ceci:

bouton1
on (release) {
_root.musique.stop();
_root.type = "musique 1";
_root.musique01.start(0, 99);
}
bouton2
on (release) {
_root.musique.stop();
_root.type = "musique 2";
_root.musique02.start(0, 99);
}
bouton3
on (release) {
_root.musique.stop();
_root.type = "musique 3";
_root.musique03.start(0, 99);
}

Le code fonctionne en ce qui concerne les boutons! Quand je clique dessus,
la musique se met en route mais là où ça foire, c'est que rien n'est géré,
c'est-à-dire: le volume, la balance, les boutons play, stop, pause, etc.
Cela signifie que c'est au niveau du:

musique = new Sound(this);
musique.attachSound("");


...qu'il y a un problème! En tous cas, je suppose que c'est la définition de la
variable qui est inadéquate dans le cas d'un loadSound!

J'ai supposé que le this signifiait que la variable musique correspondait au son
actif dans le clip mais je ne comprend pas bien à quoi sert l'attachSound qui
suit!

Bref, je sais que c'est un peu fastidieux mais si quelqu'un pouvait m'éclairer,
ce serait super sympa! D'avance, merci!


vendredi 1 avril 2005 à 22:04:39 | Re : Problème de définition d'une variable...enfin, je crois!

pegase31

Membre Club Administrateur CodeS-SourceS
heu, tu devrais peut-être demander des renseignements à la personne qui a mis la source à dispo, là où tu l'as trouvée, tu ne crois pas ?
Il est le plus à même de te renseigner sur sa propre source...

Peg'
vendredi 1 avril 2005 à 23:15:01 | Re : Problème de définition d'une variable...enfin, je crois!

goldenboy68

Déjà...évite ces gros caractères...ça fait mal aux zieux!!! lol

Sinon, ben tu vois pas que le volume est géré sur l'objet Sound créé au début? J'ai pas trop d'expérience dans les players MP3, mais je ferai mes loadSound dans l'objet "musique", et j'en créerai pas un différent pour chaque son (pour 3 ça va, mais quand t'en auras 50???).

Voilà...donc à mon avis, y'a du remaniement de code à faire en profondeur! Faire le loadSound par exemple sur release du bouton...enfin là c'est une idée, j'sais pas si c'est la bonne façon de faire!

Donc comme l'a dit Peg' , tu peux toujours demander au créateur de la source qui doit être plus au courant de la chose (player MP3!)

@+! Samy
samedi 2 avril 2005 à 11:15:41 | Re : Problème de définition d'une variable...enfin, je crois!

Gizmil

Mettre le loadsound sur les boutons, c'est ce que j'avais fais au départ mais faire ça signifie que le son va commencer à se charger seulement quand l'utilisateur appuyera sur le bouton, ce qui signife qu'il va entendre un son saccadé, qui se coupera par certains moments! J'aurais voulu éviter ça!

Le lecteur que j'ai utilisé, je crois qu'il est fourni par Macromédia, c'est un modèle officiel, quoi! Mais je ne suis plus sûr, je vais chercher où je l'ai trouvé!

samedi 2 avril 2005 à 13:58:14 | Re : Problème de définition d'une variable...enfin, je crois!

goldenboy68

Suis pas sûr de moi...mais en général le son se charge plus vite qu'il n'est lu non? Enfin, c'est la fonctionnalité du "streaming"

En tout cas, y'a une solution à ton problème, ça c'est sûr!

@+! Samy



Cette discussion est classée dans : function, musique, curseur, root, stop


Répondre à ce message

Sujets en rapport avec ce message

Problème AS: NaN [ par TreaZe ] Bonjour,Je suis un peu, ou presque complètement, débutant en flash puisque c'est la première fois que j'essai de faire quelque chose avec ce programme menu [ par gretay ] Bonjour à tousJe chercche un coup de main pour mon menu.onRollOver et GetUrl ne répondent pas.Voici le code pour la construction du menuconstruireMenu OnPress on Release [ par MatthieuFourcade ] Bonjour, j'ai le bout de code suivant: "this.bouton.onPress = function(){        Mouse.hide();    _root.curseur.gotoAndPlay("saisie");    _root.curseu lire des mp3 dynamiquement par un player flash [ par BoumBoumBoba ] Hello... Je ne suis pas très-beaucoup calé en actionScript mais je me retrouve face à un souci que je devrais régler... j'espère que quelqu'un pourra AS2 : deux evenement sur un seul bouton... hellllllp! [ par lostshun ] je sais que je devrais coder en AS3 et non en AS2... mais comme je ne maitrise ni l'un ni l'autre, et que j'ai eu fait l'AS2, je suis en AS2 : voila m Rafraichir iframe avec getURL [ par nosfe2708 ] Bonjour voilà j'ai réaliser un petit player mp3 pour mon site, ou l'on doit selectionner les musiques en cliquant sur des boutons. Si une musique est On prend les même et on recommence [ par Soapza ] Voilà un autre problème un peu plus dur que celui d'hier mais du même acabit :stop();_root.accueilgeneral_mc.contact_mca.contact_bout.onRelease = func curseur en mouvement: un doute sur un code qui marche [ par peewe ] Hello, Oui, j'ai un doute. Pour creer un petit curseur sous mon menu qui se balade en suivant ma souris. Un curseur parametré de façon à ce qu'il ne s probleme loadMovieclip [ par fedebul ] bonjour, j'ai un petit souci avec dans mon site un swf importé et à l'interieur de celui ci ,il y a un clip qui doit recevoir d'autres swf mais ces de le plus rapide ? [ par stefbuet ] salut, je voudrais savoir quesque c'est le mieux entre ces deux proposition s'il vous plais :1) onEnterFrame = function () {// du code_root.boutonx.on


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,388 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales