Sdílet prostřednictvím


COleDocObjectItem – třída

Implementuje zahrnutí aktivního dokumentu.

Syntaxe

class COleDocObjectItem : public COleClientItem

Členové

Veřejné konstruktory

Jméno popis
COleDocObjectItem::COleDocObjectItem COleDocObject Vytvoří položku.

Veřejné metody

Jméno popis
COleDocObjectItem::D oDefaultPrinting Vytiskne dokument aplikace kontejneru pomocí výchozího nastavení tiskárny.
COleDocObjectItem::ExecCommand Spustí příkaz určený uživatelem.
COleDocObjectItem::GetActiveView Načte aktivní zobrazení dokumentu.
COleDocObjectItem::GetPageCount Načte počet stránek v dokumentu aplikace kontejneru.
COleDocObjectItem::OnPreparePrinting Připraví dokument aplikace kontejneru na tisk.
COleDocObjectItem::OnPrint Vytiskne dokument aplikace kontejneru.
COleDocObjectItem::QueryCommand Dotazy na stav jednoho nebo více příkazů generovaných událostmi uživatelského rozhraní
COleDocObjectItem::Release Uvolní připojení k propojené položce OLE a zavře ji, pokud byla otevřená. Nezničí položku klienta.

Poznámky

V prostředí MFC se aktivní dokument zpracovává podobně jako běžné místní vkládání s následujícími rozdíly:

  • COleDocument-odvozená třída stále udržuje seznam aktuálně vložených položek, ale tyto položky mohou být COleDocObjectItem-odvozené položky.

  • Když je aktivní aktivní dokument, zabírá celou klientskou oblast zobrazení, když je aktivní.

  • Kontejner aktivního dokumentu má úplnou kontrolu nad nabídkou Nápovědy.

  • Nabídka Nápověda obsahuje položky nabídky pro kontejner aktivního dokumentu i server.

Protože kontejner aktivního dokumentu vlastní nabídku Nápověda, je kontejner zodpovědný za předávání zpráv nabídky nápovědy serveru na server. Tuto integraci zpracovává COleDocObjectItem.

Další informace o slučování nabídek a aktivaci aktivního dokumentu naleznete v tématu Přehled zahrnutí aktivního dokumentu.

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

CDocItem

COleClientItem

COleDocObjectItem

Požadavky

Hlavička: afxole.h

COleDocObjectItem::COleDocObjectItem

Voláním této členské funkce inicializujete COleDocObjectItem objekt.

COleDocObjectItem(COleDocument* pContainerDoc = NULL);

Parametry

pContainerDoc
Ukazatel na COleDocument objekt, který funguje jako aktivní kontejner dokumentu. Tento parametr musí mít hodnotu NULL, aby bylo možné povolit IMPLEMENT_SERIALIZE. Položky OLE se obvykle vytvářejí pomocí ukazatele dokumentu, který není null.

COleDocObjectItem::D oDefaultPrinting

Volá se rozhraním do dokumentu pomocí výchozího nastavení.

static HRESULT DoDefaultPrinting(
    CView* pCaller,
    CPrintInfo* pInfo);

Parametry

pCaller
Ukazatel na objekt CView , který odesílá příkaz print.

pInfo
Ukazatel na objekt CPrintInfo , který popisuje úlohu, která se má vytisknout.

COleDocObjectItem::ExecCommand

Voláním této členské funkce spustíte příkaz určený uživatelem.

HRESULT ExecCommand(
    DWORD nCmdID,
    DWORD nCmdExecOpt = OLECMDEXECOPT_DONTPROMPTUSER,
    const GUID* pguidCmdGroup = NULL);

Parametry

nCmdID
Identifikátor příkazu, který se má provést. Musí být ve skupině identifikované pguidCmdGroup.

nCmdExecOpt
Určuje možnosti provádění příkazů. Ve výchozím nastavení je nastaveno spuštění příkazu bez výzvy uživatele. Seznam hodnot naleznete v tématu OLECMDEXECOPT .

pguidCmdGroup
Jedinečný identifikátor skupiny příkazů. Ve výchozím nastavení hodnota NULL, která určuje standardní skupinu. Příkaz předaný v nCmdID musí patřit do skupiny.

Vrácená hodnota

Vrátí S_OK v případě úspěchu; v opačném případě vrátí jeden z následujících kódů chyb.

Hodnota popis
E_UNEXPECTED Došlo k neočekávané chybě.
E_FAIL Došlo k chybě.
E_NOTIMPL Označuje, že se samotný mfc má pokusit příkaz přeložit a odeslat.
OLECMDERR_E_UNKNOWNGROUP pguidCmdGroup není null, ale nezadá rozpoznanou skupinu příkazů.
OLECMDERR_E_NOTSUPPORTED nCmdID není rozpoznán jako platný příkaz ve skupině pGroup.
OLECMDERR_DISABLED Příkaz identifikovaný pomocí nCmdID je zakázaný a nelze ho spustit.
OLECMDERR_NOHELP Volající požádal o pomoc s příkazem identifikovaným pomocí nCmdID , ale není k dispozici žádná nápověda.
OLECMDERR_CANCELLED Uživatel zrušil provádění.

