QTreeView 限制特定的深度、特定深度下的列 是否可以编辑

简介: QTreeView 限制特定的深度、特定深度下的列 是否可以编辑     # # C_TreeView # 在QTreeView基础上增加限制特定深度、特定列是否可以编辑 # class C_TreeView(QTreeView): def __init__(self, parent=None): QTreeView.

QTreeView 限制特定的深度、特定深度下的列 是否可以编辑

 

 

#
#   C_TreeView
#  在QTreeView基础上增加限制特定深度、特定列是否可以编辑
#
class C_TreeView(QTreeView):
    def __init__(self, parent=None):
        QTreeView.__init__(self, parent)
        
        # 设置可以编辑的 深度  和  列
        # dict,  depth:int,column:list
        self.c_allow_edit = dict()
        
    
    #
    # 设置可以编辑的 深度  和  列
    # allow_edit :dict,
    # key:深度,  大于0的整数
    # value :每个深度下可以编辑的多个列, 列编号从0开始
    def c_setAllowEdit(self, allow_edit):
        
        self.c_allow_edit = allow_edit
        
    def edit(self, index, trigger, event):
        
        args = [index, trigger, event]        
        path = self.indexToPath(index)
        depth = len(path)
        columnIndex = index.column()
        
        #return_value = QTableView.edit(self, *args)
        #return_value =super(QTreeView, self) .edit( *args)
        
        if event is not None:
            # 2:鼠标的按下,3:鼠标的释放
            # 4:鼠标的双击
            # 如果是双击,判断 深度  和 列  是否可以编辑
            event_type = event.type()
            if event_type ==4:
                allow_columns = self.c_allow_edit.get(depth)
                if allow_columns is None:
                    return False
                if columnIndex not in allow_columns:
                    return False
                    
            
        return_value =super(QTreeView, self) .edit( *args) 
        return return_value

 

相关文章
|
机器学习/深度学习 图计算 图形学
同构图、异构图、属性图、非显式图
同构图(Homogeneous Graph)、异构图(Heterogeneous Graph)、属性图(Property Graph)和非显式图(Graph Constructed from Non-relational Data)。 (1)同构图:
1596 0
同构图、异构图、属性图、非显式图
|
8月前
|
人工智能 自然语言处理 算法
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
Similarities:精准相似度计算与语义匹配搜索工具包,多维度实现多种算法,覆盖文本、图像等领域,支持文搜、图搜文、图搜图匹配搜索
|
9月前
|
人工智能 自然语言处理 文字识别
理解指向,说出坐标,Shikra开启多模态大模型参考对话新维度
理解指向,说出坐标,Shikra开启多模态大模型参考对话新维度
133 0
|
11月前
|
缓存 JSON NoSQL
分类树菜单,我从2s优化到0.1s
分类树菜单,我从2s优化到0.1s
|
11月前
|
机器学习/深度学习 算法 数据可视化
可视化图布局算法浅析
图算法在前端领域考察的较少,一般除非是要写框架或者打包工具对依赖关系处理(DAG)会用到,前端对图算法的考察一般是比较少的,而对于可视化领域而言,图又是必不可少的一种展示方式,其中对于边和节点的展示布局方案结合美学效果会有不同的算法实现,本文旨在介绍一些常见的通用布局算法,其中的每个小的布局方案也会有不同的分支实现
308 0
|
11月前
|
机器学习/深度学习 JavaScript PyTorch
【Pytorch神经网络实战案例】18 最大化深度互信信息模型DIM实现搜索最相关与最不相关的图片
图片搜索器分为图片的特征提取和匹配两部分,其中图片的特征提取是关键。将使用一种基于无监督模型的提取特征的方法实现特征提取,即最大化深度互信息(DeepInfoMax,DIM)方法。
216 0
|
编译器 C语言 Windows
想要深度了解C吗?
想要深度了解C吗?
60 0
想要深度了解C吗?
html+css实战158-定位-显示层级
html+css实战158-定位-显示层级
115 0
html+css实战158-定位-显示层级
|
机器学习/深度学习 编解码 算法
CVPR2022 | 开源:基于间距自适应查找表的实时图像增强方法
CVPR2022 | 开源:基于间距自适应查找表的实时图像增强方法
525 0
CVPR2022 | 开源:基于间距自适应查找表的实时图像增强方法
|
机器学习/深度学习 前端开发
使用递归自编码器实现智能布局的一些思考
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 概述 对于一些设计和端上展示的场景,布局都是一个非常重要的环节。在一个设计上的布局中,首先我们会对基础元素定一些分类,这些分类的维度可以取决于当前的场景,比如把元素划分成图片,文字,或是把元素划分为标题,段落等。
使用递归自编码器实现智能布局的一些思考