次の方法で共有


手順 6: SoundPlayer の追加

次に、迷路ゲームにサウンドをいくつか追加します。ユーザーが壁に触れてスタート地点に戻されたときとユーザーがゴールしたときに、それぞれ異なるサウンドが再生されるようにします。この手順では、マウス ポインターが壁に触れたときに再生されるサウンドを追加します。複雑に思えるかもしれませんが、必要なコードは数行だけです。

ビデオへのリンクこのトピックのビデオ版については " " を参照してください。

ノイズの SoundPlayer を追加するには

  1. まず、フォームのコードで、コンストラクターのすぐ上に SoundPlayer を追加します。

    Public Class Form1
    
        ' This SoundPlayer plays a sound whenever the player hits a wall.
        Private startSoundPlayer = New System.Media.SoundPlayer("C:\Windows\Media\chord.wav")
    
        Public Sub New()
            ' This call is required by Windows Forms Designer.
            InitializeComponent()
            ' Add any initialization after the InitializeComponent() call.
            MoveToStart()
        End Sub
    
    public partial class Form1 : Form
    {
        // This SoundPlayer plays a sound whenever the player hits a wall.
        System.Media.SoundPlayer startSoundPlayer = new System.Media.SoundPlayer(@"C:\Windows\Media\chord.wav");
    
        public Form1()
        {
            InitializeComponent();
            MoveToStart();
        }
    

    [!メモ]

    最初の行 (public partial class Form1 : Form) は、これまでにも何度か見てきました。この行で重要なのは、class キーワードが含まれていることです。class キーワードは何度も使用されますが、これはどのプログラムにおいてもクラスが基本のビルド ブロックであるからです。

  2. 前の手順で、MessageBox.Show("Congratulations!"); というステートメントの MessageBox という単語の上にマウス ポインターを置いて、IDE のツールヒントを開きました。ここで、もう一度同じようにして、最初の行 (次の図を参照) について詳しく見てみましょう。

    Tooltip

    Tooltip

    [!メモ]

    最初の行には class キーワードが表示されています。これが頻繁に使用されるのは、コードはクラスにまとめられるからです。プログラムにクラスが含まれ、各クラスにメソッドが含まれ、各メソッドにステートメントが含まれます。多数の組み込みクラスがあり、MessageBox もその 1 つです。MessageBox クラスには、Show() というメソッドがあり、このメソッドを呼び出すと、メッセージ ボックスを開くステートメントが実行されます。そのほかにも、Button クラス、Label クラス、および Panel クラスを使用しました。それらのクラスでは、クラスのもう 1 つの側面であるプロパティの設定を行いました。クラスにはメソッドだけでなくプロパティも含めることができ、それらのプロパティを設定することで、動作を変更するステートメントをクラスで実行することができます。

    この手順で作成する SoundPlayer もサウンドを再生するクラスです。SoundPlayer を new キーワードを使用して作成すると、ファイルからサウンドが読み込まれ、その Play() メソッドを使用して再生することができます。この SoundPlayer を使用して、プレーヤーが新しいゲームを開始するとき、つまりポインターが壁に触れてスタート地点からやり直しになったときに、Windows の Chord サウンドを再生します (startSoundPlayer という名前にしたのはそのためです)。

  3. 別のサウンドを使用する場合は、新しいステートメントの引用符で囲まれたパス (C:\Windows\Media\chord.wav) を、使用するサウンド ファイルのパスに置き換えます。

    Windows フォーム デザイナーでフォームを作成する場合、IDE を使用して独自のクラス (ここでは、Form1 というクラス) を作成できます。コンストラクターの上にそのコード行を追加すると、前にボタンやラベルを追加したときと同じように、新しい SoundPlayer がフォームに追加されます。ステートメントはメソッドの外にあるため、複数のメソッドから SoundPlayer にアクセスできます。新しいステートメントをフォームのコード内のメソッドの外に記述する必要があるのはそのためです。Label コントロールの 1 つに finishLabel という名前を付けたのと同じ方法で、そのステートメントに startSoundPlayer という名前を付けています。

    新しい SoundPlayer を作成するステートメントを追加し、startSoundPlayer という名前を付けると、ラベルやボタンなどのコントロールと同じように、IntelliSense ウィンドウに表示されるようになります。

    複雑に思えるかもしれませんが、IDE で前に実行した手順と同様です。たとえば、IDE のツールボックスを使用してボタンまたはラベルをフォームに追加すると、新しいボタンまたは新しいラベルの作成に使用されるコード行が IDE で自動的に追加されます。作成するものが SoundPlayer であることを除けば、ここでも同じことを行っています (2 つ目の SoundPlayer については、チュートリアルの次の手順で作成します)。

続行または確認するには