使用原因:表格、列表、树控件背景默认是一片空白的,这样在视觉上不美观。如下:
如何让行背景色隔行颜色交替显示呢,即像如下那样的效果:
实现代码如下:
sourceView->setAlternatingRowColors(true);
sourceView->setStyleSheet("alternate-background-color:rgb(11,231,255);background-color:rgb(222,191,255)");
代码说明如下:
- sourceView为QAbstractItemView对象,也就是说只要是QAbstractItemView类的子类(如:QTreeView、QTreeWidget、QTableView、QTableWidget、QColumnView、QHeaderView, QListView、QListWidget 、 QUndoView)都能调用setAlternatingRowColor方法,即具有alternatingRowColors属性。要使隔行颜色交替显示起作用,必须把该属性设置为true。
- 样式表alternate-background-color属性设置隔行颜色。
- 样式表background-color属性设置背景色,如果没有设置该值,则默认以QPalette::Base颜色显示,即普通窗体的背景色。如下为没设置background-color的效果: