Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: UVV от Август 11, 2010, 22:19



Название: QPlainTextEdit цветной блок
Отправлено: UVV от Август 11, 2010, 22:19
Привет.
Как лучше всего добавлять блоки цветного текста в QPlainTextEdit?
Сейчас пользуюсь просто appendHtml("<font color=\"blue\">" + message + "</font>");
Но данное решение не идеально, поскольку не экранирует спецсимволы html (< > & и т.д.).
Кто что посоветует?


Название: Re: QPlainTextEdit цветной блок
Отправлено: kibsoft от Август 11, 2010, 22:50
Еще один способ - юзать http://doc.trolltech.com/main-snapshot/qsyntaxhighlighter.html


Название: Re: QPlainTextEdit цветной блок
Отправлено: UVV от Август 11, 2010, 22:55
Читал, но не понял, как мне указать какой цвет использовать для вставляемого текста.
Поэтому и спрашиваю здесь. Как я понял Highlighter определяет набор правил на основе текста.
У меня нет таких правил. Я могу сказать какого цвета должен быть текст только в момент вставки.


Название: Re: QPlainTextEdit цветной блок
Отправлено: UVV от Август 13, 2010, 23:27
2 Moderators: пометить как решённое.

Решение:
Код:
QTextCharFormat textCharFormat = logView->currentCharFormat();
textCharFormat.setForeground(Qt::darkGreen);
logView->setCurrentCharFormat(textCharFormat);

Где logView имеет тип QPlainTextEdit