为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

白衣非少年 2023-08-04 10:07:57
我试图让我的 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(""));取消程序后没有错误消息,只是音频仍在播放。
查看完整描述

1 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

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(""));


查看完整回答
反对 回复 2023-08-04
  • 1 回答
  • 0 关注
  • 56 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信