风格不QItemDelegate

问题描述:

工作,我有一个QTreeView则和我用这个样式表风格不QItemDelegate

QTreeView#treeView::item:selected:active 
{ 
    background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #6ea1f1, stop: 1 #567dbc); 
} 
QTreeView#treeView::item:hover 
{ 
    background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #e7effd, stop:1 #cbdaf1); 
    border: 1px solid #bfcde4; 
} 
QTreeView#treeView::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; 
} 

它工作正常。但文我用

self.treeView.setItemDelegate(GenericDelegate()) 

凡GenericDelegate被定义为波纹管

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 

我的风格不工作了!
我做错了什么?

我应该使用

QStyledItemDelegate 

,而不是

QItemDelegate 

它现在!