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

El método IAccessible::get_accSelection recupera los elementos secundarios seleccionados de este objeto. Todos los objetos que admiten la selección deben admitir esta propiedad.

Sintaxis

HRESULT get_accSelection(
  [out, retval] VARIANT *pvarChildren
);

Parámetros

[out, retval] pvarChildren

Tipo: VARIANT*

Dirección de una estructura VARIANT que recibe información sobre los elementos secundarios seleccionados. En la tabla siguiente se describe la información devuelta en pvarChildren.

Miembro vt Miembro de valor
VT_EMPTY
No se selecciona ningún elemento secundario.
VT_DISPATCH
Se selecciona un objeto secundario y la dirección de su interfaz IDispatch se establece en el miembro pdispVal .
VT_I4
lVal contiene el identificador secundario del elemento secundario seleccionado. Si lVal es CHILDID_SELF, esto significa que se selecciona el propio objeto.
VT_UNKNOWN
Se seleccionan varios objetos secundarios y el miembro punkVal contiene la dirección de la interfaz IUnknown . El cliente consulta esta interfaz para la interfaz IEnumVARIANT , que usa para enumerar los objetos seleccionados.

Valor devuelto

Tipo: HRESULT

Si se ejecuta correctamente, devuelve S_OK.

Si no se ejecuta correctamente, devuelve uno de los valores de la tabla siguiente u otro código de error COM estándar. Los servidores devuelven estos valores, pero los clientes siempre deben comprobar los parámetros de salida para asegurarse de que contienen valores válidos. Para obtener más información, vea Comprobación de valores devueltos de IAccessible.

Error Descripción
DISP_E_MEMBERNOTFOUND
El objeto no admite esta propiedad.

Comentarios

Este método debe admitir la interfaz IEnumVARIANT .

Este método devuelve un puntero de interfaz IDispatch o un identificador secundario para el parámetro pvarChildren . Para obtener más información sobre cómo usar el puntero de interfaz IDispatch o el identificador secundario, vea Cómo se usan los identificadores secundarios en parámetros.

Al igual que con otros métodos y funciones IAccessible , los clientes pueden recibir errores para punteros de interfaz IAccessible debido a una acción del usuario. Para obtener más información, vea Recepción de errores para punteros de interfaz IAccessible.

Nota: Este método recupera un elemento seleccionado, no texto seleccionado.

Ejemplo de servidor

En el código de ejemplo siguiente se muestra una posible implementación de este método para un cuadro de lista de selección única personalizada. Su método GetSelectedIndex devuelve -1 si no hay ningún elemento seleccionado.

// m_pControl is the control that returns this accessible object. 

HRESULT STDMETHODCALLTYPE AccServer::get_accSelection(VARIANT *pvarChildren)
{
    int childID = m_pControl->GetSelectedIndex() + 1; // Convert from 0-based. 
    if (childID <= 0)
    {
        pvarChildren->vt = VT_EMPTY;
    }
    else 
    {
        pvarChildren->vt = VT_I4;
        pvarChildren->lVal = childID;
    }
    return S_OK;
};




Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado oleacc.h
Library Oleacc.lib
Archivo DLL Oleacc.dll
Redistribuible RDK de accesibilidad activa 1.3 en Windows NT 4.0 con SP6 y versiones posteriores y Windows 95

Consulte también

IAccessible

IAccessible::accSelect

IAccessible::get_accFocus

IDispatch

Propiedades y métodos de selección y enfoque

VARIANT