3

所以我有一个树视图,如下所示;

    #QTreeView widget
    #Shows files in set directory
    self.treeView = QtWidgets.QTreeView(self.centralWidget)
    self.treeView.setSortingEnabled(True)
    self.treeView.setObjectName("treeView")
    self.horizontalLayout_4.addWidget(self.treeView)
    self.file_model=QtWidgets.QFileSystemModel()
    self.file_model.setRootPath('C:\My Stuff\Movies')
    self.treeView.setModel(self.file_model)
    self.treeView.setRootIndex(self.file_model.index('C:\My Stuff\Movies'))
    self.treeView.setColumnWidth(0,275)
    self.file_model.setNameFilters(self.filterList)
    self.file_model.setNameFilterDisables(0)

如您所见,我有一个过滤器可以隐藏不通过过滤器的项目(例如 *.mkv),但是我的目录中有包含不符合过滤器要求的文件的文件夹。该文件夹保留在我的树视图中,即使它是空的,我如何删除这些空文件夹(请记住,当我应用允许显示文件夹中文件的过滤器时,我需要能够显示这些文件夹。

我正在运行 PyQt5、Python 3.5、Windows 7。

4

0 回答 0