다음을 통해 공유


CDocument 수업

사용자 정의 문서 클래스에 대한 기본 기능을 제공합니다.

구문

class CDocument : public CCmdTarget

멤버

공용 생성자

속성 설명
CDocument::CDocument CDocument 개체를 생성합니다.

공용 메서드

이름 설명
CDocument::AddView 문서에 보기를 첨부합니다.
CDocument::BeginReadChunks 청크 읽기를 초기화합니다.
CDocument::CanCloseFrame 고급 재정의 가능; 이 문서를 보는 프레임 창을 닫기 전에 호출됩니다.
CDocument::ClearChunkList 청크 목록을 지웁니다.
CDocument::ClearPathName 문서 개체의 경로를 지웁니다.
CDocument::DeleteContents 문서 정리를 수행하기 위해 호출됩니다.
CDocument::FindChunk 지정된 GUID가 있는 청크를 찾습니다.
CDocument::GetAdapter 인터페이스를 구현하는 개체에 대한 포인터를 반환합니다 IDocument .
CDocument::GetDocTemplate 문서 형식을 설명하는 문서 서식 파일에 대한 포인터를 반환합니다.
CDocument::GetFile 원하는 CFile 개체에 대한 포인터를 반환합니다.
CDocument::GetFirstViewPosition 뷰 목록에서 첫 번째 위치의 위치를 반환합니다. 반복을 시작하는 데 사용됩니다.
CDocument::GetNextView 문서와 연결된 뷰 목록을 반복합니다.
CDocument::GetPathName 문서 데이터 파일의 경로를 반환합니다.
CDocument::GetThumbnail 썸네일 공급자가 썸네일을 표시하는 데 사용할 비트맵을 만들기 위해 호출됩니다.
CDocument::GetTitle 문서의 제목을 반환합니다.
CDocument::InitializeSearchContent 검색 처리기에 대한 검색 콘텐츠를 초기화하기 위해 호출됩니다.
CDocument::IsModified 문서가 마지막으로 저장된 이후 수정되었는지 여부를 나타냅니다.
CDocument::IsSearchAndOrganizeHandler 검색 및 구성 처리기를 위해 이 개체 인스턴스 CDocument 가 만들어졌는지 여부를 알려줍니다.
CDocument::LoadDocumentFromStream 스트림에서 문서 데이터를 로드하기 위해 호출됩니다.
CDocument::OnBeforeRichPreviewFontChanged 리치 미리 보기 글꼴이 변경되기 전에 호출됩니다.
CDocument::OnChangedViewList 보기가 문서에 추가되거나 문서에서 제거된 후 호출됩니다.
CDocument::OnCloseDocument 문서를 닫기 위해 호출됩니다.
CDocument::OnCreatePreviewFrame 리치 미리 보기에 대한 미리 보기 프레임을 만들어야 하는 경우 프레임워크에서 호출됩니다.
CDocument::OnDocumentEvent 문서 이벤트에 대한 응답으로 프레임워크에서 호출됩니다.
CDocument::OnDrawThumbnail 파생 클래스에서 이 메서드를 재정의하여 썸네일의 콘텐츠를 그립니다.
CDocument::OnLoadDocumentFromStream 스트림에서 문서 데이터를 로드해야 하는 경우 프레임워크에서 호출됩니다.
CDocument::OnNewDocument 새 문서를 만들기 위해 호출됩니다.
CDocument::OnOpenDocument 기존 문서를 열기 위해 호출됩니다.
CDocument::OnPreviewHandlerQueryFocus 미리 보기 처리기가 함수 호출에서 반환 HWND 하도록 지시 GetFocus 합니다.
CDocument::OnPreviewHandlerTranslateAccelerator 미리 보기 처리기가 실행 중인 프로세스의 메시지 펌프에서 전달된 키 입력을 처리하도록 미리 보기 처리기를 지시합니다.
CDocument::OnRichPreviewBackColorChanged 리치 미리 보기 배경색이 변경될 때 호출됩니다.
CDocument::OnRichPreviewFontChanged 리치 미리 보기 글꼴이 변경되면 호출합니다.
CDocument::OnRichPreviewSiteChanged Rich Preview 사이트가 변경될 때 호출됩니다.
CDocument::OnRichPreviewTextColorChanged 리치 미리 보기 텍스트 색이 변경될 때 호출됩니다.
CDocument::OnSaveDocument 문서를 디스크에 저장하기 위해 호출됩니다.
CDocument::OnUnloadHandler 미리 보기 처리기가 언로드될 때 프레임워크에서 호출됩니다.
CDocument::PreCloseFrame 프레임 창을 닫기 전에 호출됩니다.
CDocument::ReadNextChunkValue 다음 청크 값을 읽습니다.
CDocument::ReleaseFile 파일을 해제하여 다른 애플리케이션에서 사용할 수 있도록 합니다.
CDocument::RemoveChunk 지정된 GUID청크를 제거합니다.
CDocument::RemoveView 문서에서 보기를 분리합니다.
CDocument::ReportSaveLoadException 고급 재정의 가능; 예외로 인해 열기 또는 저장 작업을 완료할 수 없을 때 호출됩니다.
CDocument::SaveModified 고급 재정의 가능; 사용자에게 문서를 저장해야 하는지 여부를 묻는 가 호출됩니다.
CDocument::SetChunkValue 청크 값을 설정합니다.
CDocument::SetModifiedFlag 문서를 마지막으로 저장한 이후 수정했음을 나타내는 플래그를 설정합니다.
CDocument::SetPathName 문서에서 사용하는 데이터 파일의 경로를 설정합니다.
CDocument::SetTitle 문서의 제목을 설정합니다.
CDocument::UpdateAllViews 문서가 수정되었음을 모든 보기에 알깁니다.

보호된 메서드

속성 설명
CDocument::OnFileSendMail 문서가 첨부된 메일 메시지를 보냅니다.
CDocument::OnUpdateFileSendMail 메일 지원이 있는 경우 메일 보내기 명령을 사용하도록 설정합니다.

공용 데이터 멤버

