Метод IAccessible::get_accChild (oleacc.h)
Метод IAccessible::get_accChild извлекает IDispatch для указанного дочернего элемента, если он существует. Все объекты должны поддерживать это свойство.
Синтаксис
HRESULT get_accChild(
[in] VARIANT varChild,
[out, retval] IDispatch **ppdispChild
);
Параметры
[in] varChild
Тип: VARIANT
Определяет дочерний элемент, чей интерфейс IDispatch извлекается. Дополнительные сведения об инициализации VARIANT см. в разделе Использование идентификаторов дочерних элементов в параметрах.
[out, retval] ppdispChild
Тип: IDispatch**
[out, retval] Получает адрес интерфейса IDispatch дочернего объекта.
Возвращаемое значение
Тип: HRESULT
Возвращает значение S_OK, если операция завершилась успешно.
В случае успеха возвращает одно из значений в следующей таблице или другой стандартный код ошибки COM. Серверы возвращают эти значения, но клиенты должны всегда проверка выходные параметры, чтобы убедиться, что они содержат допустимые значения. Дополнительные сведения см. в разделе Проверка возвращаемых значений IAccessible.
Ошибка | Описание |
---|---|
|
Дочерний объект не является доступным объектом. |
|
Аргумент является недопустимым. |
Комментарии
Серверы предоставляют элементы как элементы (дочерние идентификаторы) или полные объекты (указатели интерфейса IAccessible ). Если дочерний элемент является элементом, get_accChild возвращает S_FALSE, а родительский элемент предоставляет сведения для этого дочернего элемента. Если дочерний объект является полным объектом, get_accChild вернет указатель интерфейса IAccessible , а родительский объект не предоставит сведения об этом дочернем элементе. Если get_accChild завершается сбоем из-за того, что серверное приложение не может создать доступный объект из-за временной системной ошибки (например, ошибки нехватки памяти), сервер должен вернуть подходящий код сбоя.
Обратите внимание на то, что разработчики серверов: Если varChildID содержит VT_EMPTY, необходимо вернуть E_INVALIDARG.
Пример сервера
В следующем примере кода показана реализация объекта, у которого нет дочерних элементов или дочерние элементы которого являются элементами, а не объектами.
HRESULT STDMETHODCALLTYPE AccServer::get_accChild(
VARIANT varChild,
IDispatch **ppdispChild)
{
if (varChild.vt != VT_I4)
{
*ppdispChild = NULL;
return E_INVALIDARG;
}
*ppdispChild = NULL;
return S_FALSE;
};
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | 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 |