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

O método IAccessible::accSelect modifica a seleção ou move o foco do teclado do objeto especificado. Todos os objetos que dão suporte à seleção ou recebem o foco do teclado devem dar suporte a esse método.

Sintaxe

HRESULT accSelect(
  [in] long    flagsSelect,
  [in] VARIANT varChild
);

Parâmetros

[in] flagsSelect

Tipo: long

Especifica quais operações de seleção ou foco devem ser executadas. Esse parâmetro deve ter uma combinação das constantes SELFLAG.

[in] varChild

Tipo: VARIANT

Especifica o objeto selecionado. Se o valor for CHILDID_SELF, o próprio objeto será selecionado; se uma ID filho, um dos elementos filho do objeto é selecionado. Para obter mais informações sobre como inicializar a estrutura VARIANT, consulte Como as IDs filho são usadas em parâmetros.

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.

Erro Descrição
S_FALSE
O objeto especificado não está selecionado.
E_INVALIDARG
Um argumento não é válido. Esse valor retornado significa que a combinação SELFLAG especificada não é válida ou que o valor SELFLAG não faz sentido para o objeto especificado. Por exemplo, os seguintes sinalizadores não são permitidos em uma caixa de listagem de seleção única: SELFLAG_EXTENDSELECTION, SELFLAG_ADDSELECTION e SELFLAG_REMOVESELECTION.
DISP_E_MEMBERNOTFOUND
O objeto não dá suporte a esse método.

Comentários

Os aplicativos cliente usam esse método para executar operações de seleção complexas. Para obter mais informações, consulte Selecionando objetos filho. Esse método fornece a maneira mais simples de alternar programaticamente o foco de entrada entre aplicativos. Isso se aplica a aplicativos em execução no Windows 2000.

Nota: Esse método é para a seleção de itens, não para texto.

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

Iaccessible

IAccessible::get_accFocus

IAccessible::get_accSelection

SELFLAG

Propriedades e métodos de seleção e foco

VARIANT