![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
привет всем!
пршу помощи нужно сделать список треков и рядом кнопку плей для них когда кликаем на нее трек котороый играл до этого должен перестать играть я спроэкьтровал это так: создаем класс плеера и главный класс , в главном классе делаем экземпляры плеера и передаем в него SoundChannel который был создан в главном класс, в классе плеера при клике на плей сначала стопим весь канал а потом уже в него пускаем новый трек урезанный код главный КЛАСС: package { import flash.display.*; import Player; import flash.media.*; public class Test extends Sprite { var xml:XML; var player:Player = new Player(); var channel:SoundChannel = new SoundChannel(); function Test(){ loadXML(); testBttn.addEventListener(MouseEvent.CLICK, testChannel); } function loadXML(){ var xmlLoader:URLLoader = new URLLoader(); xmlLoader.addEventListener(Event.COMPLETE, LoadXMLComplete); xmlLoader.load(new URLRequest("xml/mp3.xml")); function LoadXMLComplete(event:Event):void { xml = new XML(event.target.data); addChild(player); player.addPlayer(channel,xml,700,15,directoryContainer,true); player.playTrack("track.mp3") } } function testChannel(e:Event):void { channel.stop(); var transform:SoundTransform = new SoundTransform(.01, 1); channel.soundTransform = transform; trace("testChannel") } } } теперь кусочек из Player(); public function addPlayer(Channel,xml,X,Y,directoryContainer:Object = null,DIR:Boolean = false):void { this.channel = Channel; ...................... } public function playTrack(filePath):void { try { channel.stop(); track.close(); } catch(e:Error){ channel.stop(); } track = new Sound; track.load(new URLRequest(filePath.toString())); track.addEventListener(ProgressEvent.PROGRESS, progressLoad) channel = track.play(); var transform:SoundTransform = new SoundTransform(volumeLevel, 0); channel.soundTransform = transform; channel.addEventListener(Event.SOUND_COMPLETE, endTrack); timer.addEventListener(TimerEvent.TIMER, Progress); timer.start(); } работает нормально но когда в главном классе срабатывает кнопка testBttn и якобы остонавливается channel - testChannel то ничего не происходит трек играл и играет дальше ![]() Последний раз редактировалось 3p.station; 31.07.2010 в 01:33. |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|