2007년 01월 02일
MFC에서 각 오브젝트 포인터 얻기
|| SDI 형태 ||
1. MainFrame 얻기
CMainFrame *pFrame = (CMainFrame *) AfxGetMainWnd();
2. App 포인터 얻기
CTestApp *pApp = (CtestApp *) AfxGetApp();
3. Document 포인터 얻기
CMainFrame *pFrame = (CMainFrame *)AfxGetMainWnd();
CTestDoc *pDoc = (CTestDoc *)pFrame->GetActiveDocument();
or
CTestDoc *pDoc = (CTestDoc *)
((CMainFrame *)AfxGetMainWnd())->GetActiveDocument();
4. View 포인터 얻기
CMainFrame *pFrame = (CMainFrame *)AfxGetMainWnd();
CTestView *pView = (CTestView *)pFrame->GetActiveView();
or
CTestView *pView = (CTestDoc *)((CMainFrame *)AfxGetMainWnd())->GetActiveView();
|| MDI 형태 ||
1. ChildFrame 포인터 얻기
CMainFrame *pFrame = (CMainFrame *)AfxGetMainWnd();
CChildFrame *pChild = (CChildFrame *)pFrame->GetActiveFrame();
or
CChildFrame *pChild = (CChildFrame *pChild)
((CMainFrame *)AfxGetMainWnd())->GetActiveFrame();
2. Document 포인터 얻기
CMainFrame *pFrame = (CMainFrame)AfxGetMainWnd();
CChildFrame *pChild = (CChildFrame *)pFrame->GetActiveFrame();
CMdiTestDoc *pDoc = (CMdiTestDoc *)pChild->GetActiveDocument();
or
CMdiTestDoc *pDoc = (CMdiTestDoc *)
(((CMainFrame *)AfxGetMainWnd())->GetActiveFrame())->GetActiveDocument();
3. View 포인터 얻기
CCainFrame *pFrame = (CMainFrame)AfxGetMainWnd();
CChildFrame *pChild = (CChildFrame *)pFrame->GetActiveFrame();
CMdiTestView *pView = (CMdiTestDoc *)pChild->GetActiveView();
or
CMdiTestView *pView = (CMdiTestDoc *)
(((CMainFrame *)AfxGetMainWnd())->GetActiveFrame())->GetActiveView();
# by | 2007/01/02 13:58 | CS - 프로그래밍 | 트랙백 | 덧글(0)





☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]