2013-03-26 7 views
0

5 개의 노래가 포함 된 5 개의 버튼이 있습니다. 하나의 재생 버튼과 정지 버튼이 있습니다. 하나의 노래 버튼을 클릭 한 다음 재생 버튼을 클릭하면 해당 노래가 재생됩니다. 원한다면 멈춤 버튼을 누르십시오. 노래가 멈 춥니 다. 다른 노래를 선택하고 재생 버튼을 클릭하면 지정된 노래가 재생됩니다. 아래 주어진 코드를 사용하고 있지만 출력을 얻을 수 없습니다. 도와주세요 ... !!액션 스크립트에서 여러 노래 재생

sng1.addEventListener(MouseEvent.CLICK, mclick); 
sng2.addEventListener(MouseEvent.CLICK, mclick); 
sng3.addEventListener(MouseEvent.CLICK, mclick); 
sng4.addEventListener(MouseEvent.CLICK, mclick); 
sng5.addEventListener(MouseEvent.CLICK, mclick); 
var url:String; 
function mclick(e:MouseEvent) 
{ 
     //private var url:String = "FIFA Theme song.mp3"; 
     if(e.currentTarget.name == "sng1") 
     { 
      url="Ippadi Mazhai.mp3"; 
     } 
     else if (e.currentTarget.name == "sng2") 
     { 
      url = "06 Gore Gore.mp3"; 
     } 
     else if (e.currentTarget.name == "sng3") 
     { 
      url = "FIFA Theme song.mp3"; 
     } 
     else if (e.currentTarget.name == "sng4") 
     { 
      url = "babe.mp3"; 
     } 
     else if (e.currentTarget.name == "sng5") 
     { 
      url = "fast_and_furious_5.mp3"; 
     } 

} 
     public class audio extends Sprite{ 
     private var song:SoundChannel; 
     private var soundFactory:Sound; 
     public function audio() { 
      var request:URLRequest = new URLRequest(url); 

      soundFactory = new Sound(); 
      soundFactory.addEventListener(Event.COMPLETE, completeHandler); 
      soundFactory.addEventListener(Event.ID3, id3Handler); 
      soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); 
      soundFactory.load(request); 
      song = soundFactory.play(); 
      plybtn.addEventListener(MouseEvent.CLICK, plClick); 
      stpbtn.addEventListener(MouseEvent.CLICK, stpClick); 
     } 
     private function completeHandler(event:Event):void { 
      trace("completeHandler: " + event); 
     } 

     private function id3Handler(event:Event):void { 
      trace("id3Handler: " + event); 
     } 

     private function ioErrorHandler(event:Event):void { 
      trace("ioErrorHandler: " + event); 
     } 

     private function progressHandler(event:ProgressEvent):void { 
      trace("progressHandler: " + event); 
     } 
     private function plClick(evt:MouseEvent) 
     { 
      song = soundFactory.play(); 
     } 
     private function stpClick(evt:MouseEvent) 
     { 
      song.stop(); 
     } 

    } 

} 

답변

0

그냥 작동하려면 다음 코드를 위해 url을 변경하는 것만으로는 충분하지, 당신은 실제로 소리를로드하고 재생하는 new audio() 문이 필요합니다. 올바른 방법은 5 개의 다른 모든 URL이있는 5 개의 audio 개체를 모두 초기화하면 모두 중지 된 상태로 표시 한 다음 해당 버튼을 클릭하는 것입니다.

관련 문제