COleInsertDialog 类
用于 OLE“插入对象”对话框。
语法
class COleInsertDialog : public COleDialog
成员
公共构造函数
名称 | 描述 |
---|---|
COleInsertDialog::COleInsertDialog | 构造 COleInsertDialog 对象。 |
公共方法
名称 | 描述 |
---|---|
COleInsertDialog::CreateItem | 创建对话框中选定的项。 |
COleInsertDialog::DoModal | 显示 OLE“插入对象”对话框。 |
COleInsertDialog::GetClassID | 获取与所选的项关联的 CLSID。 |
COleInsertDialog::GetDrawAspect | 指定是否将项绘制为图标。 |
COleInsertDialog::GetIconicMetafile | 获取与此项的图标形式关联的图元文件的句柄。 |
COleInsertDialog::GetPathName | 获取对话框中所选文件的完整路径。 |
COleInsertDialog::GetSelectionType | 获取所选对象的类型。 |
公共数据成员
“属性” | 描述 |
---|---|
COleInsertDialog::m_io | 控制对话框行为的 OLEUIINSERTOBJECT 类型的结构。 |
备注
要调用此对话框时,请创建类 COleInsertDialog
的对象。 构造 COleInsertDialog
对象后,可以使用 m_io 结构来初始化对话框中控件的值或状态。 m_io
结构的类型为 OLEUIINSERTOBJECT。 有关使用此对话框类的详细信息,请参阅 DoModal 成员函数。
注意
应用程序向导生成的容器代码使用此类。
有关详细信息,请参阅 Windows SDK 中的 OLEUIINSERTOBJECT 结构。
有关特定于 OLE 对话框的详细信息,请参阅文章 OLE 中的对话框。
继承层次结构
COleInsertDialog
要求
标头:afxodlgs.h
COleInsertDialog::COleInsertDialog
此函数仅构造一个 COleInsertDialog
对象。
COleInsertDialog (
DWORD dwFlags = IOF_SELECTCREATENEW,
CWnd* pParentWnd = NULL);
参数
dwFlags
创建标志,包含要使用“按位或”运算符组合的以下任意数量的值:
IOF_SHOWHELP - 指定在调用对话框时,将显示“帮助”按钮。
IOF_SELECTCREATENEW - 指定在调用对话框时,最开始将选中“新建”单选按钮。 这是默认值,不能与 IOF_SELECTCREATEFROMFILE 一起使用。
IOF_SELECTCREATEFROMFILE - 指定在调用对话框时,最开始将选中“从文件创建”单选按钮。 不能与 IOF_SELECTCREATENEW 一起使用。
IOF_CHECKLINK - 指定在调用对话框时,最开始将选中“链接”复选框。
IOF_DISABLELINK - 指定在调用对话框时,将禁用“链接”复选框。
IOF_CHECKDISPLAYASICON - 指定在调用对话框时,最开始将选中“显示为图标”复选框,显示当前图标,并启用“更改图标”按钮。
IOF_VERIFYSERVERSEXIST - 指定对话框应在显示之前通过确保存在注册数据库中指定的服务器来验证其添加到列表框中的类。 设置此标志可能会严重影响性能。
pParentWnd
指向对话框对象所属的父窗口对象或所有者窗口对象(CWnd
类型)。 如果为 NULL,则对话框对象的父窗口设置为主应用程序窗口。
备注
要显示对话框,请调用 DoModal 函数。
COleInsertDialog::CreateItem
仅当 DoModal 返回 IDOK 时,才调用此函数以创建 COleClientItem 类型的对象。
BOOL CreateItem(COleClientItem* pItem);
参数
pItem
指向要创建的项。
返回值
如果已创建项,则为非零;否则为 0。
备注
必须先分配 COleClientItem
对象,然后才能调用此函数。
COleInsertDialog::DoModal
调用此函数以显示 OLE“插入对象”对话框。
virtual INT_PTR
DoModal();
INT_PTR
DoModal(DWORD dwFlags);
参数
dwFlags
以下值之一:
COleInsertDialog::DocObjectsOnly
仅插入 DocObject。
COleInsertDialog::ControlsOnly
仅插入 ActiveX 控件。
零既不插入 DocObject,也不插入 ActiveX 控件。 此值生成与上面列出的第一个原型相同的实现。
返回值
对话框的完成状态。 以下值之一:
如果对话框成功显示,为 IDOK。
如果用户取消了对话框,为 IDCANCEL。
如果发生错误,为 IDABORT。 如果返回 IDABORT,请调用 COleDialog::GetLastError 成员函数以获取有关所发生错误类型的详细信息。 有关可能的错误的列表,请参阅 Windows SDK 中的 OleUIInsertObject 函数。
注解
如果要通过设置 m_io 结构的成员来初始化各种对话框控件,应在调用 DoModal
之前但在构造对话框对象之后执行此操作。
如果 DoModal
返回 IDOK,可以调用其他成员函数来检索用户在对话框中输入的设置或信息。
COleInsertDialog::GetClassID
仅当 DoModal 返回 IDOK 且选择类型为 COleInsertDialog::createNewItem
时,才调用此函数以获取与所选项关联的 CLSID。
REFCLSID GetClassID() const;
返回值
返回与所选项关联的 CLSID。
备注
有关详细信息,请参阅 Windows SDK 中的 CLSID 项。
COleInsertDialog::GetDrawAspect
调用此函数以确定用户是否选择将所选的项显示为图标。
DVASPECT GetDrawAspect() const;
返回值
呈现对象所需的方法。
DVASPECT_CONTENT - 如果未选中“显示为图标”复选框,返回该方法。
DVASPECT_ICON - 如果选中“显示为图标”复选框,返回该方法。
注解
仅在 DoModal 返回 IDOK 时调用此函数。
有关绘图方面的详细信息,请参阅 Windows SDK 中的 FORMATETC 数据结构。
COleInsertDialog::GetIconicMetafile
调用此函数以获取包含所选项的图像方面内容的图元文件的句柄。
HGLOBAL GetIconicMetafile() const;
返回值
如果在通过选择“确定”关闭对话框时,选定了“显示为图标”复选框,返回包含所选项的图标方面的图元文件的句柄;否则返回 NULL。
COleInsertDialog::GetPathName
仅当 DoModal 返回 IDOK 且选择类型不是 COleInsertDialog::createNewItem
时,才调用此函数以获取所选文件的完整路径。
CString GetPathName() const;
返回值
对话框中所选文件的完整路径。 如果选择类型为 createNewItem
,则此函数将在发布模式下返回无意义的 CString
,或在调试模式下导致断言。
COleInsertDialog::GetSelectionType
当通过选择“确定”关闭“插入对象”对话框时,调用此函数以获取所选的选择类型。
UINT GetSelectionType() const;
返回值
所做的选择的类型。
备注
返回类型值由 COleInsertDialog
类中声明的 Selection
枚举类型指定。
enum Selection {
createNewItem,
insertFromFile,
linkToFile
};
这些值的简要说明如下:
COleInsertDialog::createNewItem
- 已选中“新建”单选按钮。COleInsertDialog::insertFromFile
- 已选中“从文件创建”单选按钮,未选中“链接”复选框。COleInsertDialog::linkToFile
- 已选中“从文件创建”单选按钮,并且已选中“链接”复选框。
COleInsertDialog::m_io
用于控制“插入对象”对话框行为的 OLEUIINSERTOBJECT 类型的结构。
OLEUIINSERTOBJECT m_io;
备注
此结构的成员可以直接修改,也可以通过成员函数修改。
有关详细信息,请参阅 Windows SDK 中的 OLEUIINSERTOBJECT 结构。