import java.applet.*;
import java.awt.event.*;
import java.awt.*;
/**
* <p>title: applet播放声音文件</p>
* <p>description: 使用audioclip类加载声音文件,并当鼠标点击后开始播放</p>
* <p>copyright: copyright (c) 2003</p>
* <p>filename: playaudio.java</p>
* @version 1.0
*/
public class playaudio extends applet
implements actionlistener{
audioclip audio;
button btexit,btopen,btplay,btloop,btstop;
/**
*<br>方法说明:初始化applet
*<br>输入参数:
*<br>返回类型:
*/
public void init() {
//加载声音文件
audio = getaudioclip(getdocumentbase(),"img/1.mid");
//构造按钮
setlayout(new flowlayout()); //使用布局管理器
btplay=new button("play"); //定义play按钮
btplay.addactionlistener(this); //给play按钮添加一个监听事件
btloop=new button("loop"); //定义play按钮
btloop.addactionlistener(this); //给play按钮添加一个监听事件
btstop=new button("stop"); //定义play按钮
btstop.addactionlistener(this); //给play按钮添加一个监听事件
//将按钮添加到applet中
add(btplay);
add(btloop);
add(btstop);
}
public void actionperformed(actionevent e) {
//如果点击的是play按钮
if (e.getsource()==btplay) {
play();
}
//如果点击的是loop按钮
if (e.getsource()==btloop) {
loop();
}
//如果点击的是stop按钮
if (e.getsource()==btstop) {
stop();
}
}
/**
*<br>方法说明:播放声音
*<br>输入参数:
*<br>返回类型:
*/
public void play(){
if (audio!=null) stop();
audio.play();
}
/**
*<br>方法说明:循环播放声音
*<br>输入参数:
*<br>返回类型:
*/
public void loop(){
if (audio!=null)
audio.loop();
}
/**
*<br>方法说明:停止播放声音
*<br>输入参数:
*<br>返回类型:
*/
public void stop(){
if (audio!=null)
audio.stop();
}
}
闽公网安备 35060202000074号