QTreeWidgetItem中子指示符的背景颜色?

时间:2014-02-24 02:14:47

标签: qt qt5 qtreewidget qtreewidgetitem

我正在使用QTreeWidget来显示分类属性列表。我希望顶级项目是不同的背景颜色;但是,指示它有孩子的箭头始终是白色的默认黑色(Windows 8.1,Qt 5.2.1)。以下是我添加QTreeWidget项目的方法:

QBrush fg(Qt::white);
QBrush bg(Qt::darkGray);
QTreeWidgetItem *header = new QTreeWidgetItem();
header->setText(0, "Sound File");
this->addTopLevelItem(header);
header->setFirstColumnSpanned(true);
header->setData(0, Qt::ForegroundRole, fg);
header->setData(0, Qt::BackgroundRole, bg);
header->setExpanded(true);

以下是如何呈现此内容的屏幕截图。

Example screenshot of my issue.

如何在整个行中为其提供扎实的背景?

1 个答案:

答案 0 :(得分:0)

对于指标,您可以使用StyleSheets:

QTreeWidget :: branch ::!has-children:selected {background-color:rgb(255,255,255);} QTreeWidget :: branch ::!has-children:selected:alternate {background-color:rgb(0,0,0);}

并将此StyleSheet设置为QTreeWidget ..

如果有人知道任何其他方式为个别项目做这个随意分享...我有类似的情况,我有一个孩子有不同颜色的项目..