因此,我有一个QtGui.QTextEdit
,我想根据某些条件在其后附加文本。例如:
resultbox = QtGui.QTextEdit()
text = 'example'
if condition1:
resultbox.append(text) '''Append text to resultbox in default color.'''
elif condition2:
resultbox.append(text) '''Append the text in say, red and not the default black. How?'''
我正在寻找类似
setForegroundColor(QtColor)
上的QString(text)
方法的方法,该方法将允许我设置文本的前景色。我尝试通过为
QTextEdit
设置颜色来在PyQt4中使用stylehseets,但这不能让我选择性地为文本着色,对吗?有没有办法可以做到这一点?
谢谢
最佳答案
QTextEdit
可以处理常规的html内容,因此您可以使用以下内容来实现自己的愿望:
resultbox = QtGui.QTextEdit()
text = 'example'
if condition1:
resultbox.insertText(text) '''Append text to resultbox in default color.'''
elif condition2:
resultbox.insertHtml(QString("<font color=\"red\">%1</font>").arg(text)) '''Append the text in say, red and not the default black. How?'''