sound类在 flash3.0中算是很常见的功能,也是很常用的,下面 简单的运用了 sound类,加载了一首歌,控制 播放 暂停 停止,和控制音量大小;
package {import flash.display.MovieClip;import fl.controls.*;import flash.media.Sound;import flash.net.URLRequest;import flash.media.SoundChannel;import flash.events.MouseEvent;import flash.media.SoundTransform;import fl.events.SliderEvent;public class SoundMain extends MovieClip {//定义三个按钮,分别是:播放、暂时、停止private var play_btn:Button=new Button();private var suspend_btn:Button=new Button();private var stop_btn:Button=new Button();//定义一个slider组件,控制声音的大小;private var controlVolume:Slider=new Slider();//定义sound的三个类,分别是;声音,声音控制,声音音量private var sound:Sound=new Sound();private var soundchannel:SoundChannel=new SoundChannel();private var soundtransform:SoundTransform=new SoundTransform();//定义一个数;初始化声音播放的位置为0private var position:Number=0;public function SoundMain(){//加载声音sound.load(new URLRequest('00.mp3'));//对三个按钮的 设置play_btn.label='播放';play_btn.x=10;play_btn.y=260;play_btn.width=40;addChild(play_btn);suspend_btn.label='暂停';suspend_btn.x=50;suspend_btn.y=260;suspend_btn.width=40;addChild(suspend_btn);stop_btn.label='停止';stop_btn.x=90;stop_btn.y=260;stop_btn.width=40;addChild(stop_btn);//对slider的设置controlVolume.x=140;controlVolume.y=270;addChild(controlVolume);//给三个按钮 加上单击事件play_btn.addEventListener(MouseEvent.CLICK,onPlayHandler);suspend_btn.addEventListener(MouseEvent.CLICK,onSuspendHandler);stop_btn.addEventListener(MouseEvent.CLICK,onStopHandler);//初始化声音的大小controlVolume.value = 5;soundtransform.volume = controlVolume.value *0.1;soundchannel.soundTransform = soundtransform;//给slider加事件controlVolume.addEventListener(SliderEvent.CHANGE,onControlVolume);}private function onPlayHandler(e:MouseEvent):void{soundchannel=sound.play(position);}private function onSuspendHandler(e:MouseEvent):void{position=soundchannel.position;soundchannel.stop();}private function onStopHandler(e:MouseEvent):void{position=0;soundchannel.stop();}private function onControlVolume(e:SliderEvent):void{soundtransform.volume = (e.target.value)*0.1;soundchannel.soundTransform = soundtransform;}}}