Поделиться через


Метод ITextSelection::MoveRight (tom.h)

Обобщает функциональные возможности клавиши СТРЕЛКА ВПРАВО.

Синтаксис

HRESULT MoveRight(
  long Unit,
  long Count,
  long Extend,
  long *pDelta
);

Параметры

Unit

Тип: long

Используемая единица измерения. Это может быть один из следующих вариантов.

Значение Соответствующая комбинация клавиш Значение
tomCharacter Стрелка вправо Переместить одну позицию символа вправо. Это значение по умолчанию.
tomWord Ctrl+СТРЕЛКА ВПРАВО Переместите одно слово вправо.
 

Обратите внимание, что если значение Count меньше нуля, перемещение выполняется влево.

Count

Тип: long

Число единиц для перемещения. Значение по умолчанию — 1. Если значение Count меньше нуля, перемещение выполняется влево.

Extend

Тип: long

Флаг, указывающий, как изменить выделенный фрагмент. Если аргумент Extend равен нулю (или tomMove), метод сворачивает выделение до точки вставки в активном конце, а затем перемещает его. Если параметр Extend имеет значение 1 (или tomExtend), метод перемещает активный конец и оставляет другой конец в покое. Значение по умолчанию равно нулю. Ненулевое значение Extend соответствует нажатию клавиши SHIFT в дополнение к сочетанию клавиш, описанной в разделе Единица измерения.

pDelta

Тип: long*

Фактическое количество единиц, в которые перемещается точка вставки или активный конец. Этот параметр может быть нулевым. Свертывание выделенного фрагмента, если Extend равно 0, считается одной единицей.

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

Тип: HRESULT

Метод возвращает значение HRESULT . Если метод завершается успешно, он возвращает S_OK. Если метод завершается ошибкой, он возвращает один из следующих кодов ошибок. Дополнительные сведения о кодах ошибок COM см. в разделе Обработка ошибок в COM.

Код возврата Описание
E_INVALIDARG
Недопустимая единица измерения.
S_FALSE
Сбой по какой-либо другой причине.

Комментарии

Методы перемещения Microsoft WordBasic, такие как CharRight, CharLeft, WordRight и WordLeft , — это гибридные методы, которые могут выполнять четыре действия, тесно связанные со стандартным поведением редактирования клавиш со стрелками:

  • Переместите текущую точку вставки, если нет выделенного фрагмента.
  • Перемещение активного конца выделенного фрагмента при наличии выделения.
  • Преобразуйте точку вставки в выделенный фрагмент и наоборот.
  • Возвращает логическое значение, указывающее, произошло ли перемещение.
Аргумент ExtendmoveLeft и MoveRight позволяет соответствовать первым трем приведенным выше элементам, а pDelta является обобщением четвертого. Например, при выборе , s, состоящем из одного диапазона, у вас есть следующие соответствия (для символов слева направо).
ITextSelection WordBasic Функция
s.MoveRight tomWord, 1, 1 WordRight 1,1 Перемещает активный конец на одно слово вправо.
s.MoveLeft tomCharacter, 1, 1 CharLeft 1,1 Перемещает активный конец на один символ влево.
 

Как и в WordBasic, если значение Count меньше нуля, значения слева и справа обменяются, что MoveLeft (Unit, Count, Extend) эквивалентно MoveRight(Unit, -Count, Extend).

Аналогично поведению wordBasic и пользовательского интерфейса клавиши СТРЕЛКА ВПРАВО, вызов MoveRight(Unit, Count) вырожденного выделения перемещает точку вставки на указанное количество единиц. В диапазоне вырождения вызов MoveRight(Unit, Count, 1) , где Count больше нуля, приводит к тому, что диапазон становится неразрожденным, а правый конец является активным.

Если параметр Extend имеет значение tomExtend (или не равно нулю), MoveRight перемещает только активный конец выделенного фрагмента, оставляя другой конец, где он находится. Однако если параметр Extend равен нулю и выделение начинается как неразрожденный диапазон, MoveRight(Unit, Count) где Count больше нуля, перемещает активный конец Count — 1 единицу вправо, а затем перемещает другой конец в активный. Другими словами, он создает точку вставки в активном конце. Свертывание диапазона считается одной единицей. Таким образом, MoveRight(tomCharacter) преобразовывает недегенерированную выделенную область в вырожденную в правом конце выделения. Здесь параметр Count имеет значение по умолчанию 1, а Extend — нулевое значение. Этот пример соответствует нажатию клавиши СТРЕЛКА ВПРАВО. Методы MoveLeft и MoveRight связаны с методами перемещения ITextRange , но отличаются тем, что они явно используют активный конец (конец перемещается нажатием клавиши SHIFT).

Требования

Требование Значение
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header tom.h
DLL Msftedit.dll

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

Основные понятия

ITextRange

ITextSelection

MoveLeft

Справочные материалы

Текстовая объектная модель