gpt4 book ai didi

当另一个声音开始播放时Java停止声音

转载 作者:行者123 更新时间:2023-11-30 06:30:32 26 4
gpt4 key购买 nike

我正在尝试制作 java 游戏,现在我正在为游戏添加音乐。问题是,如果音乐正在播放并且声音开始播放,那么我想停止音乐。

当前代码

Clip clip;

public void playSound(File sound) {
try {
Clip clip = AudioSystem.getClip();
clip.open(AudioSystem.getAudioInputStream(sound));
clip.start();
} catch(Exception e) {
System.out.println("Error with playing sound.");
e.printStackTrace();
}
}

public void stopSound() {
if(clip == null) return;
clip.stop();
}

但是如果我调用 stopSound 方法,那么声音永远不会停止。

感谢任何帮助!

最佳答案

clip 的范围是问题所在。 playSound 中定义的 clip 对象对于 stopSound 来说是未知的。

如果您的对象包含 clip 属性,请尝试将 playSound 的第一行更改为:

clip = AudioSystem.getClip();

关于当另一个声音开始播放时Java停止声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46246421/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com