MFC TIP
[MFC]단일문서(SDI),다중문서(MDI),대화 상자 기반(Dialog)의 초기 처리
띠리
2007. 4. 24. 12:39
윈도우가 뜨기 전에 해야할 작업이 있을 때가 있다.
윈도우가 뜨기 시작할 때 호출되는 함수는 단일문서(SDI), 다중문서(MDI)와 같은 함수가 호출되지만 대화 상자 기반(Dialog)의 경우는 다른 함수가 호출된다.
- - - - - - - - - - - - - - -
◆ 단일문서(SDI), 다중문서(MDI)
View가 Document에 처음으로 연결된후, View가 처음 뜨기전에 호출 되어짐
C***View파일
void CStartProcessView::OnInitialUpdate()
{
// :
// :
// :
}
OnInitialUpdate()와 디폴트로 선언되지 않으므로 C***View.cpp와 C***View.h파일에 추가할 필요가 있음
- - - - - - - - - - - - - - -
◆ 대화 상자 기반(Dialog)
WM_INITDIALOG 메세지의 의해 호출 되어짐
C***Dlg파일
BOOL CsandglassDlg::OnInitDialog()
{
// :
// :
// :
}
- - - - - - - - - - - - - - -
VB에서 말하자면 Form Load 정도 될 것같다.
프로그램이 기동되어 윈도우가 표시될 때
단일문서(SDI), 다중문서(MDI)는 OnDraw(CDC* /*pDC*/)가 호출되고
대화 상자 기반(Dialog)은 OnPaint()가 호출 된다.
OnDraw나 OnPaint는 윈도우가 재표시될때도 호출되어진다.
- - - - - - - - - - - - - - -
프로그램이 기동되어 윈도우가 표시될 때
단일문서(SDI), 다중문서(MDI)는 OnDraw(CDC* /*pDC*/)가 호출되고
대화 상자 기반(Dialog)은 OnPaint()가 호출 된다.
OnDraw나 OnPaint는 윈도우가 재표시될때도 호출되어진다.