我有一个具有两个成员的结构:word
:string和pos
:int(词性)。
我想像这样在words
中以上面的pos
输出QTextEdit
使用SyntaxHighlighter
制作彩色字体和背景还是更容易?
答案 0 :(得分:2)
您可以将文本设置为html:
QString pos = "Hello. p .v.";
QString word = "word";
ui->textEdit->setHtml("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">"
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">"
"p, li { white-space: pre-wrap; }"
"</style></head><body style=\" font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;\">"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-style:italic; color:#888a85;\">" + pos + ". </span></p>"
"<p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:14pt; font-weight:600; color:#2e3436;\">" + word + "</span></p></body></html>");
输出: