[MFC] 메시지 박스 프로그램 작성 -1

  • 최초 작성일: 2022년 2월 23일 (수)

목차

[TOC]

목적

2개의 버튼을 생성하고, 생성된 버튼을 클릭하면 새로운 창이 표시된다.


구현

프로젝트 생성

아래와 같이 MFC Application을 생성해준다. 프로젝트명은 MsgBox1로 정했다.

image


그리고, Application type (응용 프로그램 종류)는 ‘Dialog based (대화 상자 기반)’를 선택하고 [Finish] 버튼을 클릭한다.

image


다이얼로그 생성 및 설정

그러면 아래와 같은 창이 나오는데, 안 나온다면 [Ctrl]-[Shift]-[R] 혹은 [메뉴]-[보기]-[다른 창]-[리소스 뷰]를 클릭하면 된다.

image


그러면, 가운데 Dialog에 있는 모든 컨트롤들을 삭제해준다. ( [Ctrl + A] + [Delete] )

image


그런 다음, Toolbox(도구상자) 내의 Button을 끌어와 Dialog에 넣어준다.

image


버튼이 생성됐다면, 우측 마우스 클릭한 후 Properties(속성)을 눌러보자.

image


그러면 오른쪽 아래의 창이 뜰텐데, 거기서 해당 컨트롤의 속성을 변경할 수 있다.

image


버튼을 추가로 하나 더 생성하여, 다음과 같이 ID와 Caption을 변경하여 설정하자.

image

image image


함수 추가

멤버 함수를 추가하기 위해서 [메뉴]-[프로젝트]-[클래스 마법사] 또는, [Ctrl + Shift + X] 키를 눌러 [클래스 마법사]를 실행시킨다.

그럼, 아래의 창이 뜨는데 거기서 [Commands(명령)] 탭에서 Object IDs(개체ID)는 ‘IDC_BUTTON_HELLO’, Messages(메시지) 는 ‘BN_CLICKED’를 클릭한 후 Add Handler(처리기 추가)를 클릭하면 다음과 같이 [Add Member Function(멤버 함수 추가)] 창이 표시된다. 그러면 OK 버튼을 누르자.

image


그러면 보통, MsgBox1Dlg.cpp에 void CMsgBox1Dlg::OnClickedButtonHello() 함수가 생성된 곳으로 이동하여 바로 확인할 수 있는데, 아니라면 다음과 같이 [클래스 뷰]-[MsgBox1]-[CMsgBox1Dlg] 에서 OnClickedButtonHello() 찾아 더블클릭하면, 해당 코드로 이동할 수 있다.

image


위와 동일하게, Close 버튼도 똑같이 생성해주고, 아래의 코드를 각각 삽입하고 프로그램을 빌드하고 실행해보자.

image


실행 결과

image image