本實例將使用System.Media.SoundPlayer類播放聲音,所以先準備PCM 波形文件的聲音文件。在源程序的下載包裏有提供。本實例選用ringin.wav 文件。
一、添加聲音資源
使用Visual Studio新建一個WinForm項目,將窗體命名爲MainForm。在“解決方案資源管理器”面板裏,打開Properties文件夾,雙擊資源文件“Resources.resx”。
在打開的頁面點擊“添加資源”右邊的箭頭後選擇“添加現有文件...”。
在彈出對話框中選擇聲音文件。這樣就把聲音資源文件添加到程序集了。
二、播放聲音文件
接下來就是在窗體裏播放剛纔添加的聲音文件了。首先在窗體類裏,定義一個播放器,代碼如下:
SoundPlayer SoSoftPlayer= new SoundPlayer();
記得添加引用:using System.Media;
在窗體的構造方法裏,加入指定聲音文件的代碼:
public MainForm() { InitializeComponent(); SoSoftPlayer.Stream = Properties.Resources.Ringin; }
在窗體上添加兩個按鈕,一個“播放"、一個“停止”。再添加一個提示標籤,命名爲label_Tips,Text設置爲“點擊播放按鈕開始播放聲音”。
在播放按鈕的點擊事件裏,加入播放代碼:
SoSoftPlayer.PlayLooping();//在新線程中循環播放sosoft.cnblogs.com label_Tips.Text = "音頻正在播放中...";
在停止按鈕的點擊事件裏,加入停止代碼:
SoSoftPlayer.Stop(); label_Tips.Text = "點擊播放按鈕開始播放聲音";
行了,按F5運行。
下面是MainForm.cs 的代碼:
/* 柔城 2012-09-21 * sosoft.cnblogs.com */ using System; using System.Media; using System.Windows.Forms; namespace Sosoft.Cnblogs.Com { public partial class MainForm : Form { SoundPlayer SoSoftPlayer = new SoundPlayer(); public MainForm() { InitializeComponent(); SoSoftPlayer.Stream = Properties.Resources.Ringin; } private void button_Play_Click(object sender, EventArgs e) { SoSoftPlayer.PlayLooping();//在新線程中循環播放sosoft.cnblogs.com label_Tips.Text = "音頻正在播放中..."; } private void button_Stop_Click(object sender, EventArgs e) { SoSoftPlayer.Stop(); label_Tips.Text = "點擊播放按鈕開始播放聲音"; } } }