COleLinkingDoc

Klasa COleLinkingDoc jest klasą podstawową dla kontenerami OLE, które obsługują łączenie elementów osadzonych, które zawierają. Aplikacja kontenera, która obsługuje łączenie elementów osadzonych nosi nazwę "kontener łącza." OCLIENT przykładowej aplikacji jest przykładem kontenera łącza.

Gdy źródłowego połączonego elementu osadzonego elementu w innym dokumencie, zawierającego dokument musi być obciążony w celu osadzony element, który ma być edytowany. Z tego powodu kontener łącza musi mieć możliwość uruchamiany przez inną aplikację kontenera, gdy użytkownik chce edytować źródła połączonego elementu. Aplikacja musi także używać klasy COleTemplateServer , tak, że można tworzyć dokumenty podczas zwodowany programowo.

Aby pojemnika kontener łącze, wynikają z klasą dokumentu z COleLinkingDoc zamiast COleDocument. Podobnie jak w przypadku innych kontenera OLE, należy projektować klasy do przechowywania danych w trybie macierzystym aplikacji, a także elementy połączonych lub osadzonych. Ponadto należy projektować struktur danych do przechowywania danych w trybie macierzystym. W przypadku zdefiniowania CDocItem-pochodnych klasy dla aplikacji przez macierzysty danych, można użyć interfejsu zdefiniowane przez COleDocument , do przechowywania danych w trybie macierzystym, jak również danych OLE.

Aby umożliwić aplikacji jest uruchamiana programowo przez innego kontenera, zadeklarować obiektu COleTemplateServer jako członek aplikacji CWinApp-klasy:

klasa COleClientApp: CWinApp publicznych
{
// ...
chronione:
   COleTemplateServer m_server;
// ...
}

W funkcji Członkowskiego InitInstance your CWinApp-klasy, Utwórz szablon dokumentu i Określ Twoje COleLinkingDoc-klasy jako klasa dokumentu:

/ / CMainDoc pochodzi z COleLinkingDoc
CMultiDocTemplate * pDocTemplate = new CMultiDocTemplate (IDR_OCLIENTTYPE,
 nbsp; RUNTIME_CLASS(CMainDoc),
   RUNTIME_CLASS(CSplitFrame),
   RUNTIME_CLASS(CMainView));
pDocTemplate - > SetContainerInfo ()
   IDR_OCLIENTTYPE_CNTR_IP);
AddDocTemplate(pDocTemplate)

Połączyć obiekt COleTemplateServer szablonów dokumentów przez wywołanie obiektu ConnectTemplate Członkowskie funkcji i zarejestrować wszystkie obiekty klasy z systemu OLE przez wywołanie COleTemplateServer::RegisterAll

m_server.ConnectTemplate (identyfikator clsid, pDocTemplate, FALSE);
COleTemplateServer::RegisterAll()

Dla próbki CWinApp-definicji klasy pochodnej i InitInstance funkcji, zobacz OCLIENT.H i OCLIENT.CPP w próbce MFC OCLIENT.

Aby uzyskać więcej informacji na temat używania COleLinkingDoc, zobacz artykuły pojemnikach: wykonawczych kontener i pojemnikach: funkcje zaawansowane w Visual C++ Programmer's Guide.

# include lt;afxole.h>

Członkowie klasy |nbsp; Klasa podstawowa | Wykres hierarchii

Próbkinbsp; Próbki MFC OCLIENT

Zobacz też CDocTemplate

Index