【发布时间】:2021-02-01 11:35:22
【问题描述】:
更新1: 基于 QFileSystemModel() 的 QTreeView。
如何在指定的树项上“setFlags”?
在子类 QFileSystemModel() 中?
class MyTreeModel(QFileSystemModel):
def __init__(self, parent=None):
super(MyTreeModel, self).__init__(parent)
# fake code:
if current_index.parent() == treeView.rootIndex():
# it is a second level folder.
# set this tree item not selectable.
current_index.setFlags(^ Qt.ItemIsSelectable)
【问题讨论】:
-
什么项目和基于什么?该标志可以在运行时出于任何原因更改吗?模型是静态的还是布局发生变化?标志总是由模型提供(意味着
flags()必须重新实现);如果您希望能够以编程方式为特定索引设置标志,则应保留每个索引及其自定义标志(如果有)的内部引用。也就是说,请先提供minimal, reproducible example,这个问题太宽泛了。