Метод IAccessible::get_accSelection (oleacc.h)

Метод IAccessible::get_accSelection извлекает выбранные дочерние элементы этого объекта. Все объекты, поддерживающие выбор, должны поддерживать это свойство.

Синтаксис

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

Параметры

[out, retval] pvarChildren

Тип: VARIANT*

Адрес структуры VARIANT , которая получает сведения о том, какие дочерние элементы выбраны. В следующей таблице описаны сведения, возвращаемые в pvarChildren.

Член vt Элемент значения
VT_EMPTY
Дочерние элементы не выбраны.
VT_DISPATCH
Выбирается один дочерний объект, а адрес его интерфейса IDispatch задается в элементе pdispVal .
VT_I4
lVal содержит идентификатор дочернего выбранного дочернего элемента. Если значение lVal CHILDID_SELF, это означает, что выбран сам объект .
VT_UNKNOWN
Выбрано несколько дочерних объектов, а элемент punkVal содержит адрес интерфейса IUnknown . Клиент запрашивает этот интерфейс для интерфейса IEnumVARIANT , который используется для перечисления выбранных объектов.

Возвращаемое значение

Тип: HRESULT

Возвращает значение S_OK, если операция завершилась успешно.

В случае успеха возвращает одно из значений в следующей таблице или другой стандартный код ошибки COM. Серверы возвращают эти значения, но клиенты должны всегда проверка выходные параметры, чтобы убедиться, что они содержат допустимые значения. Дополнительные сведения см. в разделе Проверка возвращаемых значений IAccessible.

Ошибка Описание
DISP_E_MEMBERNOTFOUND
Объект не поддерживает это свойство.

Комментарии

Этот метод должен поддерживать интерфейс IEnumVARIANT .

Этот метод возвращает указатель интерфейса IDispatch или идентификатор дочернего элемента для параметра pvarChildren . Дополнительные сведения об использовании указателя интерфейса IDispatch или дочернего идентификатора см. в разделе Использование идентификаторов дочерних элементов в параметрах.

Как и в случае с другими методами и функциями IAccess , клиенты могут получать ошибки для указателей интерфейса IAccess из-за действия пользователя. Дополнительные сведения см. в разделе Получение ошибок для указателей интерфейса IAccessible.

Примечание: Этот метод извлекает выбранный элемент, а не выделенный текст.

Пример сервера

В следующем примере кода показана возможная реализация этого метода для настраиваемого списка с одним выбором. Его метод GetSelectedIndex возвращает значение -1, если элемент не выбран.

// 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;
};




Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header oleacc.h
Библиотека Oleacc.lib
DLL Oleacc.dll
Распространяемые компоненты Активные специальные возможности 1.3 RDK в Windows NT 4.0 с пакетом обновления 6 (SP6) и более поздних версий и Windows 95

См. также раздел

IAccessible

IAccessible::accSelect

IAccessible::get_accFocus

IDispatch

Свойства и методы выделения и фокуса

ВАРИАНТ