栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

qt下多个子控件信号槽绑定方法

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

qt下多个子控件信号槽绑定方法

在软件一些界面开发中,需要用到批量相同的控件,比如一些设置界面有几十个lineedit输入框,又或是许多个checkbox控件,如下图所示(qt的设置界面):

其中设置,只要有一个控件做出改动都需要去实时刷新保存参数,这样有什么方案呢?

1、如果控件有规则,比如代码是使用for循环new的对象,我们就可以在new了之后的循环内容中加入你的槽函数。

2、第二种情况就是分开new的对象,难道每个对象new的时候都coonnect一次?那如果是qt designed设计界面中拖进去设置的界面呢?

针对这种情况下我们就可以使用qt的findChildren函数(注:子控件必须指定父对象,然后在父对象里面使用findChildren)
如下代码所示:

  QList checkboxList = this->findChildren();
    for (int i = 0; i < checkboxList.size(); i++) 
    {
        connect(checkboxList[i], &QCheckBox::clicked, this, [=]()
        {
        //你需要执行的槽函数内容
        }
    }

使用函数找到弹窗下面的所有这一类控件对象,并放在一个指针链表中,这样就可以做统一的管理了,比如我们想要的信号槽连接。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/994461.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号