在扫描了几个示例后,我没有设法解决这个问题:我为此创建了一个测试,它有一个QPlainTextEdit
包含一些文本的简单 MainWindow。在触发器上,我希望部分文本为红色并带有下划线。但这永远不会发生。
问候
我的代码:
void MainWindow::on_actionTest_triggered()
{
QTextCursor cur = ui.plainTextEdit->textCursor();
cur.setPosition(49);
QTextCharFormat oldFormat = cur.charFormat();
QTextCharFormat newFormat = oldFormat;
newFormat.setForeground(Qt::darkRed);
newFormat.setUnderlineColor(Qt::darkRed);
newFormat.setUnderlineStyle(QTextCharFormat::WaveUnderline);
newFormat.setFontUnderline(true);
cur.setCharFormat(newFormat);
cur.setPosition(cur.position()+11);
cur.setCharFormat(oldFormat);
ui.plainTextEdit->setTextCursor(cur);
}
使用 QTextEdit 不会改变任何东西)