我已经在我的python应用程序中成功使用了以下Qt代码,为具有不同背景颜色的QTableWidget中的水平标题着色:
header2 = widget.horizontalHeaderItem(2)
purple = QColor(139,103,153)
header2.setBackground(QtGui.QBrush(purple))
header3 = widget.horizontalHeaderItem(3)
orange = QColor(237,168,89)
header3.setBackground(QtGui.QBrush(orange))
但是,在我的现有应用程序的C ++ Qt插件中,等效逻辑不适用于QTableWidget水平标题,但适用于表格单元格或QTableWidgetItem。
C ++应用程序拥有自己的黑暗主题风格。如果我用plastique替换样式,那么我的代码就可以了。
QApplication::setStyle("plastique");
但是,这不是一个可接受的解决方案,因为它会改变整个应用程序的外观。
我搜索了网络和stackoverflow以寻找解决方案,this post似乎相关。它似乎是继承QHeaderView的子类,但实现对我来说有点先进。不幸的是,上面的帖子并不能解决我的问题。
我是否在正确的轨道上? 有人可以提供有关.h和.cpp以及main()实现的更多细节吗?