//connect(ui->treeWidget,&QTreeWidget::itemClicked,this,&PushSelectUser::treeItemChanged);
 
void PushSelectUser::treeItemChanged(QTreeWidgetItem *item, int column)
{
 
        updateParentItem(item);
        // 设置子对象的勾选状态
        for( int i=0;i<item->childCount();++i ){
            if(item->checkState(0) == Qt::PartiallyChecked)
                    continue;
            item->child(i)->setCheckState(0,item->checkState(0));
            updateChildItem(item->child(i));
        }
 
 
        Qt::CheckState status = item->checkState(0);
 
        sigSlectStatusChanged(item->text(0),status);
        getSelectUsers();
 
}
void PushSelectUser::updateParentItem(QTreeWidgetItem *item)
{
    // 更新父对象的勾选状态
    QTreeWidgetItem* p = item->parent();
    if( p!=0 ){
        p->setCheckState(0,item->checkState(0));
        for( int i=0;i<p->childCount();++i )
            if( p->child(i)->checkState(0)!=item->checkState(0)  || p->child(i)->checkState(0) == Qt::PartiallyChecked){
                p->setCheckState(0,Qt::PartiallyChecked);
 
                break;
            }
        updateParentItem(p);
    }
 
}
 
void PushSelectUser::updateChildItem(QTreeWidgetItem *item)
{
    // 更新zi对象的勾选状态
    if( item!=0 ){
        for( int i=0;i<item->childCount();++i ){
            item->child(i)->setCheckState(0,item->checkState(0));
 
            updateChildItem(item->child(i));
 
            }
    }
}

QTreewidget勾选功能的更多相关文章

  1. [原创] 扩展jquery-treegrid插件, 实现勾选功能和全删按钮.

    新上手一个项目, 因而正好想学习下bootstrap, 所以就采用asp.net mvc + bootstrap来做.  因为需要TreeGrid的控件, 本来想用easyUI.LingerUi.DW ...

  2. JQuery实现表格的全选和反选,以及分页勾选保存(laypage插件分页的使用)

    需求: 1.全选与取消全选 2.单个勾选,点击表格单元格中checkbox勾选,也可以在点击行勾选,便与用户操作 3.分页勾选保存 4.固定表头 功能一: 说明:操作全选按钮的同时,遍历每一个tr中的 ...

  3. 解决el-tree lazy懒加载时,连续勾选前两个子节点后第二次进入默认选中时,将父节点也勾选的问题

    在用到el-tree的懒加载和默认勾选功能时,若第一次勾选前几个连续节点,第二次进入默认勾选时,由于el-tree子节点尚未完全加载(只加载出来前几个),默认勾选已经开始(已加载出来的子节点被默认勾选 ...

  4. Element UI表格组件技巧:如何简洁实现跨页勾选、跨页统计功能

    业务场景 在使用Element UI的Table组件时,常常面对这样的业务需求: 表格数据的每一项都要提供勾选框,当切换分页时,能够记忆所有页面勾选的数据,以实现批量提交不同页面勾选数据的功能.并且, ...

  5. 使用TreeView 使用多选功能

    1.要用TreeView多选就要显示复选框,TreeView默认不显示复选框,显示复选框: TreeView2.ShowCheckBoxes = TreeNodeTypes.All; 初始化TreeV ...

  6. DEV控件中GridView中的复选框与CheckBox实现联动的全选功能

    最初的界面图如图1-1(全选框ID: cb_checkall  DEV控件名称:gcCon ): 要实现的功能如下图(1-2  1-3  1-4)及代码所示: 图1-2 图1-3 图1-4 O(∩_∩ ...

  7. checkbox属性checked="checked"通过js已设置,但是不勾选

    1.通过 attr('checked','checked') 来设置checkbox时,重复点击,虽然checked属性设置正确,但是checkbox没有被勾选 ,如下代码:(代码是全选功能) $(' ...

  8. Extjs改变树节点的勾选状态

    Extjs改变树节点的勾选状态 今天系统中有处地方需要一个功能点击一个按钮后将树节点前的复选框去掉,变成没有选择的状态.网上搜索了半天,然后自己查查API,终于找到解决办法了,下面把方法贴出来. 在E ...

  9. jQuery实现的全选、反选和不选功能

    适用于网页多选后需要进行批量操作的场景(如批量删除等).如有问题希望大家可以指正.谢谢~~ HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮 ...

  10. jQuery推断复选框是否勾选

    今天要实现一功能就是:复选框勾选时给input表单赋值,复选框取消时将表单值清除. 效果如图: 实现源代码:cyfID为复选框的id $("#cyfID").click(funct ...

随机推荐

  1. create_base_x.txt

    create table g_temp.test_base( field_date date, field_str varchar(100) , field_int integer ) drop ta ...

  2. Linux环境下给python项目写个启停服务

    写个服务,写完后放在/lib/systemd/system路径下 update_rule.server [Unit] Description = TinyScan update rule [Servi ...

  3. 批量修改excel中超链接

    打开需要处理的excel文件 alt + F11打开VB编辑器 双击打开对应的sheet 编辑如下代码 Dim oldfile As String Dim Newfile As String Sub ...

  4. Go语言格式化金额为3个一组隔开

    最近在Go语言项目上面遇到了一个金额相关的问题,想更加规范的将金额用逗号隔开3个分为一组,这样显示更专业一点,经过一番努力,找到这个下面这个插件,经过测试发现比较好用,特此分享出来. 第一步先下载一个 ...

  5. 读《高情商修炼手册》有感 output

    偶然的一次机遇,遇见了这本书,本着情绪的心态的初衷去阅读,没想到还是挺好读的,此次记录是在读完这本书之后的第二天,受output 1.情商高,意味着控制好自己的情绪,让人相处舒服 在智商过剩的年代,有 ...

  6. Unity 关于可寻址资源系统Addressables的使用和理解(一) 准备工作

    一.打开Unity的PackageManager,安装Addressables包 二.打开分组面板,对未来要分类的资源包进行分组,并对组进行设置. 1.菜单栏选择Window/AssetManagen ...

  7. Fiddler 教程【转】

    作者: 小坦克  来源: 博客园  发布时间: 2012-07-07 14:20  阅读: 71973 次  推荐: 45   原文链接   [收藏]  阅读目录 Fiddler的基本介绍 Fiddl ...

  8. Vulnhub 靶机 CONTAINME: 1

    Vulnhub 靶机 CONTAINME: 1 前期准备: 靶机地址:https://www.vulnhub.com/entry/containme-1,729/ kali地址:192.168.147 ...

  9. 集成GIT仓库

    集成GIT仓库 jgit - java实现git操作 一个 Java 程序中使用 Git ,有一个功能齐全的 Git 库,那就是 JGit . JGit 是一个用 Java 写成的功能相对健全的 Gi ...

  10. Web前端单词大全

    style 修饰width 宽度height 高度title 想说明的text-align 水平对齐方式center 居中 left 居左 right 居右line-height 垂直对齐方式/行高 ...