как изменить цвет QGraphicsTextItem

У меня есть сцена с несколькими (QGraphicsTextItem)s, и мне нужно иметь контроль над их цветами , так как изменить цвет QGraphicsTextItem ? это вообще возможно? я пытался в течение 3 дней до сих пор . пожалуйста, помогите


заранее спасибо

2 ответов


Я думаю, вы можете изменить цвет текста, вызвав метод:

void QGraphicsTextItem::setDefaultTextColor ( const QColor & col );

у вас есть пример здесь.

или ищу Пример Сцены Диаграммы в вашем Qt Assistant.


setDefaultTextColor (col) "устанавливает цвет для неформатированного текста в col." В документации не ясно, что означает" неформатированный текст". Я думаю, это означает: "все части содержимого элемента, которые не были оформлены."

содержимое является QTextDocument.

вы стилизуете часть документа с помощью QTextCursor. Вы не можете стилизовать QTextDocument как таковой, только часть, выбранную QTextCursor (но вы можете выбрать целое документ.)

вы можете создать qtextcursor с помощью метода mergeCharFormat (QTextCharFormat)

QTextCharFormat имеет методы:

  • изображения().setColor (QColor)
  • setForeground(QBrush)
  • setTextOutline (QPen)

передний план-это QBrush, который рисует несколько вещей, включая "текст" (но лучше сказать: заполнение символов?)

один нюанс заключается в том, что некоторые недавно построенные QBrush иметь (по умолчанию) QBrushStyle.NoBrush, который является прозрачным, даже если вы setColor ().