Poznámky

Parametr pguidCmdGroup a nCmdID společně jednoznačně identifikují příkaz, který se má vyvolat. Parametr nCmdExecOpt určuje přesnou akci, která se má provést.

COleDocObjectItem::GetActiveView

Voláním této členské funkce získáte ukazatel na IOleDocumentView rozhraní aktuálně aktivního zobrazení.

LPOLEDOCUMENTVIEW GetActiveView() const;

Vrácená hodnota

Ukazatel na IOleDocumentView rozhraní aktuálně aktivního zobrazení. Pokud neexistuje žádné aktuální zobrazení, vrátí hodnotu NULL.

Poznámky

Počet odkazů na vrácený IOleDocumentView ukazatel se před vrácením této funkce nezvýšil.

COleDocObjectItem::GetPageCount

Voláním této členské funkce načtěte počet stránek v dokumentu.

BOOL GetPageCount(
    LPLONG pnFirstPage,
    LPLONG pcPages);

Parametry

pnFirstPage
Ukazatel na číslo první stránky dokumentu. Může mít hodnotu NULL, což označuje, že volající toto číslo nepotřebuje.

pcPages
Ukazatel na celkový počet stránek v dokumentu Může mít hodnotu NULL, což označuje, že volající toto číslo nepotřebuje.

Vrácená hodnota

Nenulové, pokud je úspěšné; jinak 0.

COleDocObjectItem::OnPreparePrinting

Tato členová funkce je volána architekturou k přípravě dokumentu pro tisk.

static BOOL OnPreparePrinting(
    CView* pCaller,
    CPrintInfo* pInfo,
    BOOL bPrintAll = TRUE);

Parametry

pCaller
Ukazatel na objekt CView , který odesílá příkaz print.

pInfo
Ukazatel na objekt CPrintInfo , který popisuje úlohu, která se má vytisknout.

bPrintAll
Určuje, jestli se má vytisknout celý dokument.

Vrácená hodnota

Nenulové, pokud je úspěšné; jinak 0.

COleDocObjectItem::OnPrint

Tato členová funkce je volána rozhraním pro tisk dokumentu.

static void OnPrint(
    CView* pCaller,
    CPrintInfo* pInfo,
    BOOL bPrintAll = TRUE);

Parametry

pCaller
Ukazatel na objekt CView, který odesílá příkaz print.

pInfo
Ukazatel na objekt CPrintInfo , který popisuje úlohu, která se má vytisknout.

bPrintAll
Určuje, jestli se má vytisknout celý dokument.

COleDocObjectItem::QueryCommand

Dotazy na stav jednoho nebo více příkazů generovaných událostmi uživatelského rozhraní

HRESULT QueryCommand(
    ULONG nCmdID,
    DWORD* pdwStatus,
    OLECMDTEXT* pCmdText =NULL,
    const GUID* pguidCmdGroup =NULL);

Parametry

nCmdID
identifikátor příkazu, na který se dotazuje.

pdwStatus
Ukazatel na příznaky vrácené v důsledku dotazu. Seznam možných hodnot naleznete v tématu OLECMDF.

pCmdText
Ukazatel na strukturu OLECMDTEXT , ve které chcete vrátit informace o názvu a stavu pro jeden příkaz. Může mít hodnotu NULL, která označuje, že volající tyto informace nepotřebuje.

pguidCmdGroup
Jedinečný identifikátor skupiny příkazů; může mít hodnotu NULL pro určení standardní skupiny.

Vrácená hodnota

Úplný seznam vrácených hodnot najdete v tématu IOleCommandTarget::QueryStatus v sadě Windows SDK.

Poznámky

Tato členová funkce emuluje funkce IOleCommandTarget::QueryStatus metoda, jak je popsáno v sadě Windows SDK.

COleDocObjectItem::Release

Uvolní připojení k propojené položce OLE a zavře ji, pokud byla otevřená. Nezničí položku klienta.

virtual void Release(OLECLOSE dwCloseOption = OLECLOSE_NOSAVE);

Parametry

dwCloseOption
Příznak určující, za jakých okolností je položka OLE uložena při návratu do načteného stavu. Seznam možných hodnot najdete v tématu COleClientItem::Close.

Poznámky

Nezničí položku klienta.

Viz také

MFC – ukázka MFCBIND
COleClientItem – třída
Graf hierarchie
COleClientItem – třída
CDocObjectServerItem – třída