본문 바로가기
C & C++/MFC 컨트롤

Visual C++,MFC 에서 로그인창 띄우고 메인화면 띄우기

by izen8 2011. 11. 3.
반응형

ex)로그인창을 띄워서 OK를 누르면 메인창이 뜨고, CANCEL를 누르면 프로그램이 닫히게할려면

  ->  

 
1. 일단 로그인 다이얼로그는 만들었다고 치고 이름을 CLoginDlg라고 했다고 가정하겠습니다.

내부적으로 MainFrame까지 만들어 지고 아직 보여주지는 않는 상태에서 로그인창을 보여 주고 싶다면 ,  CWinApp에서 상속받은 CXXXApp 클래스의 BOOL CXXXApp::InitInstance() 함수에서

 m_pMainWnd->ShowWindow(SW_SHOW);
 m_pMainWnd->UpdateWindow();

같은 부분이 있을껍니다... 이것을

m_pMainWnd->ShowWindow(SW_HIDE);    로 해놓고

CLoginDlg dlg;
 if (dlg.DoModal() != IDOK )
  this->ExitInstance();
  
 else
    m_pMainWnd->ShowWindow(SW_SHOW);
    m_pMainWnd->UpdateWindow();

하면됩니다.

간단하게 말하자면 메인윈도우를 숨기고,보여주고를 IF문으로 처리한다는 뜻이되고,

 this->ExitInstance(); 명령어로 CANCEL눌렀을때 프로그램을 종료시키는 로직이 들어가고

있는겁니다 .

반응형

댓글