속성 설명
CDocument::m_bGetThumbnailMode CDocument 썸네일을 위해 dllhost에서 개체를 만들게 지정합니다. 에서 체크 인 CView::OnDraw해야 합니다.
CDocument::m_bPreviewHandlerMode 개체가 CDocument prevhost에 의해 생성되었음을 지정합니다 Rich Preview. 에서 체크 인 CView::OnDraw해야 합니다.
CDocument::m_bSearchMode 인덱서 또는 다른 검색 애플리케이션에서 개체를 만들었으면 을 지정 CDocument 합니다.
CDocument::m_clrRichPreviewBackColor 리치 미리 보기 창의 배경색을 지정합니다. 이 색은 호스트에 의해 설정됩니다.
CDocument::m_clrRichPreviewTextColor 리치 미리 보기 창의 전경색을 지정합니다. 이 색은 호스트에 의해 설정됩니다.
CDocument::m_lfRichPreviewFont 서식 있는 미리 보기 창의 텍스트 글꼴을 지정합니다. 이 글꼴 정보는 호스트에 의해 설정됩니다.

설명

문서는 사용자가 일반적으로 파일 열기 명령을 사용하여 열고 파일 저장 명령을 사용하여 저장하는 데이터 단위를 나타냅니다.

CDocument 에서는 문서 만들기, 문서 로드 및 저장과 같은 표준 작업을 지원합니다. 프레임워크는 에 정의된 CDocument인터페이스를 사용하여 문서를 조작합니다.

애플리케이션은 둘 이상의 문서 유형을 지원할 수 있습니다. 예를 들어 애플리케이션은 스프레드시트와 텍스트 문서를 모두 지원할 수 있습니다. 각 유형의 문서에는 연결된 문서 서식 파일이 있습니다. 문서 서식 파일은 해당 유형의 문서에 사용되는 리소스(예: 메뉴, 아이콘 또는 액셀러레이터 테이블)를 지정합니다. 각 문서에는 연결된 개체에 대한 포인터가 CDocTemplate 포함되어 있습니다.

사용자는 연결된 개체를 CView 통해 문서와 상호 작용합니다. 보기는 프레임 창에서 문서의 이미지를 렌더링하고 사용자 입력을 문서에 대한 작업으로 해석합니다. 문서에는 여러 보기가 연결되어 있을 수 있습니다. 사용자가 문서에서 창을 열면 프레임워크에서 보기를 만들고 문서에 연결합니다. 문서 서식 파일은 각 유형의 문서를 표시하는 데 사용되는 보기 및 프레임 창 유형을 지정합니다.

문서는 프레임워크의 표준 명령 라우팅의 일부이며 결과적으로 표준 사용자 인터페이스 구성 요소(예: 파일 저장 메뉴 항목)에서 명령을 받습니다. 문서는 현재 보기에서 전달된 명령을 받습니다. 문서에서 지정된 명령을 처리하지 않으면 해당 명령을 관리하는 문서 서식 파일에 전달합니다.

문서의 데이터가 수정되면 각 보기에 해당 수정 내용이 반영되어야 합니다. CDocument 에서는 UpdateAllViews 이러한 변경 내용의 뷰에 알리기 위한 멤버 함수를 제공하므로 뷰가 필요에 따라 다시 칠할 수 있습니다. 또한 프레임워크는 수정된 파일을 닫기 전에 저장하라는 메시지를 사용자에게 표시합니다.

일반적인 애플리케이션에서 문서를 구현하려면 다음을 수행해야 합니다.

  • 각 문서 유형에 CDocument 대한 클래스를 파생합니다.

  • 각 문서의 데이터를 저장할 멤버 변수를 추가합니다.

  • 문서의 데이터를 읽고 수정하기 위한 멤버 함수를 구현합니다. 문서의 뷰는 이러한 멤버 함수의 가장 중요한 사용자입니다.

  • 문서 클래스의 CObject::Serialize 멤버 함수를 재정의하여 문서의 데이터를 디스크에 쓰고 읽습니다.

CDocument 는 MAPI(메일 지원)가 있는 경우 메일을 통해 문서 전송을 지원합니다. MFC의 MAPIMAPI 지원 문서를 참조하세요.

자세한 CDocument내용은 Serialization, 문서/뷰 아키텍처 항목문서/보기 만들기를 참조하세요.

상속 계층 구조

CObject

CCmdTarget

CDocument

요구 사항

머리글: afxwin.h

CDocument::AddView

이 함수를 호출하여 문서에 보기를 첨부합니다.

void AddView(CView* pView);

매개 변수

pView
추가되는 보기를 가리킵니다.

설명

이 함수는 문서와 연결된 뷰 목록에 지정된 뷰를 추가합니다. 함수는 뷰의 문서 포인터도 이 문서에 설정합니다. 프레임워크는 새로 만든 뷰 개체를 문서에 연결할 때 이 함수를 호출합니다. 파일 새로 만들기, 파일 열기 또는 새 창 명령에 대한 응답으로 또는 분할자 창이 분할되는 경우에 발생합니다.

뷰를 수동으로 만들고 연결하는 경우에만 이 함수를 호출합니다. 일반적으로 문서 클래스, 뷰 클래스 및 프레임 창 클래스를 연결할 개체를 정의하여 CDocTemplate 프레임워크에서 문서와 뷰를 연결할 수 있습니다.

예시

// The following example toggles two views in an SDI (single document
// interface) frame window. A design decision must be made as to
// whether to leave the inactive view connected to the document,
// such that the inactive view continues to receive OnUpdate
// notifications from the document. It is usually desirable to
// keep the inactive view continuously in sync with the document, even
// though it is inactive. However, doing so incurs a performance cost,
// as well as the programming cost of implementing OnUpdate hints.
// It may be less expensive, in terms of performance and/or programming,
// to re-sync the inactive view with the document only with it is
// reactivated. This example illustrates this latter approach, by
// reconnecting the newly active view and disconnecting the newly
// inactive view, via calls to CDocument::AddView and RemoveView.

