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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QTextEdit: как изменить расстояние между строк?  (Прочитано 8385 раз)
Cepera
Гость
« : Июль 06, 2004, 10:31 »

Мне требуется доработать QTextEdit - требуется сделать из него навороченный редактор исходников - раскрывающиеся функции, составные операторы (примерно как редакторе в VS.Net).

В голову пришло 2 варианта решения:
  1. Вставить в режиме RichText картинки с элементами древовидной структуры.
  2. Предусмотреть свободное место в тексте и поверх нарисовать ручками все что надо.

При реализации первого варианта возникла следующая проблема - QTextEdit оставляет свободное место между картинками и таким образом структура дерева разрывается. И соответсвенно требуется изменять расстояние между строками, точнее уменьшить его до 0.
Как я понимаю существует 2 решения этой проблемы - переопределение функций drawContents(), drawContentsOffset(), drawFrame(), drawText() или использование QStyleSheetItem,  QStyleSheet.

Со вторым способом отрисовки предется решать теже проблемы похоже.

Возможно есть еще какие-то варианты решения?

При реализиции помимо визуализации понадобится и внутреннюю логику разрабатывать в связи с чем возникает такой вопрос есть ли какая-нибудь документация или наработки по использованию внутренних недокументированных классов типа QTextDocument, QTextParagraph и других используемых в редакторе в Qt Designer и в редакторе QSA.

В атачмент положил скриншот того, что получилось при вставлянии картинок в текст.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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