다음을 통해 공유


CCreateContext 구조체

프레임워크는 문서와 연결된 프레임 창과 뷰를 만들 때 구조를 사용합니다 CCreateContext .

구문

struct CCreateContext

설명

CCreateContext 는 구조체이며 기본 클래스가 없습니다.

창을 만들 때 이 구조의 값은 문서의 구성 요소를 해당 데이터 보기에 연결하는 데 사용되는 정보를 제공합니다. 만들기 프로세스의 일부를 재정의하는 경우에만 사용해야 CCreateContext 합니다.

CCreateContext 구조체에는 문서, 프레임 창, 보기 및 문서 서식 파일에 대한 포인터가 포함됩니다. 또한 만들 뷰 형식을 CRuntimeClass 식별하는 포인터도 포함됩니다. 런타임 클래스 정보 및 현재 문서 포인터는 동적으로 새 뷰를 만드는 데 사용됩니다. 다음 표에서는 각 CCreateContext 멤버를 사용할 수 있는 방법과 시기를 제안합니다.

멤버 Type 대상
m_pNewViewClass CRuntimeClass* CRuntimeClass 만들 새 보기의 입니다.
m_pCurrentDoc CDocument* 새 뷰와 연결할 기존 문서입니다.
m_pNewDocTemplate CDocTemplate* 새 MDI 프레임 창 만들기와 관련된 문서 서식 파일입니다.
m_pLastView CView* 분할자 창 보기를 만들거나 문서에서 두 번째 보기를 만들 때와 같이 추가 보기를 모델링하는 원래 보기입니다.
m_pCurrentFrame CFrameWnd* 문서에서 두 번째 프레임 창을 만들 때와 같이 추가 프레임 창이 모델링되는 프레임 창입니다.

문서 서식 파일은 문서 및 관련 구성 요소를 만들 때 구조에 저장된 정보의 유효성을 CCreateContext 검사합니다. 예를 들어 존재하지 않는 문서에 대한 뷰를 만들 수 없습니다.

참고 항목

모든 포인터는 CCreateContext 선택 사항이며 지정되지 않거나 알 수 없는 경우일 NULL 수 있습니다.

CCreateContext 는 "참고 항목"에 나열된 멤버 함수에서 사용됩니다. 이러한 함수를 재정의하려는 경우 이러한 함수에 대한 설명을 참조하세요.

다음은 몇 가지 일반적인 지침입니다.

  • 창 만들기에 대한 인수로 전달되는 경우(예 CWnd::Create: , CFrameWnd::CreateCFrameWnd::LoadFrame) 만들기 컨텍스트는 새 창에 연결해야 하는 항목을 지정합니다. 대부분의 창에서 전체 구조체는 선택 사항이며 포인터를 NULL 전달할 수 있습니다.

  • 재정의 가능한 멤버 함수(예: CFrameWnd::OnCreateClient인수)의 CCreateContext 경우 인수는 선택 사항입니다.

  • 뷰 만들기와 관련된 멤버 함수의 경우 뷰를 만들기에 충분한 정보를 제공해야 합니다. 예를 들어 분할자 창의 첫 번째 보기에서는 뷰 클래스 정보와 현재 문서를 제공해야 합니다.

일반적으로 프레임워크 기본값을 사용하는 경우 무시할 CCreateContext수 있습니다. 고급 수정을 시도하면 Microsoft Foundation 클래스 라이브러리 소스 코드 또는 VIEWEX와 같은 샘플 프로그램이 안내합니다. 필수 매개 변수를 잊어버린 경우 프레임워크 어설션은 잊어버린 내용을 알려줍니다.

자세한 CCreateContext내용은 MFC 샘플 VIEWEX를 참조하세요.

요구 사항

헤더: afxext.h

참고 항목

계층 구조 차트
CFrameWnd::Create
CFrameWnd::LoadFrame
CFrameWnd::OnCreateClient
CSplitterWnd::Create
CSplitterWnd::CreateView
CWnd::Create