5.2.1 새 대화 상자를 만드는 순서
5.1절에서 BMP 파일을 불러와서 깔끔하게 화면에 출력하는 방법에 대해 설명하였다. 그러나 만약 ImageTool 프로그램에서 [파일] > [새로 만들기] 메뉴를 선택할 경우, m_Dib가 비트맵 객체를 가지고 있지 않은 상태이므로 뷰 클래스에서 화면 출력이 정상적으로 이루어지지 않는다. 그러므로 이 절에서는 [새로 만들기] 메뉴 선택 시, 대화 상자를 이용하여 새로 만들 영상의 가로 및 세로 크기, 영상의 종류(그레이스케일 또는 트루컬러)를 입력 받아 새 비트맵 영상을 만드는 방법을 설명할 것이다.
사실 이 책에서 소개하는 ImageTool 프로그램이 새 영상을 만들어서 특별한 작업을 수행하지는 않을 것이다. 그럼에도 굳이 대화 상자까지 띄워서 새 영상을 만드는 작업을 하려는 이유는 대화 상자를 다루는 방법을 설명하기 위함이다. 이 책에서는 상당히 자주 대화 상자를 띄워서 사용자의 입력을 받을 것이며, 이를 위해 대화 상자를 추가하고 사용하는 방법에 익숙해질 필요가 있다. 그러므로 이 절에서 대화 상자를 추가하고 사용하는 방법에 대해 자세히 설명하고, 실제 영상 처리 알고리즘 구현 시에는 대화 상자 제작에 대한 설명을 다소 줄이려고 한다.
대화 상자 하나를 만들기 위해서는 일반적으로 다음의 순서를 따른다.
① 새 대화 상자 추가
② 대화 상자 디자인(컨트롤 배치)
③ 대화 상자에 대한 클래스 추가
④ 대화 상자 컨트롤에 대한 멤버 변수 추가
⑤ 대화 상자 및 컨트롤 초기화(생성자 및 OnInitDialog 함수)
⑥ 컨트롤 동작 제어(이벤트 처리)
이 절에서 추가할 영상 새로 만들기 대화 상자는 비교적 단순한 대화 상자이기 때문에 위에서 설명한 여섯 가지 항목 중에서 ①~④번 항목까지의 작업만으로 충분하다. 추후 좀 더 복잡한 대화 상자를 만들게 될 때 ⑤번과 ⑥번 항목의 작업을 다시 소개하도록 하겠다.