首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >qml选中/取消选中列表视图中的所有复选框

qml选中/取消选中列表视图中的所有复选框
EN

Stack Overflow用户
提问于 2021-07-07 19:31:53
回答 1查看 121关注 0票数 0

我有下面的代码来check/uncheck all列表视图中的其他复选框。我正在使用ButtonGroup组件来实现同样的目的。它似乎实现了它想要做的事情,但当我对它们进行uncheck all并滚动列表视图时,列表顶部和底部的一些项目会被自动再次选中。会出什么问题呢?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import QtQuick 2.15
import QtQuick.Controls 2.15


Rectangle {
    id: win
    width: parent.width
    height: parent.height
    visible: true


    ButtonGroup {
           id: childGroup
           exclusive: false
           checkState: mainCheckBox.checkState
       }

       CheckBox {
           id: mainCheckBox
           checked: true
           text: "All"
           indicator.width: 15
           indicator.height: 15
           checkState: childGroup.checkState
       }

       ListView {
           id: multiSelectCheckList
           model: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]
           height: parent.height
           width: parent.width
           anchors {
               top: mainCheckBox.bottom
               margins: 10
           }

           delegate: CheckBox {
               id: modelCheckBoxes
               checked: true
               text: modelData
               indicator.width: 15
               indicator.height: 15
               ButtonGroup.group: childGroup
           }
       }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-08 03:09:30

问题是ListView中的项是动态创建的,也就是说,有一个缓存。因此,在这种情况下,最好使用模板保存相关信息,然后修改模板而不是委托。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import QtQuick 2.15
import QtQuick.Controls 2.15


