crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QTextEdit и подсветка предложения.
hkarel
  опции профиля:
сообщение 8.11.2010, 17:13
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 25
Регистрация: 25.5.2009
Пользователь №: 771

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте.
Имеется произвольный текст. Текст может содержать несколько абзацев. В абзаце может быть несколько предложений.
Задача состоит в том, чтобы при перемещении курсора мыши над участками текста подсвечивалось предложение над которым находится курсор. Так же необходимо "понимать" какое предложение подсвечено, т.е. получать текст этого предложения, или любой адекватный идентификатор.
Если говорить об аналогиях, то переведенный текст (несколько предложений) на странице гугл-переводчика как раз реализуют заданное поведение.
В качестве реализации необязательно использовать QTextEdit, возможен любой наиболее подходящий компонент.
Надеюсь на советы опытных разработчиков!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
molchanoviv
  опции профиля:
сообщение 10.11.2010, 10:50
Сообщение #2


Старейший участник
****

Группа: Сомодератор
Сообщений: 597
Регистрация: 18.7.2008
Из: Саратов
Пользователь №: 238

Спасибо сказали: 41 раз(а)




Репутация:   5  


На русском языке это сделать не сложно вясняем позицию курсора мыши QCurosr::pos() затем с помощью QTextEdit::cursorForPosition(const QPoint & pos) получаем QTextCursor и вычленяем нужное предложение. От начала текста до точки, от точки до точки или от точки до конца текста. Кстати не в курсе как в китайском тексте а в японском точка обозначается как "。", так-что я думаю и в Китайском что-то такое есть. Составишь пару регулярок для отсечения текста до позиции курсора и после и укажешь в них в качестве разделителя (.|。|что-то еще).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.4.2024, 13:30