void CMainFrame::OnViewChange(UINT nCmdID)
// There is an ON_COMMAND_RANGE message map entry associated with
// OnViewChange:
// ON_COMMAND_RANGE(ID_VIEW_CHANGE1, ID_VIEW_CHANGE2, &OnViewChange)
{
   CView *pViewAdd;
   CView *pViewRemove;
   CDocument *pDoc = GetActiveDocument();

   // cvView1 and cvView2 are enum members defined in my CMainFrame class
   if ((nCmdID == ID_VIEW_CHANGE1) && (m_currentView == cvView1))
      return;
   if ((nCmdID == ID_VIEW_CHANGE2) && (m_currentView == cvView2))
      return;

   if (nCmdID == ID_VIEW_CHANGE2)
   {
      if (m_pView2 == NULL)
      {
         m_pView1 = GetActiveView();
         m_pView2 = new CMyView2;

         //Note that if OnSize has been overridden in CMyView2
         //and GetDocument() is used in this override it can
         //cause assertions and, if the assertions are ignored,
         //cause access violation.

         m_pView2->Create(NULL, NULL, AFX_WS_DEFAULT_VIEW, rectDefault, this,
                          AFX_IDW_PANE_FIRST + 1, NULL);
      }
      pViewAdd = m_pView2;
      pViewRemove = m_pView1;
      m_currentView = cvView2;
   }
   else
   {
      pViewAdd = m_pView1;
      pViewRemove = m_pView2;
      m_currentView = cvView1;
   }

   // Set the child i.d. of the active view to AFX_IDW_PANE_FIRST,
   // so that CFrameWnd::RecalcLayout will allocate to this
   // "first pane" that portion of   the frame window's client area
   // not allocated to control   bars.  Set the child i.d. of the
   // other view to anything other than AFX_IDW_PANE_FIRST; this
   // examples switches the child id's of the two views.

   int nSwitchChildID = pViewAdd->GetDlgCtrlID();
   pViewAdd->SetDlgCtrlID(AFX_IDW_PANE_FIRST);
   pViewRemove->SetDlgCtrlID(nSwitchChildID);

   // Show the newly active view and hide the inactive view.

   pViewAdd->ShowWindow(SW_SHOW);
   pViewRemove->ShowWindow(SW_HIDE);

   // Connect the newly active view to the document, and
   // disconnect the inactive view.
   pDoc->AddView(pViewAdd);
   pDoc->RemoveView(pViewRemove);

   SetActiveView(pViewAdd);
   RecalcLayout();
}

CDocument::BeginReadChunks

청크 읽기를 초기화합니다.

virtual void BeginReadChunks ();

설명

CDocument::CanCloseFrame

문서를 표시하는 프레임 창이 닫혀 있기 전에 프레임워크에서 호출됩니다.

virtual BOOL CanCloseFrame(CFrameWnd* pFrame);

매개 변수

pFrame
문서에 첨부된 보기의 프레임 창을 가리킵니다.

Return Value

프레임 창을 닫는 것이 안전한 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

기본 구현은 문서를 표시하는 다른 프레임 창이 있는지 확인합니다. 지정한 프레임 창이 문서를 표시하는 마지막 창인 경우 함수는 수정된 문서를 저장하라는 메시지를 사용자에게 표시합니다. 프레임 창을 닫을 때 특수한 처리를 수행하려는 경우 이 함수를 재정의합니다. 이는 고급 재정의 가능입니다.

CDocument::CDocument

CDocument 개체를 생성합니다.

CDocument();

설명

프레임워크는 문서 만들기를 처리합니다. 문서별로 초기화를 수행하도록 멤버 함수를 재정 OnNewDocument 의합니다. 이는 SDI(단일 문서 인터페이스) 애플리케이션에서 특히 중요합니다.

CDocument::ClearChunkList

청크 목록을 지웁니다.

virtual void ClearChunkList ();

설명

CDocument::ClearPathName

문서 개체의 경로를 지웁니다.

virtual void ClearPathName();

설명

개체에서 CDocument 경로를 지우면 문서가 다음에 저장되면 애플리케이션에서 사용자에게 메시지를 표시합니다. 이렇게 하면 Save 명령이 다른 이름으로 저장 명령처럼 동작합니다.

CDocument::DeleteContents

개체 자체를 삭제하지 않고 문서의 데이터를 삭제하기 위해 프레임워크에서 CDocument 호출됩니다.

virtual void DeleteContents();

설명

문서를 삭제하기 직전에 호출됩니다. 또한 문서가 다시 사용되기 전에 비어 있는지 확인하기 위해 호출됩니다. 이는 하나의 문서만 사용하는 SDI 애플리케이션에 특히 중요합니다. 사용자가 다른 문서를 만들거나 열 때마다 문서가 재사용됩니다. 이 함수를 호출하여 문서의 모든 데이터를 삭제하는 "모두 지우기 편집" 또는 유사한 명령을 구현합니다. 이 함수의 기본 구현은 아무 작업도 수행하지 않습니다. 문서에서 데이터를 삭제하려면 이 함수를 재정의합니다.

예시

// This example is the handler for an Edit Clear All command.
void CExampleDoc::OnEditClearAll()
{
   DeleteContents();
   UpdateAllViews(NULL);
}

void CExampleDoc::DeleteContents()
{
   // Re-initialize document data here.
}

CDocument::FindChunk

지정된 GUID가 있는 청크를 찾습니다.

virtual POSITION FindChunk(
    REFCLSID guid,
    DWORD pid);

매개 변수

guid
찾을 청크의 GUID를 지정합니다.

pid
찾을 청크의 PID를 지정합니다.

Return Value

성공하면 내부 청크 목록의 위치입니다. 그렇지 않으면 NULL.

설명

CDocument::GetAdapter

인터페이스를 구현하는 개체에 대한 포인터를 IDocument 반환합니다.

virtual ATL::IDocument* GetAdapter();

Return Value

인터페이스를 구현하는 개체에 대한 포인터입니다 IDocument .

설명

CDocument::GetDocTemplate

이 함수를 호출하여 이 문서 형식의 문서 서식 파일에 대한 포인터를 가져옵니다.

CDocTemplate* GetDocTemplate() const;

Return Value

이 문서 형식의 문서 서식 파일에 대한 포인터이거나, 문서가 문서 서식 파일에서 관리되지 않는 경우 NULL입니다.

예시

// This example accesses the doc template object to construct
// a default document name such as SHEET.XLS, where "sheet"
// is the base document name and ".xls" is the file extension
// for the document type.
CString strDefaultDocName, strBaseName, strExt;
CDocTemplate *pDocTemplate = GetDocTemplate();
if (!pDocTemplate->GetDocString(strBaseName, CDocTemplate::docName) || !pDocTemplate->GetDocString(strExt, CDocTemplate::filterExt))
{
   AfxThrowUserException(); // These doc template strings will
                            // be available if you created the application using AppWizard
                            // and specified the file extension as an option for
                            // the document class produced by AppWizard.
}
strDefaultDocName = strBaseName + strExt;

CDocument::GetFile

이 멤버 함수를 호출하여 개체에 대한 포인터를 가져옵니다 CFile .

virtual CFile* GetFile(
    LPCTSTR lpszFileName,
    UINT nOpenFlags,
    CFileException* pError);

매개 변수

lpszFileName
원하는 파일의 경로인 문자열입니다. 경로는 상대 경로이거나 절대 경로일 수 있습니다.

pError
작업의 완료 상태를 나타내는 기존 파일 예외 개체에 대한 포인터입니다.

