0
我试图创建我自己的QFileIconProvider
类,我想用QFileSystemModel
。 我结束了这段代码:Python/Pyside:自己的QFileIconProvider实现失败,没有抛出任何异常
class SeIconProvider(QtGui.QFileIconProvider):
def __init__(self):
QtGui.QFileIconProvider.__init__(self)
self.rsFileIcon = QtGui.QIcon(':images/rs-file.png')
self.otherFileIcon = QtGui.QIcon(':images/newfile.png')
self.folderIcon = QtGui.QIcon(':images/openFolder.png')
def icon(self, type):
if type == self.File:
return self.rsFileIcon
if type == self.Folder:
return self.folderIcon
return self.otherFileIcon
def icon(self, info):
if info.isFile():
return self.otherFileIcon
if info.isDir():
return self.folderIcon
return self.otherFileIcon
def type(self, info):
if info.isDir():
return 'Directory'
return 'File'
class FolderView(QtGui.QTreeView):
def __init__(self):
QtGui.QTreeView.__init__(self)
self.createComponents()
self.createLayout()
def createComponents(self):
self.model = QtGui.QFileSystemModel()
self.model.setIconProvider(SeIconProvider())
self.setModel(self.model)
def createLayout(self):
self.setHeaderHidden(True)
现在我的问题是,不仅没有图标显示在树视图,但代码不会引发任何异常。有人知道我做错了什么吗?