Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Det enklaste och mest rekommenderade sättet att skapa ett aktivt dokumentcontainerprogram är att skapa ett MFC EXE-containerprogram med hjälp av MFC-programguiden och sedan ändra programmet så att det stöder aktiv dokument inneslutning.
Skapa ett aktivt dokumentcontainerprogram
På menyn Arkiv klickar du på Projektfrån undermenyn Nytt .
I den vänstra rutan klickar du på Visual C++ -projekttyp.
Välj MFC-program i den högra rutan.
Ge projektet namnet MyProj och klicka på OK.
Välj sidan Stöd för sammansatt dokument .
Välj alternativet Container eller Container/Full-server .
Markera kryssrutan Aktiv dokumentcontainer.
Klicka på Finish.
När MFC-programguiden är klar med att generera programmet öppnar du följande filer med Solution Explorer:
- MyProjview.cpp
I MyProjview.cpp gör du följande ändringar:
I
CMyProjView::OnPreparePrintingersätter du funktionsinnehållet med följande kod:if (!CView::OnPreparePrinting(pInfo)) return FALSE; if (!COleDocObjectItem::OnPreparePrinting(this, pInfo)) return FALSE; return TRUE;
OnPreparePrintingtillhandahåller utskriftsstöd. Den här koden ersätterDoPreparePrinting, vilket är standardförberedelsen av utskrift.Aktiv dokument inneslutning ger ett förbättrat utskriftsschema:
Du kan först anropa det aktiva dokumentet via dess
IPrintgränssnitt och be det att skriva ut sig själv. Detta skiljer sig från tidigare OLE-inneslutning, där containern var tvungen att återge en bild av det inneslutna objektet på skrivarobjektetCDC.Om det misslyckas ber du det inneslutna objektet att skriva ut sig självt via gränssnittet
IOleCommandTargetOm det misslyckas gör du en egen återgivning av objektet.
De statiska medlemsfunktionerna
COleDocObjectItem::OnPrintochCOleDocObjectItem::OnPreparePrinting, som implementerades i föregående kod, hanterar det här förbättrade utskriftsschemat.Lägg till en egen implementering och skapa programmet.