共用方式為


容器: 容器的實作

這份文件摘要說明實作容器的程序,並指出其他提供詳細解釋有關實作容器的文件。它也會列出一些您可能想要實作的選擇性 OLE 功能,並描述這些功能的文件。

若要準備您的 CWinApp 衍生類別

  1. 藉由呼叫初始化 OLE 程式庫 AfxOleInitInitInstance成員函式。

  2. 呼叫CDocTemplate::SetContainerInfoInitInstance來指派功能表和對應鍵資源內嵌項目時,使用就地啟動。如需有關這個主題的詳細資訊,請參閱啟用

這些功能會自動為您提供當您使用 MFC 應用程式精靈建立容器應用程式。請參閱建立 MFC EXE 程式

若要準備檢視類別

  1. 追蹤的選取項目的藉由維護指標,或清單的指標,如果要支援多重選取,以選取的項目。您OnDraw函式必須繪製所有的 OLE 項目。

  2. 覆寫IsSelected來檢查目前是否已選取的項目傳遞給它。

  3. 實作 OnInsertObject 訊息處理常式,以顯示插入物件對話方塊。

  4. 實作OnSetFocus訊息處理常式,以便將從檢視內,將焦點轉移到就地使用中 OLE 內嵌項目。

  5. 實作OnSize訊息處理常式來通知 OLE 項目內嵌它需要變更其方框來反映包含檢視的大小的變更。

因為這些功能的實作而異到下一個應用程式大幅,應用程式精靈會提供基礎實作。您可能需要自訂這些功能使您的應用程式,才能正確執行。如需這個範例,請參閱容器範例。

若要處理內嵌和連結項目

  1. 衍生類別中的,從 COleClientItem。這個類別的物件代表內嵌或連結到 OLE 文件的項目。

  2. Override OnChange, OnChangeItemPosition, and OnGetItemPosition.這些函式會處理調整大小、 位置和修改內嵌和連結項目。

應用程式精靈會為您衍生類別,但您可能需要覆寫 OnChange 而其他的函式與它列在之前程序中的步驟 2 中。基本架構實作需要自訂對於大部分的應用程式,因為這些函式的實作方式從一個應用程式到下一步]。如需這個範例,請參閱 MFC 範例 DRAWCLI容器

您必須加入一些項目,以支援 OLE 容器應用程式的功能表結構。如需這些詳細資訊,請參閱功能表和資源: 容器加入

您也可以在容器應用程式中支援的下列功能:

  • 編輯內嵌項目時,就會就地啟動。

    如需詳細資訊,請參閱啟用

  • 建立 OLE 項利用拖放選取項目從 「 伺服器應用程式。

    如需詳細資訊,請參閱拖放 」 (OLE)

  • 內嵌的物件或組合容器/伺服應用程式的連結。

    如需詳細資訊,請參閱容器: 進階功能

請參閱

概念

容器

容器: 用戶端項目