我有以下问题。 我的
QTableView
的背景颜色设置为 black
,(内容)颜色设置为 white
。因此,白色文本出现在黑色背景上 - 一切似乎都是正确的。但是,当编辑(在编辑模式下键入)内容颜色变为黑色并且由于黑色背景而变得完全不可见时,但编辑工作正常。确认后 - 颜色恢复为白色。如何将当前正在编辑的文本的颜色设置为白色(最好通过样式表)或在这种情况下停止此类更改?
设置调色板终于成功了。
QPalette 调色板;
palette.setColor(QPalette::Text, Qt::white);
qApp->setPalette(调色板);
首先,当tableview的某个单元格处于编辑状态时,它被一个QLineEdit覆盖。您可以通过在样式表中将QLineEdit的背景颜色设置为透明来验证这一点
QLineEdit{
background-color: transparent;
}
设置完成后,您会发现单元格处于编辑状态,有正在编辑的文本和显示的文本。
因此,解决这个问题的方法是在你的样式表中设置QLineEdit的样式。
QLineEdit {
background-color: rgb(68,67,49);
border: 0px;
font-size:13px;
font-family:SimHei;
color:#ADB5BD;
qproperty-alignment: AlignCenter;
}