如何更改QGraphicsTextItem的颜色

时间:2010-07-31 08:52:01

标签: python qt qt4 pyqt

我有一个带有多个(QGraphicsTextItem)的场景,我需要控制它们的颜色,那么如何更改QGraphicsTextItem的颜色?反正有可能吗?到目前为止我已经尝试了3天。请帮忙


提前谢谢

2 个答案:

答案 0 :(得分:6)

我认为您可以通过调用方法来更改文本颜色:

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

您有一个示例here

或在Qt智能助理中寻找图表场景示例

答案 1 :(得分:1)

setDefaultTextColor(col)“将未格式化的文本的颜色设置为col。”文档不清楚“无格式文本”的含义。我认为这意味着:“项目内容的所有部分都没有被设置样式。”

内容是QTextDocument。

使用QTextCursor设置文档的一部分。您不能设置QTextDocument本身的样式,只能设置由QTextCursor选择的部分(但您可以选择整个文档。)

您可以使用方法mergeCharFormat(QTextCharFormat)设置QTextCursor的样式

QTextCharFormat有方法:

  • 前景()。setColor(QColor)
  • setForeground(QBrush)
  • setTextOutline(QPEN)

前景是一个QBrush,它描绘了几个东西,包括“文本”(但更好的说法:填充字符?)

一个细微差别是某些新构造的QBrush具有(默认为)QBrushStyle.NoBrush,即使你使用setColor()也是透明的。