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)

트랙백 주소 : http://lsujang.egloos.com/tb/757636
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