最近刚学Qt在看Qt5开发实战,刚开始嘛,一步一步学,记录一下学习过程,有些深入的先不追究。刚看完QCheckBox与QButtonGroup,其实这两个控件平时都很常见,觉得很有用,QCheckBox就是复选框,而QButtonGroup就是对复选框进行分组和布局的(暂且这么认为吧)。下面的代码都直接声明定义在一起了,省的来回切换,粘过去应该就可以跑。先看代码,再一个个解释一下。

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QCheckBox>
#include <QButtonGroup>

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);


    QString str1[3]={"1","2","3"}; //复选框的名称
    QString str2[3]={"one","two","three"};//复选框的名称

    int xpos=30; 
    int ypos=30;

    /*
     * 将复选分成两组
    */
    QButtonGroup *chck_group1=new QButtonGroup(); 
    QButtonGroup *chck_group2=new QButtonGroup();

    /*
     * 每组里面的复选框,每组分别有3个复选框
    */
    QCheckBox *QChck[3],*QChck1[3];
    
    
    for(int i=0;i<3;++i)
    {
        QChck[i]=new QCheckBox(str1[i],this);//设置复选框名,并指明父窗口
        QChck[i]->setGeometry(xpos,ypos,100,30);//设置绝对位置
        chck_group1->addButton(QChck[i]);//将复选框添加到分组1中
        
        //与上面同理
        QChck1[i]=new QCheckBox(str2[i],this);
        QChck1[i]->setGeometry(xpos+100,ypos,100,30);
        chck_group2->addButton(QChck1[i]);

        ypos+=40;
    }

    /*
     * 为每个复选框添加图片,直接指明路径就可以
    */
     QChck[0]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/1.jpg"));
     QChck[1]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/2.jpg"));
     QChck[2]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/3.jpg"));

     QChck1[0]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/4.jpg"));
     QChck1[1]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/5.jpg"));
     QChck1[2]->setIcon(QIcon("C:/Users/Administrator/Desktop/Iocn/6.jpg"));
/*
 * 这里是对每组的复选框是否可以多选进行属性设置
*/
chck_group1->setExclusive(true);  //允许多选
chck_group2->setExclusive(false); //不允许多选
}

MainWindow::~MainWindow()
{
    delete ui;
}

效果是这样的:

QCheckBox&QButtonGroup

想要知道详细的用法和性质还是看官方的技术文档吧,这里就示例一下,哎,刚学,有些术语都不会说……,今天是2018.11.11日,星期天,一百万可能。有一起学习交流的伙伴可以加QQ2152574098,备注来自CSDN就会知道啦。

相关文章:

  • 2021-12-07
  • 2022-12-23
  • 2021-12-13
  • 2021-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-19
猜你喜欢
  • 2021-09-26
  • 2022-12-23
  • 2022-12-23
  • 2021-05-17
  • 2022-12-23
  • 2022-12-23
  • 2021-05-31
相关资源
相似解决方案