Метод ITextRangeProvider::Move (uiautomationcore.h)
Перемещает текстовый диапазон вперед или назад на указанное количество единиц текста.
Синтаксис
HRESULT Move(
TextUnit unit,
[in] int count,
[out, retval] int *pRetVal
);
Параметры
unit
[in] count
Тип: int
Количество единиц текста, на которое следует выполнить перемещение. Положительное значение перемещает текстовый диапазон вперед.
Отрицательное значение перемещает текстовый диапазон назад. Ноль не оказывает никакого влияния.
[out, retval] pRetVal
Тип: int*
Количество фактически перемещенных текстовых единиц. Это значение может быть меньше запрошенного числа, если любая из новых конечных точек текстового диапазона больше или меньше конечных точек, полученных методом ITextProvider::D ocumentRange . Это значение может быть отрицательным, если навигация выполняется в обратном направлении.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
ITextRangeProvider::Move должен перемещать только диапазон текста, охватывая другую часть текста, и не должен изменять текст каким-либо образом.
Для неразлагаемого (непустого) текстового диапазона ITextRangeProvider::Move должен нормализовать и переместить текстовый диапазон, выполнив следующие действия.
- Свернуть текстовый диапазон в вырожденный (пустой) диапазон в начальной конечной точке.
- При необходимости переместите результирующий текстовый диапазон в документе в начало границы запрошенной единицы.
- Перемещение текстового диапазона вперед или назад в документе на требуемое количество границ единиц текста.
- Разверните диапазон текста из вырожденного состояния, переместив конечную конечную точку вперед на одну запрошенную границу текстовой единицы.
Для вырожденного диапазона текста ITextRangeProvider::Move должен просто переместить точку вставки текста на указанное количество единиц текста.
При перемещении текстового диапазона поставщик должен игнорировать границы всех внедренных в текст объектов.
ITextRangeProvider::Move должен учитывать как скрытый, так и видимый текст.
Если текстовый элемент управления не поддерживает единицу текста, указанную параметром unit , поставщик должен заменить следующую поддерживаемую текстовую единицу.
Размер текстовых единиц (от наименьшей до самой большой) выглядит следующим образом.
- Символ
- Формат
- Word
- Строка
- Paragraph
- Страница
- Документ
Поведение диапазона, когда единица измерения имеет значение TextUnit::Format
TextUnit::Format
как значение единицы помещает границу текстового диапазона для расширения или перемещения диапазона на основе общих атрибутов текста (формата) текста в диапазоне. Однако при использовании текстовой единицы формата не следует перемещать или расширять текстовый диапазон через границу внедренного объекта, например изображения или гиперссылки. Дополнительные сведения см. в разделе модель автоматизации пользовательского интерфейса текстовых единиц или Шаблоны элементов управления Text и TextRange.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2003 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | uiautomationcore.h (включая UIAutomation.h) |
См. также раздел
Основные понятия
Справочные материалы
Шаблоны элементов управления Text и TextRange
Общие сведения о поставщиках автоматизации пользовательского интерфейса
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по