Função AccessibleObjectFromPoint (oleacc.h)

Recupera o endereço do ponteiro da interface IAccessible para o objeto exibido em um ponto especificado na tela.

Sintaxe

HRESULT AccessibleObjectFromPoint(
  [in]  POINT       ptScreen,
  [out] IAccessible **ppacc,
  [out] VARIANT     *pvarChild
);

Parâmetros

[in] ptScreen

Especifica, em coordenadas de tela físicas, o ponto que é examinado.

[out] ppacc

Endereço de uma variável de ponteiro que recebe o endereço da interface IAccessible do objeto.

[out] pvarChild

Endereço de uma estrutura VARIANT que especifica se o ponteiro de interface IAccessible retornado em ppacc pertence ao objeto exibido no ponto especificado ou ao pai do elemento no ponto especificado. O membro vt do VARIANT é sempre VT_I4. Se o membro lVal for CHILDID_SELF, o ponteiro da interface IAccessible em ppacc pertencerá ao objeto no ponto. Se o membro lVal não for CHILDID_SELF, ppacc será o endereço da interface IAccessible do objeto pai do elemento filho. Os clientes devem chamar VariantClear no parâmetro VARIANT recuperado quando terminarem de usá-lo.

Retornar valor

Se for bem-sucedido, retornará S_OK.

Se não for bem-sucedido, retornará um dos seguintes ou outro código de erro COM padrão.

Código de retorno Descrição
E_INVALIDARG
Um argumento não é válido.

Comentários

Essa função recupera o objeto acessível de nível mais baixo na hierarquia de objetos em um determinado ponto. Se o elemento no ponto não for um objeto acessível (ou seja, não dá suporte a IAccessible), a função recuperará a interface IAccessible do objeto pai. O objeto pai deve fornecer informações sobre o elemento filho por meio da interface IAccessible . Chame IAccessible::accHitTest para identificar o elemento filho nas coordenadas de tela especificadas.

Assim como acontece com outros métodos e funções IAccessible , os clientes podem receber erros para ponteiros de interface IAccessible devido a uma ação do usuário. Para obter mais informações, consulte Recebendo erros para ponteiros de interface IAccessible.

Exemplo de cliente

A função de exemplo a seguir seleciona o item em um ponto especificado na tela. Supõe-se que uma única seleção seja desejada.

HRESULT SelectItemAtPoint(POINT point)
{
    VARIANT varItem;
    IAccessible* pAcc;
    HRESULT hr = AccessibleObjectFromPoint(point, &pAcc, &varItem);
    if ((hr == S_OK))
    {
        hr = pAcc->accSelect((SELFLAG_TAKEFOCUS | SELFLAG_TAKESELECTION), varItem);
        VariantClear(&varItem);
        pAcc->Release();
    }
    return hr;
}

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

AccessibleObjectFromEvent

AccessibleObjectFromWindow

Acessibilidade ativa e dimensionamento de tela do Windows Vista

Iaccessible

Estrutura VARIANT