分享

AS3加载声音并控制音量

 宜宾翠屏区 2018-12-19

/*-------------------------------------*/
//加载背景音乐
import flash.events.Event;
import flash.media.Sound;
import flash.net.URLRequest;

var s:Sound = new Sound();
s.addEventListener(Event.COMPLETE, onSoundLoaded);
var req:aURLRequest=new URLRequest("bg.mp3");
s.load(req);

function onSoundLoaded(event:Event):void {
 var localSound:Sound=event.target as Sound;
 var music_channel:SoundChannel=localSound.play(0,10000);
 var music_volume:SoundTransform = new SoundTransform();
 music_volume.volume=0.7;
 music_channel.soundTransform=music_volume;

 sound_control.stop();
 sound_control.addEventListener( MouseEvent.CLICK, play_pause );

 function play_pause(e:MouseEvent):void {
  music_volume.volume=0.7;


  if (e.target.currentFrame==1) {
   music_volume.volume=0;
  }

  music_channel.soundTransform=music_volume;
  e.target.play();
 }
}.

*as3音量控制 *

package com.lzxt{  
   //导入包  
    import flash.display.Sprite;  
    import flash.events.*;  
    import flash.media.Sound;  
    import flash.media.SoundChannel;  
    import flash.media.SoundTransform  
    import flash.net.URLRequest;  
    import fl.controls.Slider  
    //创建文档类  
    public class SoundVolue extends Sprite {  
        //定义属性  
       //定义要加载的文件路径,注意,此路径要相对于SWF文件的目录  
       private var url:String="nobody.mp3";           //创建Sound类实例  
        private var mysound:Sound=new Sound;  
       //定义滑块实例名称  
        private var slider:Slider  
       //定义声音通道名称  
       private var song:SoundChannel  
       //构造函数  
        public function SoundVolue() {  
            //创建URL连接  
            var request:URLRequest=new URLRequest(url);  
           //注册加载完成事件  
            mysound.addEventListener(Event.COMPLETE,completeHandler);  
            //加载文件  
            mysound.load(request);  
           //创建滑块对象实例  
           slider=new Slider()       
       //移动滑块位置  
           slider.move(50,100)  
           //设置滑块初始值  
            slider.value=0.5;  
            //在滑块对象商注册改变事件  
           slider.addEventListener(Event.CHANGE,changeVolue)  
           //加入舞台   
           addChild(slider)  
       }  
        //创建转换声音事件处理函数  
       private function changeVolue(evt:Event):void{  
           //创建转换对象  
           var trans:SoundTransform=new SoundTransform()  
           //获取声音的值,并加入转换对象  
           trans.volume=evt.target.value  
           //实现转换  
           song.soundTransform=trans  
       }  
        //创建加载完成事件侦听函数  
       private function completeHandler(event:Event):void {  
           //加载完成,开始播放  
            song=mysound.play();  
        }  
    }  
}


 

/*背景音乐*/

import flash.events.Event;
import flash.media.Sound;
import flash.net.URLRequest;

var s:Sound = new Sound();
s.addEventListener(Event.COMPLETE, onSoundLoaded);
var req:URLRequest=new URLRequest("bg.mp3");
s.load(req);

function onSoundLoaded(event:Event):void {
 var localSound:Sound=event.target as Sound;
 var music_channel:SoundChannel=localSound.play(0,10000);
 var music_volume:SoundTransform = new SoundTransform();
 music_volume.volume=0.7;
 music_channel.soundTransform=music_volume;

 /*sound_control.stop();
 sound_control.addEventListener( MouseEvent.CLICK, play_pause );
*/
 function play_pause(e:MouseEvent):void {
  music_volume.volume=0.7;


  if (e.target.currentFrame==1) {
   music_volume.volume=0;
  }

  music_channel.soundTransform=music_volume;
  e.target.play();
 }
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多