赞
踩
以下代码放入GUI的构造器里或初始化函数 init()即可,没有必要new Thread。
import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.Clip; private Clip c; private AudioInputStream ais; File f = new File("bgm.wav");//不支持MP3,请用格式工厂或其他软件把MP3改为wav,直接改后缀名会报错 try { ais = AudioSystem.getAudioInputStream(f); c = AudioSystem.getClip(); c.open(ais); c.setFramePosition(0); c.start(); } catch (Exception e) { e.printStackTrace(); } //如果GUI是线程运行结束后,需要添加停止播放代码 c.stop();
private JButton audio;
private int playing = 0;
audio = new JButton(new ImageIcon("audio.png"));
audio.addActionListener(e->{
playing++;
if(playing % 2 == 1){
audio.setIcon(new ImageIcon("audioNo.png"));//划了斜杠的喇叭图标
c.stop();
}else{
audio.setIcon(new ImageIcon("audio.png"));//喇叭图标
c.start();
}
});
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。