sound
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();
//定义一个数;初始化声音播放的位置为0
private 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;
}
}
}
浙公网安备 33010602011771号