Rectangle {
    id: win
    width: parent.width
    height: parent.height
    visible: true

    ListModel{
        id: listModel
        dynamicRoles: true
        Component.onCompleted: {
            var numbers = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]
            for(var i in numbers){
                var number = numbers[i]
                listModel.append({"number": number, "checked": true})
            }
        }
    }
    CheckBox {
        id: mainCheckBox
        checked: true
        text: "All"
        indicator.width: 15
        indicator.height: 15
        onCheckStateChanged: {
            for(var i =0; i < listModel.count; ++i){
                listModel.setProperty(i, "checked", checked)
            }
        }
    }
    ListView {
        id: multiSelectCheckList
        model: listModel
        height: parent.height
        width: parent.width
        anchors {
            top: mainCheckBox.bottom
            margins: 10
        }

        delegate: CheckBox {
            id: modelCheckBoxes
            checked: model.checked
            text: model.number
            indicator.width: 15
            indicator.height: 15
        }
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68292061

复制
相关文章
jquery循环获取所有复选框,包括选中的,未选中的「建议收藏」
此处小编的是freemarker代码,不过html代码一样的,有了复选框后,要保证每个复选框的name是一致的。这样下面才能遍历
全栈程序员站长
2022/08/05
3K0
MFC list control 控件判断当前选中行,设置行选中,取消行选中[通俗易懂]
下面是一个button(按钮)的触发事件,按钮按下检测list control(列表)控件是否有选中的行,把选中的删除。(m_list 是list control 的变量名)
全栈程序员站长
2022/07/11
3.1K0
ElementUI el-checkbox 点击Label不取消复选框的选中状态
在点击label的时候不取消复选框的状态 实现 将change事件改为click事件 <div class="grid-content bg-purple">
彼岸舞
2021/06/21
4.4K0
ElementUI el-checkbox 点击Label不取消复选框的选中状态
iCheck实现radio单选框点击选中/取消选中
iCheck插件,我就不详细介绍了,大家可以看官方的文档:http://www.bootcss.com/p/icheck/
德顺
2019/11/13
4.8K0
html复选框选中与未选中触发事件的方法
今天,当制作一个不需要from表单的复选框来提交数据的小函数时,需要在复选框被选中或未选中的情况下修改一些后台数据。我想到了用js代码来监控复选框的状态,并将实时数据发送到后台。关于js代码如何监控checkbox的状态,可以参考下面的例子。
Power
2023/05/25
5K0
html复选框选中与未选中触发事件的方法
按钮随复选框选中与取消变换样式 原
//$("input:checkbox[value='1']").attr("checked","checked"); //首先根据后台传进来的value值来设置初始状态为选择还是不选中,如果value为1设置checked为true,注意true不要加引号,并找到最后一列改变class,如果值为0 改变class与html内容 //为checkbox加change事件 如果存在checked属性执行更换class,变化内容,设置checked为false,如果不存在checked属性则执行相应的代码。注意if里面要if($(this).attr("checked")不能写成if($(this).attr("checked")==true) 
tianyawhl
2019/04/04
1.4K0
单选按钮的取消与选中 原
(adsbygoogle = window.adsbygoogle || []).push({});
tianyawhl
2019/04/04
3.6K0
vim/vi 怎么取消高亮 或 取消选中状态
在Vi里面如果要搜索某个关键字,只要在命令状态下键入/xxx就可以了,比如,我要搜索port的位置,我就键入: /port 然后回车,一个文件中,所有出现这个字样的地方都会被高亮显示。按n键,就可以自动把光标跳到下一个。如下图所示:
黑泽君
2018/12/06
8.8K1
PyQt5 技巧篇-复选框绑定行内容,全选、清空、展示选中的内容功能实现演示,设置复选框选中,检查复选框选中状态
我设置两个有序序列,分别存储对应的复选框和行内容。 我的行内容是用的label标签。
小蓝枣
2020/09/22
3.6K0
PyQt5 技巧篇-复选框绑定行内容,全选、清空、展示选中的内容功能实现演示,设置复选框选中,检查复选框选中状态
jQuery限制复选框checkbox的选中次数
<div class="one"> <input type="checkbox" name="checkbox" value="A"> </div> <div class="two"> <input type="checkbox" name="checkbox" value="B"> </div> <div class="three"> <input type="checkbox" name="
明知山
2020/09/03
2.3K0
checkbox选中和不选中的值_设置checkbox选中状态
1.设置选中:$(“#hasApply”).prop(“checked”,true);
全栈程序员站长
2022/08/03
7.8K0
checkbox选中和不选中 jqu_jquery checkbox 选中不选中
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。
全栈程序员站长
2022/09/07
2.9K0
React技巧之检查复选框是否选中
原文链接:https://bobbyhadz.com/blog/react-check-if-checkbox-is-checked[1]
chuckQu
2022/08/19
1.5K0
React技巧之检查复选框是否选中
使用 jQuery 统计用户选中的复选框的个数
微信公众号平台每个用户最多可以设置三个标签,所以在管理员给用户设置标签的时候需要统计用户的标签,下面就是使用使用 jQuery 统计用户选中的复选框的个数的方法:
Denis
2023/04/15
1.4K0
winform 取消datagridview第一行选中状态
http://www.cnblogs.com/freeliver54/archive/2009/02/16/1391325.html
跟着阿笨一起玩NET
2018/09/20
2.9K0
Android ListView取消选中框和分割线
楼主在开发过程中有一个需求是一个列表(ListView)在显示和选中的时候都没有选中框和分割线,经过查找只需设置ListView的listSelector和divider属性即可,详细布局中的设置如下所示:
程序员飞飞
2020/02/27
1.1K0
checkbox选中和不选中
根据W3C的最新规定,当复选框未被选中时,post不会向服务器提交值,这就导致了变量未初始化的问题。看网上有多少朋友添加隐藏形式来解决。如果有多个复选框,会增加很多代码。
Power
2023/05/25
2K0
checkbox选中和不选中
input checkbox复选框点击获取当前选中状态jquery
function checkAll(id) { //用is判断 // let checkStatus=$(id).is(':checked'); // console.log(checkStatus) //用prop方法(用attr获取不到) let checkStatus=$(id).prop("checked"); console.log(checkStatus) } html: <input type="checkbox" value="" id=
蓓蕾心晴
2018/07/06
2.4K0
判断 checkbox 是否选中以及 设置checkbox选中
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/154601.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/07
6K0
点击加载更多

相似问题

选中/取消选中带有分页的列表视图中的所有复选框

21

选中/取消选中列表中的所有复选框

22

选中/取消选中网格视图中的所有复选框

21

如何选中/取消选中列表中的所有复选框

20

选中/取消选中所有子复选框时选中/取消选中主复选框

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文