Posted April 30, 200916 yr Salut, j'essaye de faire mon lecteur flv, avec seulement 3 boutons et un slider de volume. les 3 boutons marchent le slider (8 de large sur 7,6 de haut) de volume glisse bien sur son rail dimension 100px large par 5px de haut) par contre comment je fais ensuite pour relier mon slider et mon rail pour le controle du son svp ? voila ce que j'ai: mes boutons lecture/pause/stop stop(); btn_l.onRelease = function() { gotoAndStop(2); ; }; var netConn:NetConnection = new NetConnection(); netConn.connect(null); var netStream:NetStream = new NetStream(netConn); maVideo.attachVideo(netStream); netStream.setBufferTime(3); netStream.play("http://video.flv"); btn_p.onRelease = function() { netStream.pause(); }; btn_a.onRelease = function() { netStream.play(""); gotoAndStop(1); }; et pour mon slider sur le rail j'ai ça pour le moment: slider.onPress = function() { this.startDrag(true,_root.rail._x,_root.rail._y,_root.rail._x+100,_root.rail._y); } slider.onRelease = function() { this.stopDrag(); } merci par avance, je cherche dans les tutos un peu partout mais je n'y arrive pas.
April 30, 200916 yr Author le slider se déplace bien sur le rail par contre ça ne controle plus le son help SonVideo.attachAudio(GestionFluxVideo); var VolumeVideo:Sound = new Sound(SonVideo); VolumeVideo.setVolume(260); var son = VolumeVideo.getVolume(); slider._x = son; this.ratio = 0; slider.onPress = function() { this.startDrag(true,190,290.6,rail._x+100,290.6); this.onEnterFrame = function() { ratio = Math.round(this._x*100/rail._x); VolumeVideo.setVolume(ratio); }; }; slider.onRelease = slider.onreleaseOutside=stopDrag; slider.onReleaseOutside = slider.onreleaseOutside=stopDrag;
May 1, 200916 yr cest completement normal vu ke ton slider est pas lié a ton son. Je connais pas tellement le controle des sons dans Flash, mais essaie dajouter dans ton onEnterFrame un truc du genre, et vois ce ke ca fait. sonRatio = (son.duration - rail._width)/rail._width; son.position = -slider._x * sonRatio; Pour etre franc, ce serait super etonnant ke ca fonctionne mais ca peut etre une premiere piste (ou pas). Dans tous les cas, si tu peux lier ton .fla, ca pourrait tjs aider. bon courage
May 1, 200916 yr Author merci je ne comprends pas, le code tel quel marchait avec les positions à 0x et 0y avec le controle du son et tout mais dès que j'essaye de mettre le slider dans le rail, j'ai plus le réglage du son qui marche :( voila le fichier via messagerie, il faudra un petit .flv pour le faire marcher (l'esthétique ça viendra plus tard )
May 1, 200916 yr ah pardon, jai mal lu ton probleme: je pensais ke tu cherchais a faire un slider de defilement, et non pas un slider de volume. le code tel quel marchait avec les positions à 0x et 0y avec le controle du son et tout kel genre de controle de son ? Je comprends pas bien ce ke tu ve dire. Je regarde ton fichier dans lapresmidi
May 1, 200916 yr Author ah pardon, jai mal lu ton probleme: je pensais ke tu cherchais a faire un slider de defilement, et non pas un slider de volume.le code tel quel marchait avec les positions à 0x et 0y avec le controle du son et tout kel genre de controle de son ? Je comprends pas bien ce ke tu ve dire. Je regarde ton fichier dans lapresmidi pas grave c'est moi qui m'explique mal :) ok je t'ai envoyé la version qui marche mais pas là ou je veux
May 1, 200916 yr Tout marchait tres bien! Le probleme venait du fait ke une fois que tu placais le slider dans son rail, tu continuais a vouloir regler le son en fonction de slider._x... par rapport a l'absolu. Hors quand tu as placé le slider dans son rail, tu lui as indique une position _x egale a la position _x du rail. Ton ratio etait donc egal a rail._x + slider._x, donc forcement toujours au dessus de 100 (qui est le volume maximum). Il faut donc calculer ton ratio en prenant en compte la position du slider par rapport au rail, et non pas par rapport a la scene! Soit ratio = Math.round(((slider._x - rail._x)*100)/rail._width); Jai rajouté une variable pour regler le volume de base, ce sera plus simple pour le modifier si tu le souhaites. var volumeDepart:Number = 70; //volume au lancement de la video Enfin jai fait en sorte que ton slider soit positionné des le depart en fonction de la place de ton rail. Donc si tu souhaites modifier linterface, tu as juste a bougé ton rail, et le slider suivra var volumeDepart:Number = 70; //volume au lancement de la video SonVideo.attachAudio(GestionFluxVideo); var VolumeVideo:Sound = new Sound(SonVideo); VolumeVideo.setVolume(volumeDepart); var son = VolumeVideo.getVolume(); slider._x = rail._x + volumeDepart; slider._y = rail._y; this.ratio = 0; slider.onPress = function() { this.startDrag(true,rail._x,rail._y,rail._x + rail._width,rail._y); this.onEnterFrame = function() { ratio = Math.round(((this._x - rail._x)*100)/rail._width); trace(ratio); VolumeVideo.setVolume(ratio); }; }; slider.onRelease = slider.onreleaseOutside=stopDrag; slider.onReleaseOutside = slider.onreleaseOutside=stopDrag;
May 1, 200916 yr Author meeeeeeeeeeeeeerci à toi! et c'est bien d'avoir posté ici pour les autres, bien vu je zappe encore trop de choses niveau logique en programmation
May 11, 200916 yr Author par contre hesite pas a editer le titre de ton post avec un <RESOLU> devant je pensais l'avoir fait mais c'était pour un autre post, sowwy
Archived
This topic is now archived and is closed to further replies.