アプリケーションでサウンドを再生


システムを使用することができる.Mediaネーミングスペースは、アプリケーションに音声を追加します.Systemを使用します.Media.SystemSounds.Beep.Play(); ヒント音など、アプリケーションでシステム音を再生できます.
また、特定のオーディオファイルを再生することもできます.次の例では、ユーザが選択した波形オーディオファイルを再生する方法を示します.
オーディオファイルを再生
  • [ファイル](File)メニューで[新規アイテム](New Items)をクリックします.
  • [新規プロジェクト]ダイアログボックスで、[Windowsフォームアプリケーション]をクリックし、[OK]をクリックします.新しいWindowsフォームプロジェクトが開きます.
  • は、ButtonコントロールをツールボックスからWindowsフォームにドラッグします.
  • このボタンをダブルクリックして、デフォルトのClickイベントハンドラを作成し、次のコードを追加します.このコードは、[開く](Open)ダイアログボックスを表示し、次のステップで作成するplaySoundというメソッドに結果を渡します.
    C#
    OpenFileDialog dialog =
    new OpenFileDialog();
    dialog.Filter =
    "Audio Files (.wav)|*.wav";
    if(dialog.ShowDialog() == DialogResult.OK)
    {
       
    string path = dialog.FileName;
        playSound(path);
    }
  • 次のメソッドコードをbutton 1_に追加Clickイベントハンドラの下.
    C#
    private
    void playSound(
    string path)
    {
        System.Media.SoundPlayer player =
           
    new System.Media.SoundPlayer();
        player.SoundLocation = path;
        player.Load();
        player.Play();
    }
  • F 5を押してコードを実行します.
  • ボタンをクリックし、オーディオファイルを選択します.ファイルをロードすると、サウンドが再生されます.

  • 注意:SoundPlayerクラスは再生できません.wavファイル
        System.Mediaの次のSoundPlayerで音楽を再生する方法で、この方法では管理コードを使用します.
    非常に簡単に使用できます.以下で説明します.
    1.同期、非同期再生をサポート
    2.循環再生をサポート
    3.ファイルとストリーミングのサポート
     
    同期再生:
    System.Media.SoundPlayer player = new System.Media.SoundPlayer();
    player.SoundLocation = @"d:/music/happy.wav";
    player.Load();
    player.Play();

    非同期再生:
    System.Media.SoundPlayer player = new System.Media.SoundPlayer();
    player.SoundLocation = @"d:/music/happy.mid";
    player.LoadAsync();
    player.PlaySync();

    ループ再生:
    System.Media.SoundPlayer player = new System.Media.SoundPlayer();
    player.SoundLocation = @"d:/music/happy.wav";
    player.Load();
    player.PlayLooping();