Java “循环音频和输入”对话框取消

Java “循环音频和输入”对话框取消,java,Java,我正试图让我的JOptionPane游戏恢复正常。我有音频循环的代码。但当用户在输入对话框上单击“取消”时,它会退出游戏,但不会关闭音频线程。 发生这种情况时,我需要一些东西来杀死音频线程 我尝试过播放音频.wav文件的其他方法。但当用户点击“取消”时,它仍会播放。已经尝试使用JFrames并处理该帧,但这也不会处理音频线程 URL urlfog = theFog.class.getClassLoader().getResource("thefog.wav"); AudioInputStream

我正试图让我的JOptionPane游戏恢复正常。我有音频循环的代码。但当用户在输入对话框上单击“取消”时,它会退出游戏,但不会关闭音频线程。 发生这种情况时,我需要一些东西来杀死音频线程

我尝试过播放音频.wav文件的其他方法。但当用户点击“取消”时,它仍会播放。已经尝试使用JFrames并处理该帧,但这也不会处理音频线程

URL urlfog = theFog.class.getClassLoader().getResource("thefog.wav");
AudioInputStream audioStreamfog = AudioSystem.getAudioInputStream(urlfog);
AudioFormat formatfog = audioStreamfog.getFormat();
DataLine.Info infofog = new DataLine.Info(Clip.class, formatfog);
Clip audioClipfog = (Clip) AudioSystem.getLine(infofog);
audioClipfog.open(audioStreamfog);
audioClipfog.loop(audioClipfog.LOOP_CONTINUOUSLY);


String name;

do {
    name = (String) JOptionPane.showInputDialog(null,"Hello what is your name?","The Fog",JOptionPane.INFORMATION_MESSAGE,icon1,null,"");
}
while (name.equalsIgnoreCase(""));

没有错误消息,只是取消节目后音频仍在播放。

audioClipfog.stop()
您在取消中尝试过这个吗?这个方法是什么?是的,是作为剪辑的
audioClipfog
方法
String name;
do {
    name = (String) JOptionPane.showInputDialog(null, "Hello what is your name?", "The Fog", JOptionPane.INFORMATION_MESSAGE, icon1, null, "");

    if ((name == null)) {
        audioClipfog.stop();
        System.exit(0);
    }
}
while (name.equalsIgnoreCase(""));