nOpenFlags
공유 및 액세스 모드입니다. 파일을 열 때 수행할 작업을 지정합니다. 비트 OR(|) 연산자를 사용하여 CFile 생성자에 CFile::CFile 나열된 옵션을 결합할 수 있습니다. 하나의 액세스 권한과 하나의 공유 옵션이 필요합니다. 및 modeCreate modeNoInherit 모드는 선택 사항입니다.

Return Value

CFile 개체에 대한 포인터입니다.

CDocument::GetFirstViewPosition

이 함수를 호출하여 문서와 연결된 뷰 목록에서 첫 번째 보기의 위치를 가져옵니다.

virtual POSITION GetFirstViewPosition() const;

Return Value

POSITION 멤버 함수를 사용한 반복에 사용할 수 있는 GetNextView 값입니다.

예시

//To get the first view in the list of views:
//To get the first view in the list of views:
// POSITION pos = GetFirstViewPosition();
// CView* pFirstView = GetNextView(pos);
//
// This example uses CDocument::GetFirstViewPosition
// and GetNextView to repaint each view.
// An easier way to accomplish the same result is to call
// UpdateAllViews(NULL);
void CExampleDoc::OnRepaintAllViews()
{
   POSITION pos = GetFirstViewPosition();
   while (pos != NULL)
   {
      CView *pView = GetNextView(pos);
      pView->UpdateWindow();
   }
}

CDocument::GetNextView

이 함수를 호출하여 문서의 모든 보기를 반복합니다.

virtual CView* GetNextView(POSITION& rPosition) const;

매개 변수

rPosition
또는 GetFirstViewPosition 멤버 함수에 대한 POSITION 이전 호출에서 반환된 값에 대한 GetNextView 참조입니다. 이 값은 이어야 NULL합니다.

Return Value

로 식별되는 뷰에 대한 포인터입니다 rPosition.

설명

함수는 식별된 rPosition 뷰를 반환한 다음 목록에서 다음 보기의 값으로 설정합니다 rPosition POSITION . 검색된 뷰가 목록 rPosition 의 마지막 보기이면 .로 설정 NULL됩니다.

예시

//To get the first view in the list of views:
//To get the first view in the list of views:
// POSITION pos = GetFirstViewPosition();
// CView* pFirstView = GetNextView(pos);
//
// This example uses CDocument::GetFirstViewPosition
// and GetNextView to repaint each view.
// An easier way to accomplish the same result is to call
// UpdateAllViews(NULL);
void CExampleDoc::OnRepaintAllViews()
{
   POSITION pos = GetFirstViewPosition();
   while (pos != NULL)
   {
      CView *pView = GetNextView(pos);
      pView->UpdateWindow();
   }
}

CDocument::GetPathName

이 함수를 호출하여 문서 디스크 파일의 정규화된 경로를 가져옵니다.

const CString& GetPathName() const;

Return Value

문서의 정규화된 경로입니다. 문서가 저장되지 않았거나 연결된 디스크 파일이 없는 경우 이 문자열은 비어 있습니다.

CDocument::GetThumbnail

썸네일 공급자가 축소판 그림을 표시하는 데 사용할 비트맵을 만듭니다.

virtual BOOL GetThumbnail(
    UINT cx,
    HBITMAP* phbmp,
    DWORD* pdwAlpha);

매개 변수

cx
비트맵의 너비와 높이를 지정합니다.

phbmp
함수가 성공적으로 반환되는 비트맵에 대한 핸들을 포함합니다.

pdwAlpha
함수가 DWORD 성공적으로 반환되는 경우 알파 채널 값을 지정하는 것을 포함합니다.

Return Value

썸네일의 비트맵이 성공적으로 만들어졌는지를 반환 TRUE 하고, 그렇지 않으면 FALSE반환합니다.

설명

CDocument::GetTitle

일반적으로 문서의 파일 이름에서 파생되는 문서의 제목을 얻으려면 이 함수를 호출합니다.

const CString& GetTitle() const;

Return Value

문서의 제목입니다.

CDocument::InitializeSearchContent

검색 처리기의 검색 콘텐츠를 초기화하기 위해 호출됩니다.

virtual void InitializeSearchContent ();

설명

파생 클래스에서 이 메서드를 재정의하여 검색 콘텐츠를 초기화합니다. 콘텐츠는 ";"로 구분된 파트가 있는 문자열이어야 합니다. 예: "point; 직사각형; ole item".

CDocument::IsModified

문서를 마지막으로 저장한 이후 수정되었는지 여부를 확인하려면 이 함수를 호출합니다.

virtual BOOL IsModified();

Return Value

문서가 마지막으로 저장된 이후 수정된 경우 0이 아닌 경우 그렇지 않으면 0입니다.

CDocument::IsSearchAndOrganizeHandler

검색 및 구성 처리기에 대해 이 인스턴스 CDocument 가 만들어졌는지 여부를 알려줍니다.

BOOL IsSearchAndOrganizeHandler() const;

Return Value

검색 및 구성 처리기에 대해 이 인스턴스 CDocument 가 만들어졌는지를 반환 TRUE 합니다.

설명

현재 이 함수는 Out of process 서버에서 구현된 Rich Preview 처리기에 대해서만 반환 TRUE 됩니다. 애플리케이션 수준에서 적절한 플래그(m_bPreviewHandlerMode, m_bSearchMode, m_bGetThumbnailMode)를 설정하여 이 함수를 반환 TRUE할 수 있습니다.

CDocument::LoadDocumentFromStream

스트림에서 문서 데이터를 로드하기 위해 호출됩니다.

virtual HRESULT LoadDocumentFromStream(
    IStream* pStream,
    DWORD dwGrfMode);

매개 변수

pStream
스트림에 대한 포인터입니다. 이 스트림은 셸에서 제공합니다.

dwGrfMode
스트림에 대한 액세스 모드입니다.

Return Value

S_OK 로드 작업이 성공하면 오류 코드가 있으면 이고, 그렇지 않으면 HRESULT 오류 코드가 있습니다.

설명

파생 클래스에서 이 메서드를 재정의하여 스트림에서 데이터를 로드하는 방법을 사용자 지정할 수 있습니다.

CDocument::m_bGetThumbnailMode

썸네일을 CDocument 위해 dllhost에서 개체를 만들게 지정합니다. 에서 체크 인 CView::OnDraw해야 합니다.

BOOL m_bGetThumbnailMode;

설명

TRUE 는 썸네일을 위해 dllhost에서 문서를 만들었음을 나타냅니다.

