2015-02-07 227 views
0

我正在编写一个程序,并且向它添加了一些背景音乐。 但是,我希望能够通过点击一个按钮来停止音乐。 我知道如何添加按钮和东西,但是我不知道如何停止音乐,我尝试了很多东西,但却无法让它工作。在Java中停止播放音乐

这是我的代码:

new Thread(new Runnable() { 
        public void run() { 
         try { 
         Clip Music = AudioSystem.getClip(); 
         AudioInputStream BMG = AudioSystem.getAudioInputStream(
          Main.class.getResourceAsStream("/Music/BackgroundMusic.wav")); 
         Music.open(BMG); 
         Music.start(); 
         } catch (Exception e) { 
         System.err.println(e.getMessage()); 
         } 
        } 
        }).start(); 

如果你能帮助这将是真棒!

谢谢你在前进, JS

+1

您需要能够从其他位置访问对'Music'的引用(在Java变量中以鼠标顺序开头的顺序)。 – m0skit0 2015-02-07 13:05:05

回答

0
Clip Music=null; 
    new Thread(new Runnable() { 
     public void run() { 
      try { 
      Clip Music = AudioSystem.getClip(); 
      AudioInputStream BMG = AudioSystem.getAudioInputStream(
       Main.class.getResourceAsStream("/Music/BackgroundMusic.wav")); 
      Music.open(BMG); 
      Music.start(); 

      } catch (Exception e) { 
      System.err.println(e.getMessage()); 
      } 
     } 
     }).start(); 

    //this goes inside the actionPerformed event of the button 
    if(Music!=null)Music.stop(); 

正如m0skit0说你更好地与小写字母开头的变量,不要成为一个C#如意。