Qt 在TableView中保持相同的选择颜色,无论它是';是不是很活跃

Qt 在TableView中保持相同的选择颜色,无论它是';是不是很活跃,qt,pyqt,pyqt5,qstylesheet,Qt,Pyqt,Pyqt5,Qstylesheet,我正在GUI中使用QTableView类,我希望无论TableView是活动的还是非活动的,所选行都具有相同的颜色。 我尝试设置此CSS样式表以实现以下目标: QTableView:!active { selection-background-color: palette(Highlight); selection-color: palette(HighlightedText) } 在Linux上,它工作得很好,但在Windows7上,当TableView失去焦点时,文本将变为

我正在GUI中使用QTableView类,我希望无论TableView是活动的还是非活动的,所选行都具有相同的颜色。 我尝试设置此CSS样式表以实现以下目标:

QTableView:!active {
    selection-background-color: palette(Highlight);
    selection-color: palette(HighlightedText)
}

在Linux上,它工作得很好,但在Windows7上,当TableView失去焦点时,文本将变为黑色而不是白色(背景保持蓝色,因此该部分没有问题)。我在这里遗漏了什么吗?

您还必须设置文本颜色的样式,例如,只需添加:

QTableView:!active {
...
selection-color: white;
}

应该是
调色板(突出显示)
调色板(突出显示文本)
。这是我做的一个解决办法,但ekhumoro解决方案也可以,我不想在样式表中硬编码颜色。@陷阱,太好了,我只是使用这个简单的方法在视图不在焦点时更改为其他颜色,这是一个什么要求的问题:)