프로그래밍/MFC2011. 5. 24. 22:53

대화상자를 열어놓고 다른작업을 같이 할수 있음.

 

// MainFrm.h : interface of the CMainFrame class

#include "modellessdlg.h"  // 대화상자 만든 클래스

class CMainFrame : public CFrameWnd
{
 
public:
 //생성
 CModalDialog *m_pDlg;

}

 

 

// 생성자

CMainFrame::CMainFrame()
{
 // TODO: add member initialization code here
 // 초기화
 m_pDlg = NULL;
}

 

 

// 모달리스 대화상자를 여는 메뉴 선택시

void CMainFrame::OnAdd()
{
 // TODO: Add your command handler code here

 if( m_pDlg != NULL )
 {
  //대화상자가 출력해 있음.
  m_pDlg->SetFocus();

  // SetFocus() 윈도우 창을 선택!(커서)
 }
 else
 {
  //처음 대화상자를 열때!
  m_pDlg =  new CModalDialog;
  m_pDlg->Create( IDD_MODELESS, this );
  m_pDlg->ShowWindow( SW_SHOW );
 }
}

 

 

 

void modellessdlg::OnClose()
{
 // TODO: Add your message handler code here and/or call default
 DestroyWindow(); // 윈도우 창 없앰


// CDialog::OnClose(); // <= 이거 주석처리 해야됨
}

 

//대화상자에 닫기를 눌렀을때!

{

 DestroyWindow(); // 윈도우 창 없앰

}

 

 

 

void modellessdlg::PostNcDestroy()
{
 // TODO: Add your specialized code here and/or call the base class

 (( CMainFrame* )AfxGetMainWnd())->m_pDlg = NULL;
 delete this;
 
 CDialog::PostNcDestroy();
}

'프로그래밍 > MFC' 카테고리의 다른 글

MFC wave 재생시키기  (0) 2011.05.28
MFC CString 멤버 함수  (0) 2011.05.25
[MFC] 다른 클래스로 접근하는 방법  (0) 2011.05.21
MFC 소켓프로그래밍 순서  (0) 2011.05.17
CAstncSocket 클래스의 주요 함수  (0) 2011.05.16
Posted by 건깡