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の概要」を参照してください。
継承階層
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 | ユーザーが実行を取り消しました。 |
解説
pguidCmdGroup と nCmdID パラメーターは、呼び出すコマンドを一意に識別します。 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 クラス