共用方式為


步驟 6:加入 SoundPlayer

接下來,將您的迷宮遊戲加上一些音效。 當使用者碰觸到圍牆並回到起點時應該播放一種音效,當使用者過關時應該播放另一種音效。 在這個步驟中,您要加入當滑鼠指標碰觸到圍牆時所播放的音效。 雖然看似複雜,但實際只需要幾行程式碼而已。

視訊的連結本主題的影像版本,請參閱教學課程 2: Visual Basic-視訊 4 中建立,當然 或 教學課程 2: 建立,當然在 C#-視訊 4。

若要加入發出音效的 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 關鍵字會出現許多次,因為 class 是任何程式的基本建置組塊。

  2. 稍早,您將滑鼠指標移至陳述式 MessageBox.Show("Congratulations!"); 中的 MessageBox 這個字上,使得 IDE 開啟工具提示。 現在再做一次這個動作,但仔細查看第一行,如下所示。

    Tooltip

    工具提示

    注意事項注意事項

    class 關鍵字出現在第一行。它會經常出現,因為程式碼是以類別來組織,如下所示:程式具有類別、每個類別具有方法、每個方法具有陳述式。有許多內建的類別,例如 MessageBoxMessageBox 類別具有一個稱為 Show() 的方法,呼叫此方法時,它會執行陳述式來開啟訊息方塊。您也已使用過 ButtonLabelPanel 類別。當您設定它們的屬性時,您是以另一種觀點來使用類別:類別可以具有屬性和方法,而設定這些屬性可讓類別執行陳述式來變更行為。

    您可以看出,SoundPlayer 是播放音效的類別。 當您使用 new 關鍵字建立 SoundPlayer 時,它會從檔案載入音效,而您可以使用 Play() 方法來播放此音效。 當玩家啟動新的遊戲,或當指標碰觸到圍牆造成玩家必須重新開始時,您將會使用此 SoundPlayer 來播放 Windows 弦樂音效 (所以才稱為 startSoundPlayer)。

  3. 如果您想要使用不同的音效,請在新陳述式中將引號之間的路徑 (C:\Windows\Media\chord.wav) 改為您要使用的音效檔的路徑。

    當您在 [Windows Form 設計工具] 中建置表單時,您可以利用 IDE 來協助您建立自己的類別,在這個案例中是一個稱為 Form1 的類別。 當您在建構函式上方加入那一行程式碼時,即已將新的 SoundPlayer 加入至表單,就像您先前加入按鈕或標籤一樣。 因為陳述式位於方法的外面,所以 SoundPlayer 可供多個方法存取。 這就是為何必須將新的陳述式放在表單程式碼內且在方法外的原因。 您將它重新命名為 startSoundPlayer,就像您將其中一個 Label 控制項命名為 finishLabel 一樣。

    加入陳述式來建立新的 SoundPlayer 並命名為 startSoundPlayer 之後,它就會出現在 [IntelliSense] 視窗中,就像標籤、按鈕和其他控制項一樣。

    這看似複雜,但很類似您先前在 IDE 中的做法。 例如,當您使用 IDE 的 [工具箱] 將按鈕或標籤加入至表單時,IDE 會自動加入用來建立新按鈕或新標籤的程式碼行。 現在也是相同的做法,只是這一次是建立 SoundPlayer (在下一個教學課程步驟中會建立第二個 SoundPlayer)。

若要繼續或檢視