Russian Qt Forum
Ноябрь 25, 2024, 17:48 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTextEdit: Как «отцепиться» от ссылки?  (Прочитано 2407 раз)
xintrea
Супер активный житель
*****
Offline Offline

Сообщений: 754



Просмотр профиля WWW
« : Январь 07, 2016, 02:20 »

В QTextEdit есть стандартное поведение: печатающийся символ повторяет форматирование предыдущего символа. Это поведение разумно для обычного форматирования (bold, italic, и т.д.), но неудобно для работы со ссылками (анкорами, URL-ами) в тексте. Ссылки - это редкие и короткие гости в тексте.

Если в тексте в QTextEdit пару слов преобразовать в ссылку, и попытаться продолжить печатать обычный текст сразу после ссылки, то ничего не получится. Ссылка будет продолжать печататься, так как новые символы получают форматирование предыдущего символа.

И нужно сделать такое поведение: при нажатии Пробела или TAB сразу после ссылки - менять форматирование нового символа на обычный (без анкора). То же самое и при вставке из буфера обмена. А если нажатие Пробела или TAB происходит внутри ссылки - то ничего не делать, пускай это будет ссылка.

То есть, мне нужно каким-то образом отлавливать момент, когда появляется символ сразу после ссылки и подправлять его форматирование.

Вопрос: как отловить этот момент? Я не могу найти событие добавления символа, а обработка keyPressEvent() не поможет, ибо вставка символов возможна и из буфера обемна, и драганддропом, и хотелось бы универсальности.
Записан

Собираю информацию по крупицам
http://webhamster.ru
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.06 секунд. Запросов: 23.