1

我正在制作一个钢琴应用程序,其中每个键都播放不同的.wav文件。例如,如果C按下音符,则C.wav播放。

到目前为止,我只设法使用屏幕截图中的代码播放了一个 wav 文件,否则找不到该文件。但是,这种方法不适合我正在尝试做的事情。我尝试播放的 wav 文件被调用hello.wav,并且我已经提供了位置。有什么建议么?

这是当前代码:

SoundPlayer sp = new SoundPlayer(PianoApp.Properties.Resources.Hello);
sp.Play();

或者在我的 IDE 中显示:

当前代码

这是文件位置:

文件位置

4

2 回答 2

0

如果您的问题是在应用程序的输出文件夹中查找文件,则只需在“属性”窗口中将“复制到输出目录”选项设置为“始终复制”。但是,如果您想将它们保留在资源中,那么您也可以Properties.Resources.ResourceManager.GetStream("audioResourceName")根据按下的特定键名来获取您的音频文件。因此,您应该相应地命名所有资源。

于 2016-11-06T11:46:01.577 回答
0

我,

将文件 .wav 添加到项目的资源中,名称为 mySoundFile,代码如下

 Stream str = Properties.Resources.mySoundFile;
 SoundPlayer snd = new SoundPlayer(str);
 snd.Play();

具有多个 .wav 资源

 Stream str1 = Properties.Resources.mySoundFile1;
 Stream str2 = Properties.Resources.mySoundFile2;

 RecordPlayer rp = new RecordPlayer();
 rp.Open(new WaveReader(str1));
 rp.Play();

 rp.Open(new WaveReader(str2));
 rp.Play();
于 2016-11-06T12:03:12.570 回答