Метод ITextRangeProvider::GetEnclosingElement (uiautomationcore.h)
Возвращает самый внутренний элемент, включающий указанный текстовый диапазон.
Синтаксис
HRESULT GetEnclosingElement(
[out, retval] IRawElementProviderSimple **pRetVal
);
Параметры
[out, retval] pRetVal
Тип: IRawElementProviderSimple**
Поставщик модель автоматизации пользовательского интерфейса самого внутреннего элемента, включающего указанный ITextRangeProvider.
Примечание
Включающий элемент может охватывать не только указанный ITextRangeProvider.
Если включающий элемент не найден, возвращается родительский элемент ITextProviderдля ITextRangeProvider .
Этот параметр передается неинициализированным.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Remarks
Примеры
В этом примере показан текстовый поток, содержащий ссылку на изображение. Ссылка является дочерним элементом изображения, но оба они охватывают один и тот же диапазон текста и предоставляются в виде внедренных объектов в текстовом потоке.
Hello <Image Link> World
- Изображение и ссылка также являются потомками ITextProvider потока, и любой из них можно указать в качестве childElement в вызове ITextProvider::RangeFromChild.
- Вызов ITextRangeProvider::RangeFromChild с помощью изображения или ссылки возвращает тот же текстовый диапазон (Range1).
- GetChildren не возвращает ссылку.
- GetEnclosingElement не возвращает изображение для любого текстового диапазона.
- GetEnclosingElement в Range1 возвращает ссылку.
- GetChildren в Range1 не возвращает дочерних элементов.
- GetEnclosingElement в текстовом диапазоне для ITextProvider потока возвращает поставщика.
- GetChildren в текстовом диапазоне для ITextProvider потока возвращает только изображение.
В этом примере показан текстовый поток, содержащий таблицу из двух ячеек, окруженную текстом.
Начальный текст
Ячейка таблицы 1 Ячейка таблицы 2 Конечный текст
- Случай 1. ITextProvider потока и весь текстовый диапазон
- ITextRangeProvider::GetEnclosingElement во всем текстовом диапазоне возвращает ITextProvider потока.
- GetChildren возвращает все дочерние элементы ITextProvider потока, в данном случае — только элемент table.
- Случай 2. Диапазон текста, полученный путем вызова ITextProvider::RangeFromChild в элементе table:
- ITextRangeProvider::GetEnclosingElement возвращает элемент table.
- ITextRangeProvider::GetChildren возвращает обе ячейки таблицы.
- Случай 3. Диапазон текста, охватывающий визуальное содержимое ячейки таблицы 1, ячейка таблицы 2:
- ITextRangeProvider::GetEnclosingElement возвращает элемент table.
- ITextRangeProvider::GetChildren возвращает обе ячейки таблицы.
- Случай 4. Диапазон текста, охватывающий слово Cell of Table Cell 1:
- ITextRangeProvider::GetEnclosingElement возвращает первый элемент ячейки.
- ITextRangeProvider::GetChildren не возвращает элементов.
- Случай 5. Вырожденный (пустой) текстовый диапазон, представляющий оба начала (таблица и первая ячейка):
- ITextRangeProvider::GetEnclosingElement возвращает первый элемент ячейки (самый внутренний элемент с диапазоном, который включает вырожденный диапазон).
- ITextRangeProvider::GetChildren не возвращает элементов.
- Случай 1. ITextProvider потока и весь текстовый диапазон
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | uiautomationcore.h (включая UIAutomation.h) |
См. также раздел
ITextProvider, ITextRangeProvider, ITextRangeProvider::GetChildren, общие сведения о поставщиках модель автоматизации пользовательского интерфейса