2014-06-16 43 views
0

我正在製作遊戲並希望爲我的角色選擇頁面添加聲音。所以我創建了一個可以播放歌曲的工作java文件,但是如何在啓動我的角色選擇屏幕時播放歌曲文件?如何播放另一個文件的聲音

注:這兩個文件都在同一個包。

package comp_sci; 

import java.io.*; 
import sun.audio.*; 

public class PlaySound 
{ 
    public static void main(String[] args) 
    throws Exception 
    { 
    // open the sound file as a Java input stream 
    String gongFile = "music.wav"; 
    InputStream in = new FileInputStream(gongFile); 

    // create an audiostream from the inputstream 
    AudioStream audioStream = new AudioStream(in); 

    // play the audio clip with the audioplayer class 
    AudioPlayer.player.start(audioStream); 
    } 
} 

這是我的聲音文件。爲了讓它在我的其他程序中播放,我嘗試了下面的代碼,但它不起作用。

PlaySound winn2 = new PlaySound(); 

回答

1

在你PlaySound類,創建一個名爲playSound方法,它包含的代碼播放的歌曲

public void playSound(String filename) { 
    InputStream in = new FileInputStream(filename); 
    AudioStream audioStream = new AudioStream(in); 
    AudioPlayer.player.start(audioStream); 
} 

要調用此方法的啓動,使用下面的代碼

PlaySound winn2 = new PlaySound(); 
winn2.playSound("music.wav"); 

您的代碼無法正常工作的原因是,如果您是從該類開始,則使用main()方法。如果你想運行代碼,你需要創建一個類的實例,或者使用靜態方法。

+0

我即時通訊不理解 – user3701564

+0

主要方法只有在您從該文件開始時纔會執行。如果你在你的問題中做了什麼,main()方法將不會執行。你必須把你的代碼放在公開的方法中,並從你的菜單代碼中調用它,就像在我的問題 – jluckin

+0

中一樣,所以我刪除我的音樂代碼並粘貼你寫的東西?但是我在現場文件名中填寫什麼? – user3701564