2
我一直在想我的大脑试图让这个循环的wav暂停一下, 我在哪里出错了?这有助于OP的解决方案如何创建一个按下两次后会暂停的jToggle按钮?
private void jToggleButton2ActionPerformed(java.awt.event.ActionEvent evt) {
JToggleButton btn = (JToggleButton) evt.getSource();
if (btn.isSelected()) {
try {
String soundName = "yourSound.wav";
AudioInputStream audioInputStream = null;
try {
audioInputStream = AudioSystem.getAudioInputStream(new File(soundName).getAbsoluteFile());
} catch (UnsupportedAudioFileException | IOException ex) {
Logger.getLogger(GEN.class.getName()).log(Level.SEVERE, null, ex);
}
Clip clip = null;
try {
clip = AudioSystem.getClip();
} catch (LineUnavailableException ex) {
Logger.getLogger(GEN.class.getName()).log(Level.SEVERE, null, ex);
}
clip.open(audioInputStream);
clip.start();
clip.loop(100);
} catch (LineUnavailableException | IOException ex) {
Logger.getLogger(GEN.class.getName()).log(Level.SEVERE, null, ex);
}
} else {
try {
}
开关按钮应该有只有两种状态。你可以查看[this](http://stackoverflow.com/a/7524627/1572356)SO回答知道如何获得按钮的状态。 –
注册这两个状态不是问题,我已经用打印输出功能测试过,我的问题是在第二次点击注册时停止循环音频 – Sc001010tt
Clip对象上有一个“stop”方法可用。在方法外定义剪辑。如果按钮未切换,则剪辑不为空,并剪辑“isRunning()”和“stop()”。 –