Qt循环设置控件(LineEdit、label)的内容

这篇具有很好参考价值的文章主要介绍了Qt循环设置控件(LineEdit、label)的内容。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

场景问题:比如当我们遇到下位机有很多个端口的时候,上位机也需要在ui界面上设置相应的控件,以及显示端口的IP信息。通常,我们向下位机发送指令,会获取到所有的端口的IP。

最开始的时候,我是这样把一打数据放进LineEdit中的:

        先用split函数把接收到的数据按照特征切开来,放进数组里,这样就能把数据里的IP和端口号过滤出来了。

QStringList strlist = buf.split(" ");
                    if("01" == strlist.at(1)){
                        ui->lineEdit_6->setText(strlist.at(2));
                        ui->lineEdit_18->setText(strlist.at(3));
                    }else if("02" == strlist.at(1)){
                        ui->lineEdit_7->setText(strlist.at(2));
                        ui->lineEdit_19->setText(strlist.at(3));
                    }else if("03" == strlist.at(1)){
                        ui->lineEdit_8->setText(strlist.at(2));
                        ui->lineEdit_20->setText(strlist.at(3));
                    }else if("04" == strlist.at(1)){
                        ui->lineEdit_9->setText(strlist.at(2));
                        ui->lineEdit_21->setText(strlist.at(3));
                    }else if("05" == strlist.at(1)){
                        ui->lineEdit_10->setText(strlist.at(2));
                        ui->lineEdit_22->setText(strlist.at(3));
                    }else if("06" == strlist.at(1)){
                        ui->lineEdit_11->setText(strlist.at(2));
                        ui->lineEdit_23->setText(strlist.at(3));
                    }else if("07" == strlist.at(1)){
                        ui->lineEdit_12->setText(strlist.at(2));
                        ui->lineEdit_24->setText(strlist.at(3));
                    }else if("08" == strlist.at(1)){
                        ui->lineEdit_13->setText(strlist.at(2));
                        ui->lineEdit_25->setText(strlist.at(3));
                    }else if("09" == strlist.at(1)){
                        ui->lineEdit_14->setText(strlist.at(2));
                        ui->lineEdit_26->setText(strlist.at(3));
                    }else if("10" == strlist.at(1)){
                        ui->lineEdit_15->setText(strlist.at(2));
                        ui->lineEdit_27->setText(strlist.at(3));
                    }else if("11" == strlist.at(1)){
                        ui->lineEdit_16->setText(strlist.at(2));
                        ui->lineEdit_28->setText(strlist.at(3));
                    }else if("12" == strlist.at(1)){
                        ui->lineEdit_17->setText(strlist.at(2));
                        ui->lineEdit_29->setText(strlist.at(3));
                    }
                }

                  然后根据特征数据头的不同放入相应的LineEdit中

解决方法:但是这样不太好看,后来我学到了方法二

                  这个方法需要控件的名字保持一致,最好是默认状态,并且是连续造出来的Qt循环设置控件(LineEdit、label)的内容如此这般 如果是Label就把QLineedit改成QLabel

 文章来源地址https://www.toymoban.com/news/detail-515375.html

