6단계: SoundPlayer 추가
이제 미로 게임에 몇 가지 소리를 추가합니다.사용자가 벽을 건드려 시작 위치로 되돌아갈 때 나는 소리와 사용자가 이겼을 때 나는 소리를 다르게 설정해야 합니다.이 단계에서는 마우스 포인터가 벽에 닿을 때 나는 소리를 추가합니다.이 작업은 복잡하게 보일 수 있지만 몇 줄의 코드만 추가하면 됩니다.
이 항목에 대 한 비디오 버전을 자습서 2: 미로 Visual Basic-비디오 4 만들기 또는 연습 과제 2: 미로 C#에서-4 비디오 만들기.
SoundPlayer를 추가하려면
먼저 생성자 바로 위에 있는 폼의 코드에 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)은 이전에 여러 번 나타났었습니다.이 코드 줄은 클래스 키워드를 포함하고 있으므로 중요합니다.클래스가 프로그램의 기본 빌딩 블록이기 때문에 클래스 키워드는 여러 번 나타납니다.
이전에는 MessageBox.Show("Congratulations!"); 문의 MessageBox 단어 위에 마우스 포인터를 놓으면 IDE가 도구 설명을 열도록 했습니다.이번에도 이렇게 하지만 다음과 같은 첫 번째 줄을 자세히 살펴봅니다.
도구 설명
[!참고]
클래스 키워드는 첫 번째 줄에 표시됩니다.클래스 키워드는 여러 번 나타나는데, 이는 프로그램에 클래스가 포함되고, 각 클래스에 메서드가 포함되고, 각 메서드에 문이 포함되는 방식으로 코드가 클래스로 구성되어 있기 때문입니다.MessageBox와 같은 많은 기본 제공 클래스가 있습니다.MessageBox 클래스는 Show()라는 메서드를 포함하며, 호출될 경우 메시지 상자를 여는 문을 실행합니다.이외에도 Button, Label 및 Panel 클래스가 있습니다.이러한 클래스의 속성을 설정할 때는 클래스의 또 다른 측면을 알고 있어야 합니다. 클래스에는 메서드뿐 아니라 속성도 있는데, 이러한 속성을 설정하면 클래스가 동작을 변경하는 문을 실행할 수 있습니다.
SoundPlayer는 소리를 재생하는 클래스입니다.new 키워드를 사용하여 SoundPlayer 클래스를 만들면 이 클래스는 Play() 메서드를 사용하여 재생할 수 있는 소리를 파일에서 로드합니다.이 SoundPlayer는 플레이어가 새 게임을 시작하거나 플레이어가 마우스 포인터로 벽을 건드려 게임을 처음부터 다시 시작해야 할 때 Windows Chord 소리를 재생하는 데 사용됩니다.따라서 이 클래스를 startSoundPlayer라고 합니다.
다른 소리를 사용하려면 새 문에서 큰따옴표 사이에 있는 경로(C:\Windows\Media\chord.wav)를 사용할 소리 파일의 경로로 바꿉니다.
Windows Forms 디자이너에서 폼을 빌드할 때 IDE를 사용하면 이 클래스에서 Form1이라는 사용자 고유의 클래스를 손쉽게 만들 수 있습니다.이 코드 줄을 생성자 위에 추가할 때는 이전에 단추나 레이블을 추가할 때처럼 폼에 새 SoundPlayer를 추가합니다.이 문이 메서드 외부에 있기 때문에 둘 이상의 메서드에서 SoundPlayer에 액세스할 수 있습니다.이러한 이유 때문에 새 문은 폼 코드 내부와 메서드 외부에 추가해야 합니다.이 클래스의 이름을 startSoundPlayer로 지정한 것처럼 Label 컨트롤 중 하나의 이름을 finishLabel로 지정했습니다.
이 문을 추가하여 새 SoundPlayer를 만들고 이름을 startSoundPlayer로 지정하면 이 클래스는 레이블, 단추 및 기타 컨트롤과 마찬가지로 IntelliSense 창에 나타납니다.
이 작업은 복잡하게 보일 수 있지만 이전에 IDE에서 수행한 작업과 비슷합니다.예를 들어 IDE의 도구 상자를 사용하여 폼에 단추나 레이블을 추가하면 IDE에서 새 단추나 새 레이블을 만드는 데 사용되는 코드 줄을 자동으로 추가합니다.이번에도 SoundPlayer를 만든다는 것만 제외하고 이와 동일합니다.두 번째 SoundPlayer는 다음 자습서 단계에서 만듭니다.
계속하거나 검토하려면
다음 자습서 단계로 이동하려면 7단계: 소리 재생을 위해 폼에 코드 추가를 참조하십시오.
이전 자습서 단계로 돌아가려면 5단계: 각 옆면에 대한 MouseEnter 이벤트 처리기 추가를 참조하십시오.