IVBGetControl::EnumControls 方法 (vbinterf.h)
枚举窗体上的控件。
语法
HRESULT EnumControls(
[in] DWORD dwOleContF,
[in] DWORD dwWhich,
[out] LPENUMUNKNOWN *ppenumUnk
);
参数
[in] dwOleContF
指定要枚举的 OLE 对象的类型。 此参数可以是 OLECONTF 枚举枚举的下列值之一。
值 | 含义 |
---|---|
|
枚举窗体上的嵌入对象。 包括此标志以枚举 OLE 控件。 |
|
枚举窗体上的链接对象。 |
|
枚举所有伪 OLE 对象。 包括此标志以枚举 VBX 控件。 |
|
仅枚举用户知道的对象。 |
|
仅枚举窗体上运行的对象。 |
枚举 OLE 控件时,建议将标志 OLECONTF_ONLYUSER、 OLECONTF_ONLYIFRUNNING和OLECONTF_EMBEDDINGS组合在 一起。 若要同时包含 OLE 控件和 VBX 控件,请将 OLECONTF_OTHERS 标志添加到此列表。 若要仅枚举 VBX 控件,请删除 OLECONTF_EMBEDDINGS 标志并包含 OLECONTF_OTHERS 标志。
[in] dwWhich
指定要枚举的控件集。 此参数的取值可为下列值之一:
将其中一个标志 GC_WCH_SIBLING、 GC_WCH_CONTAINER、 GC_WCH_CONTAINED或 GC_WCH_ALL 与任何GC_WCH_Fxxx 标志结合使用。
在 VBX 代码中,GC_FORM标志传递给 VBGetControl 以获取指向窗体的指针。 在 OLE 控制代码中,没有直接替换此标志。 而是将 GC_WHC_ALL 传递到 EnumControls ,并使用指向枚举中第一个控件的指针。 使用 GC_WHC_ALL 时,枚举中的第一个控件始终是窗体。
[out] ppenumUnk
指向 OLE 对象的枚举的指针。
返回值
此方法支持标准返回值 E_INVALIDARG、 E_OUTOFMEMORY和 E_UNEXPECTED,以及以下内容:
注解
将 VBX 控件迁移到 OLE 控件时, EnumControls 将替换不再受支持的 Visual Basic VBGetControl。
要求
目标平台 | Windows |
标头 | vbinterf.h |