다이얼로그 동적 생성은 쉽다. 알고보니 말이다.
1. 우선 프로젝트 리소스에 다이얼로그를 추가한다.
2. 해당 다이얼로그에 대해 클래스를 추가 및 연결한다.
3. 원하는 위치에 다음과 같은 소스를 추가한다.
==> 상황 : 메인프로그램에서 버튼 클릭이 발생한 경우, 다이얼로그 동적 생성
위에서 미리 만들어둔 다이얼로그 클래스가 이름이 MyDlg, 다이얼로그 ID가 IDD_MYDIALOG라고 했을 때,
1. <MainFrame.h>에 #include "MyDlg.h"를 추가
에 MyDlg *testDlg; //포인터 변수 추가
2. <MainFrame.cpp>파일에서 생성자에 초기화
ex)
CMainFrame::CMainFrame(){
testDlg = NULL; //초기화.. 안해줘도 뭐;;
}
3. <MainFrame.cpp>파일의 버튼클릭에 관한 해당 이벤트 함수 안에서
ex)
void CMainFrame::OnButtonClick()
{
testDlg = new MyDlg;
testDlg->Create(IDD_MYDIALOG);
testDlg->ShowWindow(SH_SHOW);
}
CMainFrame::~CMainFrame()
{
if(testDlg)
{
delete testDlg;
testDlg = NULL;
}
}
끝~
출처 : http://blog.naver.com/delight0408?Redirect=Log&logNo=140155298992
'old drawer > C, C++, MFC' 카테고리의 다른 글
[MFC] 다이얼로그에 CView 동적 생성 (0) | 2012.07.20 |
---|---|
[MFC] 버튼의 동적생성 (0) | 2012.07.20 |
[MFC] CEdit 입력 제어 (0) | 2012.07.19 |
[MFC] SetWindowPos() 윈도우 위치 및 크기 등의 변경 (0) | 2012.07.19 |
[MFC] CString <-> char* / int (0) | 2012.07.13 |