次の方法で共有


COleDocObjectItem クラス

Active ドキュメント コンテインメントを実装します。

構文

class COleDocObjectItem : public COleClientItem

メンバー

パブリック コンストラクター

名前 説明
COleDocObjectItem::COleDocObjectItem COleDocObject項目を構築します。

パブリック メソッド

名前 説明
COleDocObjectItem::D oDefaultPrinting 既定のプリンター設定を使用して、コンテナー アプリケーションのドキュメントを印刷します。
COleDocObjectItem::ExecCommand ユーザーが指定したコマンドを実行します。
COleDocObjectItem::GetActiveView ドキュメントのアクティブなビューを取得します。
COleDocObjectItem::GetPageCount コンテナー アプリケーションのドキュメント内のページ数を取得します。
COleDocObjectItem::OnPreparePrinting コンテナー アプリケーションのドキュメントを印刷用に準備します。
COleDocObjectItem::OnPrint コンテナー アプリケーションのドキュメントを出力します。
COleDocObjectItem::QueryCommand ユーザー インターフェイスのイベントによって生成された 1 つ以上のコマンドの状態を調べるためにクエリを実行します。
COleDocObjectItem::Release OLE リンク アイテムへの接続を解放し、開いていた場合は閉じます。 クライアント項目を破棄しません。

解説

MFC では、アクティブ ドキュメントは通常のインプレース編集可能埋め込みと同様に処理され、次の違いがあります。

  • COleDocument派生クラスは、現在埋め込まれている項目の一覧を保持しますが、これらの項目はCOleDocObjectItem派生アイテムである可能性があります。

  • 作業中の文書がアクティブな場合、ビューがインプレースアクティブの場合、そのドキュメントはビューのクライアント領域全体を占有します。

  • Active ドキュメント コンテナーには、 Help メニューのフル コントロールがあります。

  • Help メニューには、Active ドキュメント コンテナーとサーバーの両方のメニュー項目が含まれています。

Active ドキュメント コンテナーは Help メニューを所有しているため、コンテナーはサーバー Help メニュー メッセージをサーバーに転送します。 この統合は、 COleDocObjectItemによって処理されます。

メニューの結合とアクティブなドキュメントのアクティブ化の詳細については、「 Active Document Containmentの概要」を参照してください。

継承階層

CObject

CCmdTarget

CDocItem

COleClientItem

COleDocObjectItem

要件

ヘッダー: afxole.h

COleDocObjectItem::COleDocObjectItem

このメンバー関数を呼び出して、 COleDocObjectItem オブジェクトを初期化します。

COleDocObjectItem(COleDocument* pContainerDoc = NULL);

パラメーター

pContainerDoc
作業中のドキュメント コンテナーとして機能する COleDocument オブジェクトへのポインター。 IMPLEMENT_SERIALIZEを有効にするには、このパラメーターを NULL にする必要があります。 通常、OLE 項目は NULL 以外のドキュメント ポインターを使用して構築されます。

COleDocObjectItem::D oDefaultPrinting

既定の設定を使用して、フレームワークによってドキュメントに呼び出されます。

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

パラメーター

pCaller
print コマンドを送信している CView オブジェクトへのポインター。

pInfo
印刷するジョブを記述する CPrintInfo オブジェクトへのポインター。

COleDocObjectItem::ExecCommand

このメンバー関数を呼び出して、ユーザーが指定したコマンドを実行します。

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

パラメーター

nCmdID
実行するコマンドの識別子。 pguidCmdGroup で識別されるグループに含まれている必要があります。

nCmdExecOpt
コマンド実行オプションを指定します。 既定では、ユーザーにメッセージを表示せずにコマンドを実行するように設定します。 値の一覧については、 OLECMDEXECOPT を参照してください。

pguidCmdGroup
コマンド グループの一意識別子。 既定では、標準グループを指定する NULL。 nCmdIDで渡されるコマンドは、グループに属している必要があります。

戻り値

成功した場合はS_OKを返します。それ以外の場合は、次のいずれかのエラー コードを返します。

