IAccessible::get_accChild 方法 (oleacc.h)

如果指定子系存在, IAccessible::get_accChild 方法會擷取指定的子系的 IDispatch 。 所有物件都必須支援這個屬性。

語法

HRESULT get_accChild(
  [in]          VARIANT   varChild,
  [out, retval] IDispatch **ppdispChild
);

參數

[in] varChild

類型: VARIANT

識別擷取 其 IDispatch 介面的子系。 如需初始化 VARIANT 的詳細資訊,請參閱 如何在參數中使用子標識碼

[out, retval] ppdispChild

類型: IDispatch**

[out, retval]接收子物件的 IDispatch 介面位址。

傳回值

類型: HRESULT

如果成功,則傳回 S_OK。

如果未成功,則會傳回下表中的其中一個值,或另一個標準 COM 錯誤碼。 伺服器會傳回這些值,但客戶端必須一律檢查輸出參數,以確保它們包含有效的值。 如需詳細資訊,請參閱 檢查 IAccessible 傳回值

錯誤 Description
S_FALSE
子系不是可存取的物件。
E_INVALIDARG
引數無效。

備註

伺服器會將專案公開為子標識碼 () 或完整物件, (IAccessible 介面指標) 。 如果子系是元素, get_accChild 會傳回S_FALSE,父系會提供該子系的資訊。 如果子系是完整物件, get_accChild 會傳回 IAccessible 介面指標,父代將不會提供該子系的相關信息。 如果 get_accChild 失敗,因為伺服器應用程式因為暫時系統錯誤而無法建立可存取的物件, (例如記憶體不足的錯誤) ,伺服器應該會傳回適當的失敗碼。

請記下伺服器開發人員: 如果 varChildID 包含VT_EMPTY,您應該傳回E_INVALIDARG。

伺服器範例

下列範例程式代碼示範對象沒有任何子系或其子系不是對象的實作。

HRESULT STDMETHODCALLTYPE AccServer::get_accChild( 
    VARIANT varChild,
    IDispatch **ppdispChild)
{
    if (varChild.vt != VT_I4)
    {
        *ppdispChild = NULL;
        return E_INVALIDARG;
    }
    *ppdispChild = NULL;    
    return S_FALSE;     
};

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 oleacc.h
程式庫 Oleacc.lib
Dll Oleacc.dll
可轉散發套件 sp6 和更新版本和 Windows 95 Windows NT 4.0 上的 Active Accessibility 1.3 RDK

另請參閱

AccessibleChildren

IAccessible

IAccessible::get_accParent

IDispatch

對象導覽屬性和方法

變異