是否可以使用QPlainTextEdit
显示包含不同字体的文字?
我试过这个,但似乎所有小部件的字体都会改变一段时间并恢复正常:
QFont font;
font.setBold(true);
ui->plainTextEdit->setFont(font);
ui->plainTextEdit->insertPlainText("Some text:\n");
font.setBold(false);
ui->plainTextEdit->setFont(font);
我尝试将QPlainTextEdit
更改为QTextEdit
它没有帮助
答案 0 :(得分:1)
QPlainTextEdit
和QTextEdit
都从setFont
继承QWidget
,而QWidget
一次只有一种字体类型。
但是,QTextEdit
exposes an interface通过QTextCharFormat
在您的情况下,解决此问题的最简单方法应该是使用QTextEdit
和setCurrentFont
方法。
QFont font;
font.setBold(true);
ui->textEdit->setCurrentFont(font);
ui->textEdit->insertPlainText("Some text:\n");
font.setBold(false);
ui->textEdit->setCurrentFont(font);
(在这种非常具体的情况下,您也可以使用setFontWeight
选择粗体/普通字体,但对于更一般的修改,setCurrentFont
更合适)