OLE のダイアログ ボックス

ユーザーが OLE 対応アプリケーションを実行しているときに、アプリケーションで処理を実行するうえでユーザーからの情報が必要になる場合があります。 MFC OLE クラスには、必要な情報を収集するための既定のダイアログ ボックスが用意されています。 この記事では、OLE ダイアログ ボックスによって処理されるタスクと、それらのダイアログ ボックスを表示するために必要なクラスの一覧を示します。 OLE ダイアログ ボックスとその動作をカスタマイズするために使用される構造の詳細については、MFC リファレンスを参照してください。

コモン ダイアログ ボックス

"オブジェクトの挿入"
このダイアログ ボックスでは、ユーザーは、新しく作成されたオブジェクトまたは既存のオブジェクトを複合ドキュメントに挿入できます。 また、ユーザーは項目をアイコンとして表示して、[アイコンの変更] コマンド ボタンを有効にすることもできます。 このダイアログ ボックスは、ユーザーが [編集] メニューから [オブジェクトの挿入] を選択した場合に表示されます。 クラスを COleInsertDialog 使用して、このダイアログ ボックスを表示します。 MDI アプリケーションをそれ自体に挿入することはできません。 SDI アプリケーションでない限り、コンテナー/サーバーであるアプリケーションをそれ自体に挿入することはできません。

特殊な貼り付け
このダイアログ ボックスでは、ユーザーは、データを複合ドキュメントに貼り付けるときに使用する形式を制御できます。 ユーザーは、データの形式に加え、データを埋め込むかリンクするか、およびデータをアイコンとして表示するかどうかを選択できます。 このダイアログ ボックスは、ユーザーが [編集] メニューから [形式を選択して貼り付け] を選択した場合に表示されます。 クラスを COlePasteSpecialDialog 使用して、このダイアログ ボックスを表示します。

変更アイコン
このダイアログ ボックスでは、ユーザーは、リンク項目または埋め込み項目を表すために表示されるアイコンを選択できます。 このダイアログ ボックスは、ユーザーが [編集] メニューから [アイコンの変更] を選択するか、[形式を選択して貼り付け] または [変換] ダイアログ ボックスで [アイコンの変更] ボタンを選択した場合に表示されます。 また、ユーザーが [オブジェクトの挿入] ダイアログ ボックスを開き、[アイコンで表示] を選択した場合にも表示されます。 クラスを COleChangeIconDialog 使用して、このダイアログ ボックスを表示します。

CONVERT
このダイアログ ボックスでは、ユーザーは、埋め込み項目またはリンク項目の種類を変更できます。 たとえば、複合ドキュメントにメタファイルを埋め込み、後で別のアプリケーションを使用して埋め込みメタファイルを変更する場合は、[変換] ダイアログ ボックスを使用できます。 多くの場合、このダイアログ ボックスは、[編集] メニューの [<項目の種類> オブジェクト] をクリックし、カスケード メニューの [変換] をクリックすると、表示されます。 クラスを COleConvertDialog 使用して、このダイアログ ボックスを表示します。 サンプルについては、MFC OLE サンプル OCLIENT を実行してください。

"リンクの編集" または "リンクの更新"
[リンクの編集] ダイアログ ボックスでは、ユーザーは、リンク オブジェクトのソースに関する情報を変更できます。 [リンクの更新] ダイアログ ボックスでは、現在のダイアログ ボックス内のすべてのリンク項目のソースが確認され、必要に応じて [リンクの編集] ダイアログ ボックスが表示されます。 [リンクの編集] ダイアログ ボックスは、ユーザーが [編集] メニューから [リンク] を選択した場合に表示されます。 [リンクの更新] ダイアログ ボックスは、通常、複合ドキュメントを最初に開いたときに表示されます。 表示する COleLinksDialog ダイアログ ボックスに COleUpdateDialog 応じて、クラスまたはクラスを使用します。

"サーバー使用中" または "サーバーが応答しない"
[サーバー使用中] ダイアログ ボックスは、ユーザーが項目をアクティブ化しようとしたときに、通常はサーバーが別のユーザーまたはタスクによって使用されているためにサーバーが現在要求を処理できない場合に表示されます。 [サーバーが応答しない] ダイアログ ボックスは、サーバーがアクティブ化要求にまったく応答しない場合に表示されます。 これらのダイアログ ボックスは、OLE インターフェイス IMessageFilter の実装に基づいて COleMessageFilter を介して表示されます。ユーザーは、アクティブ化要求を再試行するかどうかを決定できます。 クラスを COleBusyDialog 使用して、このダイアログ ボックスを表示します。

関連項目

ダイアログ ボックス
MFC でのダイアログ ボックスの操作
OLE