我一直在寻找QGraphicsTextItem::setPen()
,甚至是QFont::setColor()
或QFont::setForegroundColor()
等选项。它们都不存在。
如何在QGraphicsScene上绘制彩色文字?我不想使用QGraphicsTextItem::setHtml()
并使用HTML来做到这一点(不确定这是否可行)。
我正在使用Qt 4.7.4。
答案 0 :(得分:3)
您是否正在寻找setPlainText()
和setDefaultTextColor()
的组合?
http://doc.qt.io/archives/qt-4.7/qgraphicstextitem.html#setPlainText
http://doc.qt.io/archives/qt-4.7/qgraphicstextitem.html#setDefaultTextColor
如果没有,我不确定我理解你的问题......
答案 1 :(得分:3)
scene.addText(tr("Hello World"))->setDefaultTextColor(Qt::white);
答案 2 :(得分:1)
QGraphicsTextItem有一个palette
方法,它返回QPalette
,QPalette
有一个setColor方法,它扮演一个角色。
void QPalette::setColor ( ColorRole role, const QColor & color )
The role you want is
QPalette::Text The foreground color used with Base.
This is usually the same as the WindowText, in which case it must provide
good contrast with Window and Base.