Share via


Een actieve documentcontainertoepassing maken

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

De eenvoudigste en meest aanbevolen manier om een actieve documentcontainertoepassing te maken, is door een MFC EXE-containertoepassing te maken met behulp van de wizard MFC-toepassing en vervolgens de toepassing te wijzigen ter ondersteuning van actieve documentsluiting.

Een actieve documentcontainertoepassing maken

  1. Klik in het menu Bestand op Projectin het submenu Nieuw .

  2. Klik in het linkerdeelvenster op Het projecttype Visual C++ .

  3. Selecteer MFC-toepassing in het rechterdeelvenster.

  4. Geef het project de naam MyProj en klik op OK.

  5. Selecteer de pagina Ondersteuning voor samengestelde documenten .

  6. Selecteer de optie Container of Container/Volledige server .

  7. Schakel het selectievakje Actieve documentcontainer in.

  8. Klik op Voltooien.

  9. Wanneer de MFC-toepassingswizard klaar is met het genereren van de toepassing, opent u de volgende bestanden met Solution Explorer:

    • MyProjview.cpp
  10. Breng in MyProjview.cpp de volgende wijzigingen aan:

    • Vervang in CMyProjView::OnPreparePrinting de functie-inhoud door de volgende code:

      if (!CView::OnPreparePrinting(pInfo))
          return FALSE;
      
      if (!COleDocObjectItem::OnPreparePrinting(this, pInfo))
          return FALSE;
      
      return TRUE;
      

    OnPreparePrinting biedt ondersteuning voor afdrukken. Deze code vervangt DoPreparePrintingde standaardafdrukvoorbereiding.

    Actieve documentsluiting biedt een verbeterd afdrukschema:

    • U kunt het actieve document eerst aanroepen via de IPrint interface en het laten afdrukken. Dit verschilt van de vorige OLE-insluiting, waarbij de container een afbeelding van het ingesloten item op het printerobject CDC moest weergeven.

    • Als dat mislukt, geeft u aan dat het ingesloten item zichzelf moet afdrukken via de IOleCommandTarget interface

    • Als dat mislukt, maakt u uw eigen weergave van het item.

    De functies van het statische lid COleDocObjectItem::OnPrint en COleDocObjectItem::OnPreparePrinting, zoals geïmplementeerd in de vorige code, verwerken dit verbeterde afdrukschema.

  11. Voeg een eigen implementatie toe en bouw de toepassing.

Zie ook

Actieve documentbeheersing