Método IAccessible::get_accChild (oleacc.h)

O método IAccessible::get_accChild recupera um IDispatch para o filho especificado, se houver. Todos os objetos devem dar suporte a essa propriedade.

Sintaxe

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

Parâmetros

[in] varChild

Tipo: VARIANT

Identifica o filho cuja interface IDispatch é recuperada. Para obter mais informações sobre como inicializar o VARIANT, consulte Como as IDs filho são usadas em parâmetros.

[out, retval] ppdispChild

Tipo: IDispatch**

[out, retval] Recebe o endereço da interface IDispatch do objeto filho.

Retornar valor

Tipo: HRESULT

Se for bem-sucedido, retornará S_OK.

Se não for bem-sucedido, retornará um dos valores na tabela a seguir ou outro código de erro COM padrão. Os servidores retornam esses valores, mas os clientes devem sempre marcar parâmetros de saída para garantir que eles contenham valores válidos. Para obter mais informações, consulte Verificando valores retornados do IAccessible.

Erro Descrição
S_FALSE
O filho não é um objeto acessível.
E_INVALIDARG
Um argumento não é válido.

Comentários

Os servidores expõem elementos como elementos (IDs filho) ou objetos completos (ponteiros de interface IAccessible ). Se um filho for um elemento, get_accChild retornará S_FALSE e o pai fornecerá informações para esse filho. Se o filho for um objeto completo, get_accChild retornará o ponteiro da interface IAccessible e o pai não fornecerá informações sobre esse filho. Se get_accChild falhar porque o aplicativo de servidor não pode criar um objeto acessível devido a um erro temporário do sistema (como um erro de memória insuficiente), o servidor deverá retornar um código de falha adequado.

Observação para desenvolvedores de servidores: Se varChildID contiver VT_EMPTY, você deverá retornar E_INVALIDARG.

Exemplo de servidor

O código de exemplo a seguir mostra uma implementação para um objeto que não tem filhos ou cujos filhos são elementos em vez de objetos.

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

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho oleacc.h
Biblioteca Oleacc.lib
DLL Oleacc.dll
Redistribuível Active Accessibility 1.3 RDK no Windows NT 4.0 com SP6 e posterior e Windows 95

Confira também

AccessibleChildren

Iaccessible

IAccessible::get_accParent

IDispatch

Propriedades e métodos de navegação de objeto

VARIANT