Метод IUIAutomationTextRange::Move (uiautomationclient.h)
Перемещает текстовый диапазон вперед или назад на указанное количество единиц текста.
Синтаксис
HRESULT Move(
[in] TextUnit unit,
[in] int count,
[out, retval] int *moved
);
Параметры
[in] unit
Тип: TextUnit
Значение типа , указывающее тип текстовых единиц, таких как символ, слово, абзац и т. д.
[in] count
Тип: int
Количество единиц текста, на которое следует выполнить перемещение. Положительное значение перемещает текстовый диапазон вперед. Отрицательное значение перемещает текстовый диапазон назад. Ноль не оказывает влияния.
[out, retval] moved
Тип: int*
Получает количество фактически перемещенных текстовых единиц. Это значение может быть меньше запрошенного числа, если любая из конечных точек нового диапазона текста больше или меньше конечных точек, полученных методом IUIAutomationTextPattern::D ocumentRange . Это значение может быть отрицательным, если навигация выполняется в обратном направлении.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
IUIAutomationTextRange::Move перемещает диапазон текста в другую часть текста; он никак не изменяет текст.
Для недегенерационного (непустого) текстового диапазона IUIAutomationTextRange::Move нормализует и перемещает диапазон, выполнив следующие действия.
- Текстовый диапазон свернут до дегенерированного (пустого) диапазона в начальной конечной точке.
- При необходимости результирующий диапазон текста перемещается в документе в начало границы запрошенной текстовой единицы.
- Текстовый диапазон перемещается вперед или назад в документе на требуемое количество границ единиц текста.
- Диапазон текста расширяется из состояния вырождения путем перемещения конечной точки вперед на одну запрошенную границу текстовой единицы.
Для вырожденного текстового диапазона IUIAutomationTextRange::Move просто перемещает точку вставки текста на указанное число единиц текста.
При перемещении текстового диапазона IUIAutomationTextRange::Move игнорирует границы всех внедренных объектов в тексте.
IUIAutomationTextRange::Move учитывает как скрытый, так и видимый текст.
Если текстовый элемент управления не поддерживает единицу текста, указанную параметром unit , IUIAutomationTextRange::Move заменяет следующую большую поддерживаемую единицу текста.
Размер текстовых единиц , от наименьшей до самой большой, выглядит следующим образом.
- Символ
- Формат
- Word
- Строка
- Paragraph
- Страница
- Документ
Поведение диапазона при значении единицы измеренияTextUnit::Format
TextUnit::Format
как значение единицы позиционирует границу текстового диапазона для расширения или перемещения диапазона на основе атрибутов общего текста (формата) текста в диапазоне. Однако использование текстовой единицы форматирования не приведет к перемещению или расширению диапазона текста через границу внедренного объекта, например изображения или гиперссылки. Дополнительные сведения см. в разделе модель автоматизации пользовательского интерфейса текстовых единиц или поддержка модель автоматизации пользовательского интерфейса для текстового содержимого.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7, Windows Vista с пакетом обновления 2 (SP2) и Обновление платформы для Windows Vista, Windows XP с пакетом обновления 3 (SP3) и Обновление платформы для Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и обновление платформы для Windows Server 2008, Windows Server 2003 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | uiautomationclient.h (включая UIAutomation.h) |
См. также раздел
Модель автоматизации пользовательского интерфейса поддержка текстового содержимого