CDocument::m_bPreviewHandlerMode

CDocument 리치 미리 보기에 대한 prevhost에서 개체를 만들게 지정합니다. 에서 체크 인 CView::OnDraw해야 합니다.

BOOL m_bPreviewHandlerMode;

설명

TRUE 는 리치 미리 보기에 대한 사전 호스팅에서 문서를 만들었기를 나타냅니다.

CDocument::m_bSearchMode

개체가 CDocument 인덱서 또는 다른 검색 애플리케이션에 의해 생성되었음을 지정합니다.

BOOL m_bSearchMode;

설명

TRUE 는 문서가 인덱서 또는 다른 검색 애플리케이션에 의해 생성되었음을 나타냅니다.

CDocument::m_clrRichPreviewBackColor

리치 미리 보기 창의 배경색을 지정합니다. 이 색은 호스트에 의해 설정됩니다.

COLORREF m_clrRichPreviewBackColor;

설명

CDocument::m_clrRichPreviewTextColor

리치 미리 보기 창의 전경색을 지정합니다. 이 색은 호스트에 의해 설정됩니다.

COLORREF m_clrRichPreviewTextColor;

설명

CDocument::m_lfRichPreviewFont

리치 미리 보기 창의 텍스트 글꼴을 지정합니다. 이 글꼴 정보는 호스트에 의해 설정됩니다.

CFont m_lfRichPreviewFont;

설명

CDocument::OnBeforeRichPreviewFontChanged

리치 미리 보기 글꼴이 변경되기 전에 호출됩니다.

virtual void OnBeforeRichPreviewFontChanged();

설명

CDocument::OnChangedViewList

보기가 문서에 추가되거나 문서에서 제거된 후 프레임워크에서 호출됩니다.

virtual void OnChangedViewList();

설명

이 함수의 기본 구현은 마지막 보기가 제거되고 있는지 여부를 확인하고, 있는 경우 문서를 삭제합니다. 프레임워크가 뷰를 추가하거나 제거할 때 특수 처리를 수행하려는 경우 이 함수를 재정의합니다. 예를 들어 첨부된 보기가 없는 경우에도 문서를 열어 두려면 이 함수를 재정의합니다.

CDocument::OnCloseDocument

일반적으로 파일 닫기 명령의 일부로 문서를 닫을 때 프레임워크에서 호출됩니다.

virtual void OnCloseDocument();

설명

이 함수의 기본 구현은 문서를 보는 데 사용되는 모든 프레임을 삭제하고, 보기를 닫고, 문서의 내용을 정리한 다음, 멤버 함수를 호출 DeleteContents 하여 문서의 데이터를 삭제합니다.

프레임워크에서 문서를 닫을 때 특수 정리 처리를 수행하려는 경우 이 함수를 재정의합니다. 예를 들어 문서가 데이터베이스의 레코드를 나타내는 경우 이 함수를 재정의하여 데이터베이스를 닫을 수 있습니다. 재정의에서 이 함수의 기본 클래스 버전을 호출해야 합니다.

CDocument::OnCreatePreviewFrame

리치 미리 보기에 대한 미리 보기 프레임을 만들어야 하는 경우 프레임워크에서 호출됩니다.

virtual BOOL OnCreatePreviewFrame();

Return Value

프레임이 성공적으로 만들어졌는지를 반환하고, 그렇지 않으면 FALSE반환 TRUE 합니다.

설명

CDocument::OnDocumentEvent

문서 이벤트에 대한 응답으로 프레임워크에서 호출됩니다.

virtual void OnDocumentEvent(DocumentEvent deEvent);

매개 변수

deEvent
[in] 이벤트 형식을 설명하는 열거형 데이터 형식입니다.

설명

문서 이벤트는 여러 클래스에 영향을 줄 수 있습니다. 이 메서드는 클래스 이외의 클래스에 영향을 주는 문서 이벤트를 처리 합니다.CDocument 현재 문서 이벤트에 응답해야 하는 유일한 클래스는 클래스입니다CDataRecoveryHandler. 클래스에는 CDocument 에 미치는 영향을 처리하는 다른 재정의 가능한 메서드가 CDocument있습니다.

다음 표에서는 가능한 값 deEvent 과 해당되는 이벤트를 나열합니다.

해당 이벤트
onAfterNewDocument 새 문서가 만들어졌습니다.
onAfterOpenDocument 새 문서가 열렸습니다.
onAfterSaveDocument 문서가 저장되었습니다.
onAfterCloseDocument 문서가 닫혔습니다.

CDocument::OnDrawThumbnail

파생 클래스에서 이 메서드를 재정의하여 썸네일을 그립니다.

virtual void OnDrawThumbnail(
    CDC& dc,
    LPRECT lprcBounds);

매개 변수

dc
디바이스 컨텍스트에 대한 참조입니다.

lprcBounds
축소판 그림을 그려야 하는 영역의 경계 사각형을 지정합니다.

설명

CDocument::OnFileSendMail

문서를 첨부 파일로 사용하여 상주 메일 호스트(있는 경우)를 통해 메시지를 보냅니다.

void OnFileSendMail();

설명

OnFileSendMail 호출 OnSaveDocument 하여 제목 없는 문서를 직렬화(저장)하고 수정한 문서를 임시 파일로 저장한 다음 전자 메일을 통해 전송합니다. 문서가 수정되지 않은 경우 임시 파일이 필요하지 않습니다. 원본이 전송됩니다. OnFileSendMail 는 아직 로드되지 않은 경우 MAPI32.DLL 로드합니다.

복합 파일을 올바르게 처리하는 특수 구현 OnFileSendMail COleDocument 입니다.

CDocument 는 MAPI(메일 지원)가 있는 경우 메일을 통해 문서 전송을 지원합니다. MFC의 MAPI 토픽 및 MAPI 지원 문서를 참조하세요.

CDocument::OnLoadDocumentFromStream

스트림에서 문서 데이터를 로드해야 하는 경우 프레임워크에서 호출됩니다.

virtual HRESULT OnLoadDocumentFromStream(
    IStream* pStream,
    DWORD grfMode);

매개 변수

pStream
들어오는 스트림에 대한 포인터입니다.

grfMode
스트림에 대한 액세스 모드입니다.

Return Value

S_OK 로드가 성공하면 이고, 그렇지 않으면 오류 코드입니다.

설명

CDocument::OnNewDocument

새 파일 명령의 일부로 프레임워크에서 호출됩니다.

virtual BOOL OnNewDocument();

Return Value

