2014-02-19 2 views
0

У меня есть текстовое поле в приложении GWT, которое я создаю, которое используется для расширенного поиска. Я пытаюсь найти способ использовать подсветку синтаксиса для определенных последовательностей символов (например, строку #title или просто #T) в строке поиска, но я не могу найти ничего о том, как разрешить раскраску отдельных символов. Полагаю, мне нужно что-то более сложное, чем просто TextBox, но я не уверен, что использовать. Возможно ли это сделать с однострочным, лишенным RichTextBox, или есть лучший способ?Выделение синтаксиса GWT в TextBox

ответ

2

Вы не можете сделать это с помощью ввода. Используйте FlowPanel (или просто элемент div) и установите на нем ContentEditable. Большинство браузеров поддерживают его сейчас. Затем вы можете вставлять регулярные HTML-теги (полужирный, пробел) внутри текста на KeyUpEvent, и вы можете стилизовать проходы в любом случае.

+0

Это работает, за исключением того, что позиция каретки сбрасывается до первого символа с каждым ключом. Я использую HTML (который скомпилирован в div), завернутый в FocusPanel (для keyUpHandling), и у него нет никаких позиций получения или установки каретки. Я пытался опубликовать несколько строк кода, но я не могу получить отступы для работы ... –

+0

Посмотрите на это: http://stackoverflow.com/questions/512528/set-cursor-position-in-html- textbox –

+0

Спасибо, но я действительно не знаю JavaScript. Я попытался просто скопировать его в собственный метод, но он просто возвращает 0. –

Смежные вопросы