반응형
modaless의 경우 대화상자가 떠있는 상태에서 얼마든지 다른 작업을 할 수 있다.
modal의 경우 대화상자가 닫히기 전까지 다른 작업을 할 수 없다.
modal 형태로 창을 띄우는 것은
CShapeDlg dlg;
dlg.DoModal(); // 이런 형태로 창을 띄우는 것이다.
modal로 창을 띄우는 경우, 이 창을 먼저 해결해야 부모 창으로 돌아갈 수 있다.
그리고 modaless 형태로 창을 띄우는 것은
CShapeDlg *dlg;
dlg = new CShapeDlg(); //혹은 CShapeDlg(this); 등으로 초기화 한 후
dlg->Create(IDD_SHAPE, NULL) //혹은 Create(IDD_SHAPE, DesktopWindow()); 등을 써서 만들어주고,
dlg->ShowWindow(SW_SHOW) //혹은 dlg->ShowWindow(SW_SHOWNA); 등등 으로 창을 띄워주면 된다.
//initDialog등을 처리해주고싶다면
dlg->PostMessage(WM_INITDIALOG)
dlg->SendMessage(WM_CLOSE) //등을 넣어서 창을 닫아 줄 수 있다.
'Study Note > Programming' 카테고리의 다른 글
[OpenCV] 설치 및 설정 (VS) (0) | 2017.01.06 |
---|---|
[MFC] assert() 함수 (1) | 2016.11.22 |
메모리 관리 문제 (1) | 2016.11.22 |
[MFC] 원하는시간에 원하는 업무 수행하는 OnTimer() (0) | 2016.11.19 |
[MFC] 컨트롤 신호에 대한 메시지 맵을 처리하는 OnNotify() (0) | 2016.11.19 |