C# клавиатура и предсказание слов
В настоящее время я занимаюсь разработкой настольного приложения на C#, представляющего собой простую виртуальную клавиатуру с возможностью прогнозирования слов.
Процесс прогнозирования начнется после ввода первых трех букв слова, а затем предоставит предложения. Мне нужно отслеживать каретку во время набора текста, и я пытался использовать события richTextBox, такие как SelectionChanged, но это требует проверки регулярного выражения и отслеживания положения вручную (объявление переменных...).
Мои вопросы: есть ли предложения, которые могут помочь мне в выполнении этой задачи? Что насчет слушателей? они полезны?
Примечание: у меня нет многолетнего опыта работы с.NET Framework, и я раньше не использовал Listeners.
Также обратите внимание, что метод ввода - это взгляд! что означает, что не ключевые события будут работать!
Спасибо.
1 ответ
Это будет в WPF или WinForms? Я бы решил эту проблему следующим образом. Возможно, не самый быстрый способ, но стоит попробовать, пока у вас не появится что-то еще.
Событие OnKeyDown вашего RTB проверяет, был ли последний символ пробелом. Если не получено целое слово из последнего пробела, проверьте список слов и обновите список на экране.
чтобы проверить, где находится курсор в то время, в вашем слове, просто сделайте то же самое, что и выше, и попытайтесь получить текущее слово, а затем индекс определенной клавиши.