COleDocObjectItem – třída
Implementuje zahrnutí aktivního dokumentu.
Syntaxe
class COleDocObjectItem : public COleClientItem
Členové
Veřejné konstruktory
Název | Popis |
---|---|
COleDocObjectItem::COleDocObjectItem | COleDocObject Vytvoří položku. |
Veřejné metody
Název | 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ýtCOleDocObjectItem
-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
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.
Návratová 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;
Návratová 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.
Návratová 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.
Návratová 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.
Návratová 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