for(int i = 1;i < 10; i++)
    {
        QLineEdit *lbl = 
        ui->centralWidget->findChild<QLineEdit *>("lineEdit_"+QString::number(i+5));
                                                    //括号内是控件名的字符串拼接
        ledt->settext("123");//然后就可以当正常控件调用函数了

Qt循环设置控件(LineEdit、label)的内容

那么结合如split之类的操作就能输入想要的数据了!

 

到了这里,关于Qt循环设置控件(LineEdit、label)的内容的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 让QT中的Qtablewidget控件表格中的元素内容显示居中

    好了看最终的一个演示出来的效果吧  好了,就到这里,下次其他的我再继续更新吧,下面我附上一个类似的文章,写的也可以,有些我没有用到的分享出来你们也可以借鉴一下。 Qt中让tableWidget内容中的每个元素居中(qtablewidget的一些使用) - ww学习笔记 - 博客园

    2024年02月11日
    浏览(36)
  • qt设置控件的风格样式

    设置tablewidget 设置表头样式 设置Lineedit样式 设置GroupBox样式 设置CheckBox的样式 设置PushButton的样式 设置RadioButton的样式 设置ComboBox的样式 设置Label的样式

    2024年02月14日
    浏览(26)
  • qt 系列(二)---qt designer通过设置控件样式表进行背景颜色设置

    1. 前言 一般Layouts不可以进行改变样式表,当我们想修改背景样式表,同时又不改变其他控件的颜色时,可以选择List View 控件改变背景颜色。 2. 设置背景 (1)配置 .qrc 文件 新建mypicture.qrc文件,记事本打开 (2)右键选择项目–添加–现有项,选择建立的.qrc文件,此时,项

    2024年02月06日
    浏览(34)
  • QT控件通过qss设置子控件的对齐方式、大小自适应等

    一些复杂控件,是有子控件的,每个子控件,都可以通过qss的双冒号选择器来选中,进行独特的样式定义。很多控件都有子控件,太多了,后面单独写一篇文章来介绍各个控件的子控件。这里就随便来几个例子 例如下拉列表控件,右边有个下拉按钮(QComboBox::drop-down)就是子

    2024年02月15日
    浏览(34)
  • 【Qt UI相关】Qt设置窗体或控件的背景色透明

    在Qt中, QPalette (调色板)类用于设置窗体或控件的外观颜色。首先,需要在代码中包含 QPalette 或 QGui 头文件。 然后,在构造函数中添加以下代码来设置窗体的透明度: 这里,我们使用 QPalette::Background 来设置窗体的背景色,并将其设置为全透明。 效果: 窗口整体透明,但

    2024年02月05日
    浏览(38)
  • 【QT】一 设置布局后,控件大小会自动变化,如何设置想要的

    目录 1. 设置好控件大小 2. 设置布局  3. 设置layout  给一个QWidget控件内部设置布局后,原来内部的控件大小变小了,如何解决?           把最小值设置好。         选择整体,选择布局方式,这里为水平布局。 你会发现,可能显示不全。 选择整体,属性拉到最下面,

    2024年02月11日
    浏览(55)
  • Qt 控件设置透明和半透明方法汇总

    遇到了好多次控件有需要设置为透明和半透明的情况,每次都是去网上搜一搜,看看别人怎么实现的,浪费了很多时间,故在这里进行一个总结,希望对自己有一个提升。 本文对透明的各种情况进行了分类: 整个窗口及窗口下的控件都是半透明的状态(分类一) 只有窗口是

    2024年02月13日
    浏览(29)
  • QT中怎么使用QPalette设置按钮控件背景色

    💂 个人主页:pp不会算法 v 🤟 版权: 本文由【pp不会算法 v 】原创、在CSDN首发、需要转载请联系博主 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 关于以上代码:并没有实现设置按钮控件的背景色 但是参照QT的帮助文档: 照上面这么讲确实应该可

    2024年02月11日
    浏览(33)
  • QT error: C2039: “jifen_lineEdit”: 不是“Ui::UIMainFrame”的成员

    前提: 在ui界面新增了一个edit控件,在对应cpp中使用ui-jifen_lineEdit时就报错 error: C2039: “jifen_lineEdit”: 不是“Ui::UIMainFrame”的成员 或者error: no member named \\\'jifen_lineEdit\\\' in \\\'Ui::UIMainFrame\\\' 尝试: 我把build文件删掉,执行清除,qmake,重新编译后都不管用。 这是因为程序此时还是

    2024年02月13日
    浏览(64)
  • QT自定义优雅的表单控件,简单实现设置界面布局

    FormView.h FormView.cpp 核心函数 函数 变量 功能 addEditableItem title: 输入框前面的提示文字,同时作为该控件的标识符 place_holder: 输入框中的提示文字 在表单中插入一个可填写项 addCheckableItem title: 不显示在UI中,仅作为该控件的标识符 content: 勾选框后面的内容 init_status: 勾选框的初

    2024年02月11日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包