ITextRange RichEdit: определить, находится ли курсор пользователя в слове?

Я использую ITextRange из элемента управления RichEdit. . Я хочу определить, касается ли слова курсора пользователя.

Проблема в том, что вызов iTextRange.expand(tomWord) будет включать хвостовые пробелы:

В скобках указан диапазон:

Before: 

      weas[]el   .

After:

      [weasel   ].

Мой первоначальный план состоял в том, чтобы расширить диапазон и проверить, содержит ли он курсор. Но курсор пользователя может быть через два пробела после слова «ласка», и диапазон все равно будет расширяться, чтобы содержать его. Так что еще я могу сделать?


person Nick Heiner    schedule 23.07.2010    source источник


Ответы (1)


Я помню, как столкнулся с похожей проблемой: как выбрать слово, не выделяя пробела в конце. Я думаю, что этот код C++

textRange->StartOf(tomWord,tomMove,NULL);
textRange->MoveEnd(tomWord,1,NULL);

должен дать вам правильный выбор, чтобы вы могли проверить, находится ли курсор в выборе.

person DavidK    schedule 01.08.2010