OLE 中的对话框

当用户运行启用了 OLE 的应用程序时,有时应用程序需要用户提供的信息来执行操作。 MFC OLE 类提供默认对话框来收集所需的信息。 本文列出了 OLE 对话框处理的任务以及显示这些对话框所需的类。 有关 OLE 对话框和用于自定义其行为的结构的详细信息,请参阅 MFC 参考

通用对话框

插入对象
此对话框允许用户将新创建的对象或现有对象插入复合文档中。 它还允许用户选择将项目显示为图标并启用“更改图标”命令按钮。 当用户从“编辑”菜单中选择“插入对象”时显示此对话框。 使用 COleInsertDialog 类以显示此对话框。 不能将 MDI 应用程序插入自身。 应用程序作为容器/服务器不能插入其本身,除非它是 SDI 应用程序。

选择性粘贴
此对话框允许用户控制将数据粘贴到复合文档中时使用的格式。 用户可以选择数据的格式、是嵌入还是链接数据,以及是否将其显示为图标。 当用户从“编辑”菜单中选择“选择性粘贴”时显示此对话框。 使用 COlePasteSpecialDialog 类以显示此对话框。

更改图标
此对话框允许用户选择显示哪个图标来表示链接项或嵌入项。 当用户从“编辑”菜单中选择“更改图标”或选择“选择性粘贴”或“转换”对话框中的“更改图标”按钮时显示此对话框。 当用户打开“插入对象”对话框并选择“显示为图标”时,也会显示它。 使用 COleChangeIconDialog 类以显示此对话框。

转换
此对话框允许用户更改嵌入项或链接项的类型。 例如,如果在复合文档中嵌入了元文件,稍后想要使用另一个应用程序来修改嵌入的元文件,则可以使用“转换”对话框。 此对话框通常通过单击“编辑”菜单上的“对象类型”来显示,然后在级联菜单上单击“转换”。 使用 COleConvertDialog 类以显示此对话框。 例如,运行 MFC OLE 示例 OCLIENT

编辑链接或更新链接
“编辑链接”对话框允许用户更改有关链接对象的源的信息。 “更新链接”对话框验证当前对话框中所有链接项的源,并在必要时显示“编辑链接”对话框。 当用户从“编辑”菜单中选择“链接”时,显示“编辑链接”对话框。 通常,首次打开复合文档时,将显示“更新链接”对话框。 根据要显示的对话框,使用 COleLinksDialogCOleUpdateDialog 类。

服务器繁忙或服务器未响应
当用户尝试激活项目并且服务器当前无法处理请求时,将显示“服务器忙”对话框,这通常是因为其他用户或任务正在使用服务器。 如果服务器根本不响应激活请求,将显示“服务器未响应”对话框。 这些对话框通过 COleMessageFilter 显示,该显示基于 OLE 接口 IMessageFilter 的实现,用户可以决定是否再次尝试激活请求。 使用 COleBusyDialog 类以显示此对话框。

另请参阅

对话框
在 MFC 中使用对话框
OLE