【发布时间】:2015-07-22 04:59:34
【问题描述】:
我注意到,如果在 HTML 中我们使用 bgcolor="#ffd814" 类型,那么在 textedit 中,背景颜色将变为颜色。如何从 QAction 和 QColorDialog 获得相同的结果?
我用过这个
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);
}
但它不会改变HTML,所以关闭和打开后文件背景是白色的。
备注:在
中使用 bgcolor="#ffd814" 不会改变 textedit 中的滚动条颜色。如果我们使用 QColor::name 它将以 QString 格式返回颜色名称 (#ffd814) 我们如何将它放在 html 中。例如
void MainWindow::on_actionText_Color_triggered()
{
QColor color = QColorDialog::getColor(Qt::white,this);
if(color.isValid())
ui->textEdit->setTextColor(color);
}
这会改变所选文本的颜色并将其保存在 html 中,因此我们在 textedit 中所做的更改会被记住。
【问题讨论】:
-
我已经看过了,它们不能按需要正常工作。