📄 exam10_5.java
字号:
/*这是一个在applet中播放音频文件的示例
*程序名是: Exam10_5.java
*/
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
public class Exam10_5 extends JApplet implements ActionListener,ItemListener
{
AudioClip ac;
JButton b_start=new JButton("开始"); //创建功能按钮,用于控制播放
JButton b_pause=new JButton("暂停"); //......
JButton b_continue=new JButton("继续"); //......
JComboBox box=new JComboBox(); //创建组合列表框存放音频文件名
public void init()
{
Container pane=this.getContentPane(); //获得容器
String name=this.getParameter("name"); //获取音频文件名
int no=Integer.parseInt(getParameter("no")); //获取音频文件数目
for(int i=1;i<=no;i++) box.addItem(name+i+".wav"); //将音频文件名加入列表
box.addItemListener(this); //给列表注册监听对象
b_start.addActionListener(this);//给功能按钮注册监听对象
b_pause.addActionListener(this); //......
b_continue.addActionListener(this);//......
pane.setLayout(new FlowLayout()); //设置容器为流布局
pane.add(box); //将组合列表框加入到容器中
pane.add(b_start); //把功能按钮加入到容器中
pane.add(b_pause); //......
pane.add(b_continue); //......
ac=getAudioClip(getDocumentBase(),(String)box.getItemAt(0));//取列表中的第一项创建音频对象
}
public void stop() //在Applet停止时关闭音乐
{
if(ac!=null) ac.stop();
}
/*********实现ActionListener接口方法*********/
public void actionPerformed(ActionEvent e)
{
if( ac==null ) //如果AudioClip对象为空,则直接返回
{
System.out.println("音频对象没有创建!!!");
return;
}
Object cmd= e.getSource();//获取用户激活的按钮
if (cmd==b_start) ac.play();//开始播放
else if(cmd==b_pause) ac.stop(); //暂停播放
else if(cmd==b_continue) ac.loop(); //继续播放
}
/***********实现ItemListener接口方法***********/
public void itemStateChanged(ItemEvent e)
{
if(e.getSource()!=box) return;
ac=getAudioClip(getDocumentBase(),(String)e.getItem()); //创建音频对象
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -