IModelObject::GetParentModel 方法 (dbgmodel.h)

GetParentModel 方法返回给定对象的父模型链中的第 i 个父模型。 父模型按添加或枚举的线性顺序搜索属性或概念。 索引 i 为零的父模型在索引为 i + 1 的父模型之前 (分层) 搜索。

语法

HRESULT GetParentModel(
  ULONG64      i,
  IModelObject **model,
  IModelObject **contextObject
);

参数

i

从零开始的线性索引,指示链中要检索的父模型。

model

此处将返回表示第 i 个父模型的 IModelObject

contextObject

如果父模型具有关联的上下文调整器,则将在此处返回调整后的上下文。 有关此值的详细信息,请参阅 AddParentModel 的文档。

返回值

此方法返回指示成功或失败的 HRESULT。

注解

代码示例

ComPtr<IModelObject> spObject; /* get an object */

ULONG64 numModels;
if (SUCCEEDED(spObject->GetNumberOfParentModels(&numModels)))
{
    // Enumerate the set of parents in linear resolution order:
    for (ULONG64 i = 0; i < numModels; ++i)
    {
        ComPtr<IModelObject> spParent;
        ComPtr<IModelObject> spContextAdjustor;
        if (SUCCEEDED(spObject->GetParentModel(i, &spParent, &spContextAdjustor)))
        {
            // spParent contains the i-th parent model
            // spContext optionally contains a context adjustor.  Properties above 
            //     this in the tree will use this context instead of spObject.
            //     Conceptually, this is a *this* pointer thunk/adjustor.  The 
            //     adjustor can be a property which must be fetched instead of a static value.
        }
    }
}

要求

要求
Header dbgmodel.h

另请参阅

IModelObject 接口