문서가 성공적으로 초기화된 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

이 함수의 기본 구현에서는 멤버 함수를 DeleteContents 호출하여 문서가 비어 있는지 확인하고 새 문서를 정리된 것으로 표시합니다. 이 함수를 재정의하여 새 문서의 데이터 구조를 초기화합니다. 재정의에서 이 함수의 기본 클래스 버전을 호출해야 합니다.

사용자가 SDI 애플리케이션에서 새 파일 명령을 선택하는 경우 프레임워크는 이 함수를 사용하여 새 문서를 만드는 대신 기존 문서를 다시 초기화합니다. 사용자가 MDI(다중 문서 인터페이스) 애플리케이션에서 새로 파일 새로 만들기를 선택하는 경우 프레임워크는 매번 새 문서를 만든 다음 이 함수를 호출하여 초기화합니다. SDI 애플리케이션에서 적용하려면 File New 명령이 생성자 대신 이 함수에 초기화 코드를 배치해야 합니다.

두 번 호출되는 경우가 OnNewDocument 있습니다. 이 문제는 문서가 ActiveX 문서 서버로 포함되는 경우에 발생합니다. 함수는 먼저 메서드(-derived 클래스에 의해 노출됨)에 의해 CreateInstance COleObjectFactory호출되고 메서드에 의해 InitNew 두 번째로 호출됩니다(-derived 클래스에 COleServerDoc의해 노출됨).

예시

다음 예제에서는 문서 개체를 초기화하는 다른 방법을 보여 줍니다.

// Method 1: In an MDI application, the simplest place to do
// initialization is in the document constructor.  The framework
// always creates a new document object for File New or File Open.
CExampleDoc::CExampleDoc()
{
   // Do initialization of MDI document here.
}

 

// Method 2: In an SDI or MDI application, do all initialization
// in an override of OnNewDocument, if you are certain that
// the initialization is effectively saved upon File Save
// and fully restored upon File Open, via serialization.
BOOL CMyDoc::OnNewDocument()
{
   if (!CDocument::OnNewDocument())
   {
      return FALSE;
   }

   // Do initialization of new document here.

   return TRUE;
}

 

// Method 3: If the initialization of your document is not
// effectively saved and restored by serialization (during File Save
// and File Open), then implement the initialization in single
// function (named InitMyDocument in this example).  Call the
// shared initialization function from overrides of both
// OnNewDocument and OnOpenDocument.
BOOL CExampleDoc::OnNewDocument()
{
   if (!CDocument::OnNewDocument())
   {
      return FALSE;
   }

   InitMyDocument(); // call your shared initialization function

   // If your new document object requires additional initialization
   // not necessary when the document is deserialized via File Open,
   // then perform that additional initialization here.

   return TRUE;
}

CDocument::OnOpenDocument

파일 열기 명령의 일부로 프레임워크에서 호출됩니다.

virtual BOOL OnOpenDocument(LPCTSTR lpszPathName);

매개 변수

lpszPathName
열 문서의 경로를 가리킵니다.

Return Value

문서가 성공적으로 로드된 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

이 함수의 기본 구현은 지정된 파일을 열고, 멤버 함수를 호출 DeleteContents 하여 문서가 비어 있는지 확인하고, 파일의 내용을 읽도록 호출 CObject::Serialize 한 다음, 문서를 정리된 것으로 표시합니다. 보관 메커니즘 또는 파일 메커니즘 이외의 항목을 사용하려는 경우 이 함수를 재정의합니다. 예를 들어 문서가 별도의 파일이 아닌 데이터베이스의 레코드를 나타내는 애플리케이션을 작성할 수 있습니다.

사용자가 SDI 애플리케이션에서 파일 열기 명령을 선택하는 경우 프레임워크는 이 함수를 사용하여 새 개체를 만드는 대신 기존 개체를 CDocument 다시 초기화합니다. 사용자가 MDI 애플리케이션에서 파일 열기를 선택하는 경우 프레임워크는 매번 새 CDocument 개체를 생성한 다음 이 함수를 호출하여 초기화합니다. SDI 애플리케이션에서 적용하려면 파일 열기 명령의 생성자 대신 이 함수에 초기화 코드를 배치해야 합니다.

예시

다음 예제에서는 문서 개체를 초기화하는 다른 방법을 보여 줍니다.

// Method 1: In an MDI application, the simplest place to do
// initialization is in the document constructor.  The framework
// always creates a new document object for File New or File Open.
CExampleDoc::CExampleDoc()
{
   // Do initialization of MDI document here.
}

 

// Method 2: In an SDI or MDI application, do all initialization
// in an override of OnNewDocument, if you are certain that
// the initialization is effectively saved upon File Save
// and fully restored upon File Open, via serialization.
BOOL CMyDoc::OnNewDocument()
{
   if (!CDocument::OnNewDocument())
   {
      return FALSE;
   }

   // Do initialization of new document here.

   return TRUE;
}

 

// Method 3: If the initialization of your document is not
// effectively saved and restored by serialization (during File Save
// and File Open), then implement the initialization in single
// function (named InitMyDocument in this example).  Call the
// shared initialization function from overrides of both
// OnNewDocument and OnOpenDocument.
BOOL CExampleDoc::OnNewDocument()
{
   if (!CDocument::OnNewDocument())
   {
      return FALSE;
   }

   InitMyDocument(); // call your shared initialization function

   // If your new document object requires additional initialization
   // not necessary when the document is deserialized via File Open,
   // then perform that additional initialization here.

   return TRUE;
}

 

// Additional example of OnOpenDocument()
BOOL CExampleDoc::OnOpenDocument(LPCTSTR lpszPathName)
{
   if (!CDocument::OnOpenDocument(lpszPathName))
   {
      return FALSE;
   }

   InitMyDocument(); // call your shared initialization function

   return TRUE;
}

CDocument::OnPreviewHandlerQueryFocus

미리 보기 처리기가 함수 호출에서 검색된 것을 반환 HWND 하도록 지시합니다 GetFocus .

virtual HRESULT OnPreviewHandlerQueryFocus(HWND* phwnd);

매개 변수

phwnd
[out] 이 메서드가 반환될 때 미리 보기 처리기의 포그라운드 스레드에서 함수를 GetFocus 호출하여 반환된 HWND에 대한 포인터를 포함합니다.

Return Value

성공하면 반환하고, 그렇지 않으면 오류 값을 반환 S_OK 합니다.

설명

CDocument::OnPreviewHandlerTranslateAccelerator

