我正在使用 javazoom 中的库在 java 中制作 mp3Player。我已经设法启动和停止 mp3,但我无法恢复它。有谁知道如何做到这一点?
这是 MP3Player 类:
public class MP3Player extends JFrame{
public MP3Player(){
JPanel jpBottom = new JPanel();
JButton btnPlay = new JButton("Play");
JButton btnPause = new JButton("Pause");
jpBottom.add(btnPause);
jpBottom.add(btnPlay);
Container cp = this.getContentPane();
BorderLayout bl = new BorderLayout();
cp.setLayout(bl);
cp.add(jpBottom, BorderLayout.SOUTH);
btnPlay.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(t.isInterrupted()){
t.resume();
} else{
t.start();
}
}
}
);
btnPause.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e){
t.interrupt();
}
}
);
this.setVisible(true);
this.setSize(250, 100);
this.setTitle("MP3 Player");
this.setLocation(100, 100);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
Thread t = new Thread(new PlayerThread("file:///C://a.mp3"));
public static void main(String[] args) {
MP3Player n = new MP3Player();
}
}
PlayerThread 类:
public class PlayerThread implements Runnable{
String path;
PlayerThread(String path){
this.path = path;
}
public void run(){
try{
URL url = new URL(path);
InputStream in = url.openStream();
AdvancedPlayer pl = new AdvancedPlayer(in);
pl.play();
}
catch(Exception e){
System.out.println("Error: "+e);
}
}
public void pause(){
Thread.interrupted();
}
}