import java.applet.Applet;
import java.applet.AudioClip;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JPanel;
public class Audio extends Applet {
private JPanel panel;
private JButton button;
private AudioClip sound;
private boolean play = true;
public void init() {
panel = new JPanel();
button = new JButton("Play");
sound = getAudioClip(getDocumentBase(),"DragonMusic/BG_000.mid");
panel.setLayout(new BorderLayout());
panel.add(button, BorderLayout.CENTER);
    button.addActionListener(new JButtonListener());
add(panel);
sound.loop();
}
public class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
System.out.println(play);
if(play) {
sound.stop();
play = false;
} else {
sound.stop();
sound.loop();
play  = true;
}
}
}
}
}
// <applet code=Audio width=100 height=200></applet>  
这个只是单个音乐 ,play键一按就停 再按就 重放 ,已测试可以实现,下面我想多个音乐按上下或左右键切换,   play键 同样有暂停 播放功能
可是按上两次后 再按就再也不会出声了   ,
请高手指教
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
public class Study extends Applet{
private static int i=0;
private JPanel panel;
private JButton button;
private JButton buttonUp;
private JButton buttonDown;
private JButton buttonLeft;
private JButton buttonRight;
private AudioClip backSound[];
private AudioClip sound;
public void init(){
panel=new JPanel();
button=new JButton("Play");
buttonUp=new JButton("↑");
buttonDown=new JButton("↓");
    buttonLeft=new JButton("←");
    buttonRight=new JButton("→");
    
    button.addActionListener(new JButtonListener());
    buttonUp.addActionListener(new JButtonListener());
    buttonDown.addActionListener(new JButtonListener());
    buttonLeft.addActionListener(new JButtonListener());
    buttonRight.addActionListener(new JButtonListener());
    
    backSound=new AudioClip[67];
for(int n=0;n<67;n++){
if(n/10==0){
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_00"+n+".mid");
}
else{
backSound[n]=getAudioClip(getDocumentBase(),"DragonMusic\\BG_0"+n+".mid");
}

sound=backSound[0];
sound.loop();
    setSize(400,300);
    panel.setLayout(new BorderLayout());
    panel.add(button,BorderLayout.CENTER);
    panel.add(buttonLeft,BorderLayout.WEST);
    panel.add(buttonRight,BorderLayout.EAST);
    panel.add(buttonUp,BorderLayout.NORTH);
    panel.add(buttonDown,BorderLayout.SOUTH);
    add(panel);
}
private class JButtonListener implements ActionListener{
public void actionPerformed(ActionEvent event){
if(event.getSource()==button){
sound.stop();
sound=backSound[i];
sound.loop();
}
else if(event.getSource()==buttonLeft||event.getSource()==buttonUp){
sound.stop();
if(i>0){
i--;
sound=backSound[i];
sound.loop();
}
else{
   i=backSound.length-1;
   sound=backSound[i];
   sound.loop();
}
}
else if(event.getSource()==buttonRight||event.getSource()==buttonDown){
sound.stop();
if(i==backSound.length-1){
i=0;
sound=backSound[i];
sound.loop();
}
else{
i++;
sound=backSound[i];
sound.loop();
}
}
    }
    }
}