【问题标题】:Hide Size, Type and Date modified columns in QFileSystemModel在 QFileSystemModel 中隐藏大小、类型和修改日期列
【发布时间】:2020-03-15 04:35:53
【问题描述】:

我想删除以下内容:

我只想“仅”显示文件名。

这是我的 QTreeView 代码:

self.model = QFileSystemModel()
self.model.setRootPath(QDir.rootPath())
self.model.setFilter(QDir.NoDotAndDotDot | QDir.AllEntries | QDir.Dirs | QDir.Files)
self.proxy_model = QSortFilterProxyModel(recursiveFilteringEnabled = True, filterRole = QFileSystemModel.FileNameRole)
self.proxy_model.setSourceModel(self.model)
self.model.setReadOnly(False)
self.model.setNameFilterDisables(False)

self.indexRoot = self.model.index(self.model.rootPath())

self.treeView = QTreeView(self)
self.treeView.setModel(self.proxy_model)
self.adjust_root_index()

self.treeView.setRootIndex(self.indexRoot)
self.treeView.clicked.connect(self.on_treeView_clicked)
self.treeView.doubleClicked.connect(self.treeMedia_doubleClicked)
self.treeView.setDragDropMode(QAbstractItemView.InternalMove)
self.treeView.setAnimated(True)
self.treeView.setIndentation(20)
self.treeView.setSortingEnabled(True)
self.treeView.setDragEnabled(True)
self.treeView.setAcceptDrops(True)
self.treeView.setDropIndicatorShown(True)
self.treeView.setEditTriggers(QTreeView.NoEditTriggers)
self.treeView.setContextMenuPolicy(Qt.CustomContextMenu)
self.treeView.customContextMenuRequested.connect(self.showContextMenu)

我尝试了 PyQt5 API 中的一些选项,例如 setHeader(),但我无法弄清楚它是如何工作的。我不确定setHeader() 是否就是我想要的。

【问题讨论】:

    标签: python pyqt pyqt5 qtreeview qfilesystemmodel


    【解决方案1】:

    您可以使用QHeaderViewhideSection() 方法隐藏列:

    for i in range(1, self.treeView.model().columnCount()):
        self.treeView.header().hideSection(i)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-10-04
      • 1970-01-01
      • 1970-01-01
      • 2016-12-31
      • 1970-01-01
      • 1970-01-01
      • 2014-02-24
      • 1970-01-01
      相关资源
      最近更新 更多