미리 보기 처리기가 실행 중인 프로세스의 메시지 펌프에서 전달된 키 입력을 처리하도록 미리 보기 처리기를 지시합니다.

virtual HRESULT OnPreviewHandlerTranslateAccelerator(MSG* pmsg);

매개 변수

pmsg
[in] 창 메시지에 대한 포인터입니다.

Return Value

미리 보기 처리기에서 키 입력 메시지를 처리할 수 있으면 처리기가 이를 처리하고 반환합니다 S_OK. 미리 보기 처리기가 키 입력 메시지를 처리할 수 없는 경우 이를 통해 호스트 IPreviewHandlerFrame::TranslateAccelerator에 제공합니다. 호스트가 메시지를 처리하면 이 메서드가 반환됩니다 S_OK. 호스트가 메시지를 처리하지 않으면 이 메서드가 반환됩니다 S_FALSE.

설명

CDocument::OnRichPreviewBackColorChanged

리치 미리 보기 배경색이 변경될 때 호출됩니다.

virtual void OnRichPreviewBackColorChanged();

설명

CDocument::OnRichPreviewFontChanged

리치 미리 보기 글꼴이 변경되면 호출합니다.

virtual void OnRichPreviewFontChanged();

설명

CDocument::OnRichPreviewSiteChanged

Rich Preview 사이트가 변경될 때 호출됩니다.

virtual void OnRichPreviewSiteChanged();

설명

CDocument::OnRichPreviewTextColorChanged

리치 미리 보기 텍스트 색이 변경될 때 호출됩니다.

virtual void OnRichPreviewTextColorChanged();

설명

CDocument::OnSaveDocument

파일 저장 또는 파일 다른 이름으로 저장 명령의 일부로 프레임워크에서 호출됩니다.

virtual BOOL OnSaveDocument(LPCTSTR lpszPathName);

매개 변수

lpszPathName
파일을 저장할 정규화된 경로를 가리킵니다.

Return Value

문서를 성공적으로 저장한 경우 0이 아닌 경우 그렇지 않으면 0입니다.

설명

이 함수의 기본 구현은 지정된 파일을 열고, 문서의 데이터를 파일에 쓰기 위해 호출 CObject::Serialize 한 다음, 문서를 정리된 것으로 표시합니다. 프레임워크에서 문서를 저장할 때 특수 처리를 수행하려는 경우 이 함수를 재정의합니다. 예를 들어 문서가 별도의 파일이 아닌 데이터베이스의 레코드를 나타내는 애플리케이션을 작성할 수 있습니다.

CDocument::OnUnloadHandler

미리 보기 처리기가 언로드될 때 프레임워크에서 호출됩니다.

virtual void OnUnloadHandler();

설명

CDocument::OnUpdateFileSendMail

ID_FILE_SEND_MAIL MAPI(메일 지원)가 있는 경우 명령을 사용하도록 설정합니다.

void OnUpdateFileSendMail(CCmdUI* pCmdUI);

매개 변수

pCmdUI
명령과 연결된 개체에 CCmdUI 대한 포인터입니다 ID_FILE_SEND_MAIL .

설명

그렇지 않으면 함수는 메뉴 항목 위 또는 아래에 있는 구분 기호를 포함하여 메뉴에서 명령을 적절하게 제거 ID_FILE_SEND_MAIL 합니다. MAPI는 경로에 있고 파일의 WIN.INI [메일] 섹션에서 MAPI=1에 있는 경우 MAPI32.DLL 사용하도록 설정됩니다. 대부분의 애플리케이션은 이 명령을 파일 메뉴에 배치합니다.

CDocument 는 MAPI(메일 지원)가 있는 경우 메일을 통해 문서 전송을 지원합니다. MFC의 MAPI 토픽 및 MAPI 지원 문서를 참조하세요.

CDocument::PreCloseFrame

프레임 창이 제거되기 전에 프레임워크에서 이 멤버 함수를 호출합니다.

virtual void PreCloseFrame(CFrameWnd* pFrame);

매개 변수

pFrame
연결된 개체를 CFrameWnd 보유하는 포인터입니다 CDocument .

설명

사용자 지정 정리를 제공하기 위해 재정의할 수 있지만 기본 클래스도 호출해야 합니다.

기본값 PreCloseFrame 은 .에서 CDocument아무 것도 수행하지 않습니다. CDocument파생 클래스이며 COleDocument CRichEditDoc 이 멤버 함수를 사용합니다.

CDocument::ReadNextChunkValue

다음 청크 값을 읽습니다.

virtual BOOL ReadNextChunkValue(IFilterChunkValue** ppValue);

매개 변수

ppValue
[out] 함수가 반환되면 ppValue 읽은 값이 포함됩니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

CDocument::ReleaseFile

이 멤버 함수는 프레임워크에서 파일을 해제하여 다른 애플리케이션에서 사용할 수 있도록 합니다.

virtual void ReleaseFile(
    CFile* pFile,
    BOOL bAbort);

매개 변수

pFile
해제할 개체에 대한 CFile 포인터입니다.

bAbort
파일을 해제할지 또는 .를 사용하여 CFile::Close CFile::Abort해제할지 여부를 지정합니다. FALSE를 사용하여 파일을 해제하려면 . TRUE 를 사용하여 CFile::CloseCFile::Abort파일을 해제합니다.

설명

TRUEReleaseFile 경우 bAbort 호출CFile::Abort하고 파일이 해제됩니다. CFile::Abort 는 예외를 throw하지 않습니다.

FALSEReleaseFile 경우 bAbort 호출 CFile::Close 및 파일이 해제됩니다.

파일이 해제되기 전에 사용자가 작업을 요구하도록 이 멤버 함수를 재정의합니다.

CDocument::RemoveChunk

지정된 GUID청크를 제거합니다.

virtual void RemoveChunk(
    REFCLSID guid,
    DWORD pid);

매개 변수

Guid
제거할 청크를 지정 GUID 합니다.

Pid
제거할 청크를 지정 PID 합니다.

설명

CDocument::RemoveView

문서에서 보기를 분리하려면 이 함수를 호출합니다.

void RemoveView(CView* pView);

매개 변수

pView
제거되는 뷰를 가리킵니다.

설명

이 함수는 문서와 연결된 뷰 목록에서 지정된 뷰를 제거합니다. 또한 뷰의 문서 포인터를 .로 NULL설정합니다. 프레임 창이 닫혀 있거나 분할자 창의 창이 닫힌 경우 프레임워크에서 이 함수를 호출합니다.

