我正在写一篇关于qt的文本编辑器,我偶然发现了保存文件更改的问题。我使用丰富的texedit来更改颜色,但是当我更改所选单词的颜色并保存文件时,它不会保存颜色变化。
我知道我可以创建类似config.txt文件的内容,app可以自动更改,但这会进行全局更改,我想保存每个文件的更改。
可以吗?
备注: Word Office可以保存个别更改,因此1.doc和2.doc的格式不同。
void MainWindow::on_actionFont_triggered()
{
bool ok;
QFont font = QFontDialog::getFont(&ok,QFont("Palatino Linotype",12,QFont::Normal),this);
if(ok)
ui->textEdit->setFont(font);
}
void MainWindow::on_actionText_Color_triggered()
{
QColor color = QColorDialog::getColor(Qt::white,this);
if(color.isValid())
ui->textEdit->setTextColor(color);
}
void MainWindow::on_actionBackground_Color_triggered()
{
QColor color = QColorDialog::getColor(Qt::white,this);
QPalette palette;
palette.setColor(QPalette::Base,color);
if(color.isValid())
ui->textEdit->setPalette(palette);
}
答案 0 :(得分:2)
由于您没有提供用于保存和加载文件的代码(但),我的猜测是:


使用QTextEdit保存RichtText时必须使用 toHtml()
<保存文本/ a>而不是 toPlainText()
。
另一种方法是使用底层 QTextDocument 和 QTextDocumentWriter 用于保存文件。
&#xA;&#xA;如果您澄清了有关编辑和保存文本的问题,我将编辑此答案。< / p>&#XA;