我想爲我的新項目在發射器內播放一些背景音樂。但是我得到一個錯誤。從資源C播放音樂#
private void playlooping()
{
SoundPlayer.PlayLooping(system.Resources.Bgm);
}
//Bgm is the name of the song.
出於某種原因,我得到
沒有重載方法 'PlayLooping' 需要1個參數
我想爲我的新項目在發射器內播放一些背景音樂。但是我得到一個錯誤。從資源C播放音樂#
private void playlooping()
{
SoundPlayer.PlayLooping(system.Resources.Bgm);
}
//Bgm is the name of the song.
出於某種原因,我得到
沒有重載方法 'PlayLooping' 需要1個參數
正如我在評論,PlayLooping does not take any arguments
提到的錯誤。所以你需要指定你想在其他地方播放的聲音。
// via string path
var soundPlayer = new SoundPlayer(@"C:\somePath\someFile.wav");
// via stream
var soundPlayer = new SoundPlayer(musicStream);
所以,如果你的資源是你要善於去同一個字符串:
var soundPlayer = new SoundPlayer(system.Resources.Bgm);
選擇是設置字符串這可通過經SoundPlayer
-Constructor這樣的設置來實現實例化後-path或流您通過Site
SoundPlayer
- 你SoundPlayer
對象或Stream
-Properties:
var soundPlayer = new SoundPlayer();
// via path
soundPlayer.Site = @"C:\path\test.wav";
// via stream
soundPlayer.Stream = someStream;
將此設置爲正確後,您應該打電話給PlayLooping
。因此,最終的代碼應該看起來像這樣(在測試窗口對我的作品形成了應用程序,只要簡單地把我的debug文件夾中的音效檔):
var soundPlayer = new SoundPlayer("test.wav");
soundPlayer.PlayLooping();
您在這裏可以找到的SoundPlayer
完整的文檔:https://msdn.microsoft.com/en-us/library/system.media.soundplayer(v=vs.110).aspx
好的,我替換SoundPlayer.PlayLooping(system.Resources.Bgm);與var soundPlayer = new SoundPlayer(system.Resources.Bgm);線。好事是錯誤消失了。壞事是。我仍然沒有聽到音樂,當我啓動應用 –
以及你仍然應該調用'soundPlayer.PlayLooping()':) –
「soundplayer不包含PLaylooping的定義」? –
它基本上意味着你不能只用一個或任何參數調用'PlayLooping'。查看文檔[這裏](https://msdn.microsoft.com/en-us/library/tbx06asw(v = vs.110).aspx),你可以看到'PlayLooping'沒有任何參數。也許[這](http://stackoverflow.com/questions/4125698/how-to-play-wav-audio-file-from-resources)答案可以幫助你。 –
那麼我如何將我的音樂文件分配給播放器。我如何告訴它播放我想要的文件 –
是您的資源的音頻文件或音頻文件本身的路徑? –