뷰를 수동으로 분리하는 경우에만 이 함수를 호출합니다. 일반적으로 문서 클래스, 뷰 클래스 및 프레임 창 클래스를 연결할 개체를 정의하여 CDocTemplate 프레임워크에서 문서와 뷰를 분리할 수 있습니다.

샘플 구현에 대한 예제 AddView 를 참조하세요.

CDocument::ReportSaveLoadException

문서를 저장하거나 로드하는 동안 예외가 throw되면 호출됩니다(일반적으로 a CFileException 또는 CArchiveException).

virtual void ReportSaveLoadException(
    LPCTSTR lpszPathName,
    CException* e,
    BOOL bSaving,
    UINT nIDPDefault);

매개 변수

lpszPathName
저장되거나 로드된 문서의 이름을 가리킵니다.

e
throw된 예외를 가리킵니다. NULL일 수 있습니다.

bSaving
진행 중인 작업을 나타내는 플래그입니다. 문서가 저장되는 경우 0이 아닌 경우 문서가 로드되고 있으면 0입니다.

nIDPDefault
함수가 보다 구체적인 메시지를 지정하지 않으면 표시할 오류 메시지의 식별자입니다.

설명

기본 구현은 예외 개체를 검사하고 원인을 구체적으로 설명하는 오류 메시지를 찾습니다. 특정 메시지를 찾을 수 없거나 있는 경우 e NULL매개 변수로 nIDPDefault 지정된 일반 메시지가 사용됩니다. 그런 다음 함수는 오류 메시지가 포함된 메시지 상자를 표시합니다. 사용자 지정된 추가 오류 메시지를 제공하려는 경우 이 함수를 재정의합니다. 이는 고급 재정의 가능입니다.

CDocument::SaveModified

수정된 문서를 닫기 전에 프레임워크에서 호출합니다.

virtual BOOL SaveModified();

Return Value

문서를 계속하여 닫는 것이 안전한 경우 0이 아닌 경우 문서를 닫지 않아야 하는 경우 0입니다.

설명

이 함수의 기본 구현에는 변경 내용이 있는 경우 문서에 저장할지 여부를 묻는 메시지 상자가 표시됩니다. 프로그램에 다른 프롬프트 프로시저가 필요한 경우 이 함수를 재정의합니다. 이는 고급 재정의 가능입니다.

CDocument::SetChunkValue

청크 값을 설정합니다.

virtual BOOL SetChunkValue (IFilterChunkValue* pValue);

매개 변수

pValue
설정할 청크 값을 지정합니다.

Return Value

성공하면 0이 아니고, 그렇지 않으면 0입니다.

설명

CDocument::SetModifiedFlag

문서를 수정한 후 이 함수를 호출합니다.

virtual void SetModifiedFlag(BOOL bModified = TRUE);

매개 변수

bModified
문서가 수정되었는지 여부를 나타내는 플래그입니다.

설명

이 함수를 일관되게 호출하면 프레임워크에서 문서를 닫기 전에 변경 내용을 저장하라는 메시지를 사용자에게 표시합니다. 일반적으로 매개 변수의 TRUE 기본값을 bModified 사용해야 합니다. 문서를 정리(수정되지 않음)로 표시하려면 이 함수를 값 FALSE으로 호출합니다.

CDocument::SetPathName

이 함수를 호출하여 문서 디스크 파일의 정규화된 경로를 지정합니다.

virtual void SetPathName(
    LPCTSTR lpszPathName,
    BOOL bAddToMRU = TRUE);

매개 변수

lpszPathName
문서의 경로로 사용할 문자열을 가리킵니다.

bAddToMRU
파일 이름이 가장 최근에 사용된(MRU) 파일 목록에 추가되는지 여부를 확인합니다. 이면 TRUE파일 이름이 추가되고, 추가 FALSE되지 않으면 추가되지 않습니다.

설명

경로 값 bAddToMRU 에 따라 애플리케이션에서 유지 관리하는 MRU 목록에 추가되거나 추가되지 않습니다. 일부 문서는 디스크 파일과 연결되지 않습니다. 프레임워크에서 사용하는 파일을 열고 저장하기 위해 기본 구현을 재정의하는 경우에만 이 함수를 호출합니다.

CDocument::SetTitle

이 함수를 호출하여 문서의 제목(프레임 창의 제목 표시줄에 표시되는 문자열)을 지정합니다.

virtual void SetTitle(LPCTSTR lpszTitle);

매개 변수

lpszTitle
문서의 제목으로 사용할 문자열을 가리킵니다.

설명

이 함수를 호출하면 문서를 표시하는 모든 프레임 창의 제목이 업데이트됩니다.

CDocument::UpdateAllViews

문서가 수정된 후 이 함수를 호출합니다.

void UpdateAllViews(
    CView* pSender,
    LPARAM lHint = 0L,
    CObject* pHint = NULL);

매개 변수

pSender
문서를 수정한 뷰를 가리키거나 NULL 모든 보기를 업데이트할 것인지를 가리킵니다.

lHint
수정에 대한 정보를 포함합니다.

pHint
수정에 대한 정보를 저장하는 개체를 가리킵니다.

설명

멤버 함수를 호출한 후 이 함수를 SetModifiedFlag 호출해야 합니다. 이 함수는 문서에서 지정한 뷰를 제외하고 문서에 첨부된 각 보기에 pSender문서가 수정되었음을 알릴 수 있습니다. 사용자가 보기를 통해 문서를 변경한 후 일반적으로 뷰 클래스에서 이 함수를 호출합니다.

이 함수는 CView::OnUpdate 보내는 뷰, 전달 pHint 및 을 제외한 각 문서의 뷰에 대한 멤버 함수를 호출합니다 lHint. 이러한 매개 변수를 사용하여 문서의 수정 내용에 대한 정보를 뷰에 전달합니다. 사용 하 여 lHint 정보를 인코딩할 수 있습니다 및/또는 수정에 대 한 CObject정보를 저장 하 고 사용 하 여 pHint해당 클래스의 개체를 전달 하는 파생된 클래스를 정의할 수 있습니다. 전달된 정보에 따라 뷰 표시의 업데이트를 최적화하기 위해 파생 클래스의 멤버 함수CView를 재정 CView::OnUpdate 의합니다.

예시

void CExampleDoc::OnUpdateAllViews()
{
   UpdateAllViews(NULL);
}

참고 항목

MFC 샘플 MDIDOCVW
MFC 샘플 SNAPVW
MFC 샘플 NPP
CCmdTarget 수업
계층 구조 차트
CCmdTarget 수업
CView 수업
CDocTemplate 수업