본문 바로가기

Language/MFC

MFC 창 최소화 시키기(최소화시 작업)

기본적으로 MDI SDI에는 최대/최소 버튼이 존재한다.

음....제어가 확실히 먹어 들어갈듯하다. 기본적으로 가능하니까.

하지만 Dialog Base 기반은 옵션에서 선택하지 않으면 최대최소는 존재하지 않는다.

옵션에서 선택을 하여도 최소화가 않된다.

때문에 최소화도 제어를 설정해줘야하는 불편함이 있다.

OnSysCommand() 함수를 찾아보라...기본적으로 Message 함수이다.

만일 프로젝트를 만들때 DialogBase 기반의 main Dialog라면 자동으로 되어있다.

모달이나 모달리스등으로 새로 만든 Dialog면 직접 해줘라....

여기서
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
 {
  CAboutDlg dlgAbout;
  dlgAbout.DoModal();
 }
else
 {
  CDialog::OnSysCommand(nID, lParam);
 }
 가 알아서 코딩이 되어있는데....

여기서 추가를 한다.

if((nID & 0xFFF0) == SC_MINIMIZE)
{
최소화 하여 작업표시줄로 들어간후 작업...
}

코드해석은 쉬우니까 패스...