[Solved] Style not working with QItemDelegate
-
I have a QTreeview and I used this stylesheet
@ QTreeView::item:selected:active
{
background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #6ea1f1, stop: 1 #567dbc);
}
QTreeView::item:hover
{
background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #e7effd, stop:1 #cbdaf1);
border: 1px solid #bfcde4;
}
QTreeView::item:has-children
{
background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #cccccc, stop:1 #aaaaaa);
border: 1px solid #777777;
border-left: 0;
border-right: 0;
font-weight: bold;
}@
It works fine. But wen I use@ self.treeView.setItemDelegate(GenericDelegate())@
Where GenericDelegate is defined as bellow
@ class GenericDelegate(QItemDelegate):
def __init__(self, parent=None): super(GenericDelegate, self).__init__(parent) def createEditor(self, parent, option, index): if index.row()==1: cb = QtGui.QComboBox(parent) cb.addItems('A') cb.addItems('B') return cb@
My style doesn't work any more!
I am doing something wrong? -
Try inheriting from QStyledItemDelegate.
-
Thanks.
It works