关闭。这个问题需要细节或清晰。它目前不接受答案。
**想改进这个问题吗?**通过编辑这个帖子来添加细节并澄清问题。
13天前关门了。
改进这个问题
我是新来的,不知道如何在另一节课上停止我的音乐。我的想法是我按下一个按钮,音乐就会停止。
public class Musik {
public static synchronized void music(String song) {
final String songname= song;
new Thread(new Runnable() {
@Override
public void run() {
while (true){
try{
Clip clip = AudioSystem.getClip();
AudioInputStream input=AudioSystem.getAudioInputStream(new File(songname));
clip.open(input);
clip.loop(clip.LOOP_CONTINUOUSLY);
Thread.sleep(clip.getMicrosecondLength()/1000);
}catch (Exception e){
e.printStackTrace();
}
}
}
}).start();
}
}
我想按一下音乐停止的按钮,但我没有任何线索。 stop();
, close();
或者类似的东西根本不起作用。
public void actionPerformed(ActionEvent e){
if (button==e.getSource()){
//Musik.close(); doesnt work
}
1条答案
按热度按时间scyqe7ek1#
可以将布尔值实现为标志。而不是while(true),创建一个可能称为isplaying的布尔值。在播放的同时制作。创建一个将布尔值设置为false的函数close