본문 바로가기

프로그래밍/MFC

윈도우 프로그램이 종료될때 나타나는 메시지 순서 (OnClose-> OnDestroy -> DestroyWindow)





윈도우 프로그램 이 종료될 때

다음의 순서대로 메시지가 나타납니다.

1. WM_CLOSE ( OnClose )
2. DestroyWindow ( DestroyWindow )
3. WM_DESTROY ( OnDestroy )


소스로 보시면 ...

void CMainDlg::OnClose()
{
      CDialog::OnClose();
 
      TRACE("First : OnClose!\n");

     return;   //<-- 이부분이 윈도우를 살릴 수 있는 마지막 부분입니다.
      CDialog::OnClose(); 
}

BOOL CMainDlg::DestroyWindow()
{
      TRACE("Second : DestroyWindow!\n");
 
      return CDialog::DestroyWindow();
}

void CMainDlg::OnDestroy()
{
      CDialog::OnDestroy();
 
      TRACE("Third : OnDestroy!\n");
 
}

위순서에 따라서 프로그램 코딩에 유의하시면 되겠습니다^^