0

5 つの曲を含む 5 つのボタンがあります。次に、1 つの再生ボタンと停止ボタンがあります。1 つの曲のボタンをクリックしてから再生ボタンをクリックすると、対応する曲が再生されます。停止ボタンを押すと、曲停止する必要があります。もう一度別の曲を選択して再生ボタンをクリックすると、その指定された曲が再生されます。以下のコードを使用していますが、出力を取得できません。私を助けてください...!!

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();
        }

    }

}
4

1 に答える 1

0

url次のコードを機能させるには、 を変更するだけでは十分ではありませんnew audio()。実際にそのサウンドをロードして再生するステートメントが必要です。正しい方法は、5 つaudioのオブジェクトすべてを 5 つの異なる URL で初期化すると、すべて停止状態になり、それらを表示してボタンをクリックすることになります。

于 2013-03-26T10:41:41.777 に答える