説明
E_UNEXPECTED Unexpected error occurred. (予期しないエラーが発生しました。)
E_FAIL エラーが発生しました。
E_NOTIMPL MFC 自体がコマンドの変換とディスパッチを試みる必要があることを示します。
OLECMDERR_E_UNKNOWNGROUP pguidCmdGroup は NULL 以外ですが、認識されるコマンド グループは指定しません。
OLECMDERR_E_NOTSUPPORTED nCmdID は、グループ pGroup で有効なコマンドとして認識されません。
OLECMDERR_DISABLED nCmdID によって識別されるコマンドは無効になっており、実行できません。
OLECMDERR_NOHELP 呼び出し元は、 nCmdID で識別されるコマンドに関するヘルプを要求しましたが ヘルプは使用できません。
OLECMDERR_CANCELLED ユーザーが実行を取り消しました。

解説

pguidCmdGroupnCmdID パラメーターは、呼び出すコマンドを一意に識別します。 nCmdExecOpt パラメーターは、実行するアクションを正確に指定します。

COleDocObjectItem::GetActiveView

このメンバー関数を呼び出して、現在アクティブなビューの IOleDocumentView インターフェイスへのポインターを取得します。

LPOLEDOCUMENTVIEW GetActiveView() const;

戻り値

現在アクティブなビューの IOleDocumentView インターフェイスへのポインター。 現在のビューがない場合は NULL を返します。

解説

返された IOleDocumentView ポインターの参照カウントは、この関数によって返される前にインクリメントされません。

COleDocObjectItem::GetPageCount

このメンバー関数を呼び出して、ドキュメント内のページ数を取得します。

BOOL GetPageCount(
    LPLONG pnFirstPage,
    LPLONG pcPages);

パラメーター

pnFirstPage
ドキュメントの最初のページの番号へのポインター。 NULL を指定できます。これは、呼び出し元がこの番号を必要としないことを示します。

pcPages
ドキュメント内のページの合計数へのポインター。 NULL を指定できます。これは、呼び出し元がこの番号を必要としないことを示します。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

COleDocObjectItem::OnPreparePrinting

このメンバー関数は、印刷用のドキュメントを準備するためにフレームワークによって呼び出されます。

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

パラメーター

pCaller
print コマンドを送信している CView オブジェクトへのポインター。

pInfo
印刷するジョブを記述する CPrintInfo オブジェクトへのポインター。

bPrintAll
文書全体を印刷するかどうかを指定します。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

COleDocObjectItem::OnPrint

このメンバー関数は、ドキュメントを印刷するためにフレームワークによって呼び出されます。

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

パラメーター

pCaller
print コマンドを送信している CView オブジェクトへのポインター。

pInfo
印刷するジョブを記述する CPrintInfo オブジェクトへのポインター。

bPrintAll
文書全体を印刷するかどうかを指定します。

COleDocObjectItem::QueryCommand

ユーザー インターフェイスのイベントによって生成された 1 つ以上のコマンドの状態を調べるためにクエリを実行します。

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

パラメーター

nCmdID
クエリ対象のコマンドの識別子。

pdwStatus
クエリの結果として返されるフラグへのポインター。 使用可能な値の一覧については、「 OLECMDFを参照してください。

pCmdText
1 つのコマンドの名前と状態情報を返す OLECMDTEXT 構造体へのポインター。 呼び出し元がこの情報を必要としないことを示す場合は NULL を指定できます。

pguidCmdGroup
コマンド グループの一意識別子。は、標準グループを指定する場合は NULL にすることができます。

戻り値

戻り値の完全な一覧については、Windows SDK IOleCommandTarget::QueryStatus を参照してください。

解説

このメンバー関数は、Windows SDK で説明されているように、 IOleCommandTarget::QueryStatus メソッドの機能をエミュレートします。

COleDocObjectItem::Release

OLE リンク アイテムへの接続を解放し、開いていた場合は閉じます。 クライアント項目を破棄しません。

virtual void Release(OLECLOSE dwCloseOption = OLECLOSE_NOSAVE);

パラメーター

dwCloseOption
読み込まれた状態に戻ったときに OLE 項目を保存する状況を指定するフラグ。 使用可能な値の一覧については、「 COleClientItem::Closeを参照してください。

解説

クライアント項目を破棄しません。

関連項目

MFC サンプル MFCBIND
COleClientItem クラス
階層図
COleClientItem クラス
CDocObjectServerItem クラス