Разноцветные многострочные комментарии в QTextEdit

В QTextEdit надо задавать блоки текста

[строка
строка
строка
...]

т.е. подобие многострочного комментария. Как мне выделить их разными цветами?

Пробовал через QSyntaxHighlighter, но пока не получилось. Буду признателен любой помощи.


Ответы (1 шт):

Автор решения: Alexander Chernin

Можно представлять текст в виде html-блока и воспользоваться методом QTextEdit.setHtml:

html = '[<p style="color: red">Строка</p><p style="color:green">Строка</p>]'

text = QTextEdit()
text.setHtml(html)

Сами цвета можно задавать отдельно, например в gui:

colorP1 = 'red'
colorP2 = 'green'
html = f'[<p style="color: {colorP1}">Строка</p><p style="color:{colorP2}">Строка</p>]'

text = QTextEdit()
text.setHtml(html)
→ Ссылка