MFCBIND サンプル : Active ドキュメント コンテナ
更新 : 2007 年 11 月
MFCBIND サンプルでは、MFC の Active ドキュメント コンテナ サポート クラスを使用する Active ドキュメント (以前の DocObject) コンテナの使い方を示します。MFC Binder サンプルは、COleDocObjectItem クラスを使用して MFC ドキュメントにおける埋め込み Active ドキュメントを表す SDI アプリケーションです。MFCBIND の機能は、Microsoft Office に付属している Office バインダー アプリケーションとよく似ています。
セキュリティに関するメモ : |
---|
このサンプル コードは概念を示す目的で提供されているものです。必ずしも最も安全なコーディング手法に従っているわけではないので、アプリケーションまたは Web サイトでは使用しないでください。Microsoft は、サンプル コードが意図しない目的で使用された場合に、付随的または間接的な損害について責任を負いません。 |
サンプルとそのインストール手順を取得するには
Visual Studio で、[ヘルプ] メニューの [サンプル] をクリックします。
詳細については、「サンプル ファイルの格納場所」を参照してください。
使用できるサンプルの最新バージョンと完全な一覧については、オンラインの Visual Studio 2008 Samples のページを参照してください。
サンプルは、コンピュータのハード ディスク上にもあります。既定では、サンプルおよび Readme ファイルは、\Program Files\Visual Studio 9.0\Samples\ の下のフォルダにコピーされます。Visual Studio Express Edition の場合、すべてのサンプルはオンライン上にあります。
サンプルのビルドと実行
MFCBIND サンプルをビルドおよび実行するには
ソリューション ファイル mfcbind.sln を開きます。
[ビルド] メニューの [ビルド] をクリックします。
アプリケーションを起動し、[Section] メニューの [Add] をクリックして、必要なセクションをすべてバインダに追加します。
セクションの例としては、イメージや Word および Excel のドキュメントがあります。セクションをバインダに追加すると、そのセクションのネイティブ アプリケーションで操作する場合と同様に、MFC Binder アプリケーションでセクションを直接編集できます。
バインダでセクションの編集が終わったら、[File] メニューの [Save] をクリックしてバインダを保存します。[Save] によって、バインダ内のセクションが 1 つのファイルに保存されます。後からバインダを再び開くと、前回保存した状態のセクションを使用できます。
MFC の Active ドキュメント
MFC では、Active ドキュメントは通常の埋め込み先での編集ができるドキュメントと同じように扱われます。COleDocument 派生クラスでは、現在埋め込まれているアイテムの一覧が引き続き保持されます。COleClientItem オブジェクトは、COleClientItem から派生した COleDocObjectItem クラスによって置き換えられますが、COleDocument に埋め込まれたアイテムを表します。COleDocument 派生クラスによって一覧に保持されるのは、これらの COleDocObjectItem 派生アイテムです。ただし、Active ドキュメントは、埋め込み先編集が有効な場合にビューのクライアント領域を占有します。また、以前の埋め込み先のドキュメントとは異なり、Active ドキュメント コンテナは [Help] メニューをすべて制御します。[Help] メニューには、Active ドキュメントのコンテナとサーバーの両方に対応するメニュー項目があります。Active ドキュメント コンテナは [Help] メニューを所有するため、[Help] メニューのサーバー対応部分のメッセージをサーバーに転送します。[Help] メニューのマージとメッセージ転送の機能は、MFC フレームワークによって完全に処理されます。
キーワード
このサンプルでは、次のキーワードを使用します。
COleClientItem::FinishCreate、COleClientItem::GetIconFromRegistry、IOleObject::GetUserClassID、COleClientItem::OnChange、COleClientItem::OnChangeItemPosition、COleClientItem::OnGetItemPosition、COleClientItem::OnActivate、COleDocument::GetInPlaceActiveItem、COleClientItem::Deactivate、COleClientItem::CreateNewItem、COleClientItem::DoVerb、COleDocObjectItem::COleDocObjectItem、COleClientItem::CreateFromFile、COleClientItem::Activate、COleDocObjectItem::OnPreparePrintin、COleDocObjectItem::OnPrint、SystemParametersInfo、MeasureItem、DrawItem、GetSystemMetrics、SelectObject
メモ : |
---|
このサンプルを含む一部のサンプルには、Visual C++ のウィザード、ライブラリ、およびコンパイラの変更が反映されていませんが、必要なタスクを実行する方法は示されています。 |