C#/。NETで記述されたWindowsアプリケーションがあります。
ボタンがクリックされたときに特定のサウンドを再生するにはどうすればよいですか?
次を使用できます。
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
SystemSound を使用できます(例:System.Media.SystemSounds.Asterisk.Play();
)。
これは、Windows環境にシームレスに適合したいアプリケーション向けの少し高レベルの回答です。特定のサウンドの再生に関する技術的な詳細は、他の回答で提供されました。それに加えて、常に次の2つの点に注意してください。
典型的なシナリオで5つの標準システムサウンドを使用する、つまり.
アスタリスク-現在のイベントを強調したいときに再生します
Question-質問を再生します(システムメッセージボックスウィンドウがこれを再生します)
感嘆符-感嘆符アイコンで再生(システムメッセージボックスウィンドウでこれを再生)
ビープ音(デフォルトのシステムサウンド)
Critical stop( "Hand")-エラーで再生(システムメッセージボックスウィンドウでこれを再生)
クラス System.Media.SystemSounds
のメソッドはそれらを再生します。
Soundコントロールパネルでユーザーがカスタマイズ可能な他のサウンドを実装する
コードを鳴らすと、mp3ファイルとメモリ内のwaveファイルも再生できます
player.FileName = "123.mp3";
player.Play();
from http://alvas.net/alvas.audio,samples.aspx#sample6 または
Player pl = new Player();
byte[] arr = File.ReadAllBytes(@"in.wav");
pl.Play(arr);
C#を使用してWindowsフォームでオーディオファイルを再生するには、次のような簡単な例を確認しましょう。
1.Go Visual Studio(VS-2008/2010/2012)-> [ファイル]メニュー-> [新しいプロジェクト]をクリックします。
2.新規プロジェクト-> Windowsフォームアプリケーション->名前の入力をクリックして、OKをクリックします。
新しい「Windows Forms」プロジェクトが開きます。
3.ツールボックスからWindowsフォームにボタンコントロールをドラッグアンドドロップします。
4.ボタンをダブルクリックして、デフォルトのClickイベントハンドラーを自動的に作成し、次のコードを追加します。
このコードは、[ファイルを開く]ダイアログボックスを表示し、次の手順で作成する "playSound"という名前のメソッドに結果を渡します。
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "Audio Files (.wav)|*.wav";
if(dialog.ShowDialog() == DialogResult.OK)
{
string path = dialog.FileName;
playSound(path);
}
5. button1_Clickイベントハンドラーの下に次のメソッドコードを追加します。
private void playSound(string path)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = path;
player.Load();
player.Play();
}
6.では、F5キーを押してコードを実行するだけで、アプリケーションを実行しましょう。
7.ボタンをクリックして、音声ファイルを選択します。ファイルがロードされると、サウンドが再生されます。
これが初心者にとって有用な例であることを願っています...
最初に.wavファイルをリソースに追加する必要があると思います。たとえば、Sound.wavという名前のサウンドファイルがあります。 Sound.wavファイルをリソースに追加したら、次のコードを使用できます。
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
これはサウンドを再生する別の方法です。