复选框QCheckBox和分组框QGroupBox

1. 复选框:QCheckBox

实例化

    //实例化
//    QCheckBox* checkBox = new QCheckBox("是否同意该条款",this);
    QCheckBox* checkBox = new QCheckBox(this);

1.1 代码实现

1.1.1 复选框的基本函数

复选框选中状态的参数

Qt::Unchecked   //未选中状态
Qt::PartiallyChecked   //半选中状态
Qt::Checked   //全选中状态

QCheckBox

dialog.cpp

#include "dialog.h"
#include "ui_dialog.h"

//复选框的使用
Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
    , ui(new Ui::Dialog)
{
    ui->setupUi(this);

    //设置大小
    this->checkBox->resize(150,40);

    //设置位置
    this->checkBox->move(100,0);

    //设置复选框文本提示
    this->checkBox->setText("是否同意该协议");

    //设置使复选框状态具有三种状态
    this->checkBox->setTristate(true);//true 代表三种状态,false两种

    //设置复选框的状态
    this->checkBox->setCheckState(Qt::PartiallyChecked);//Qt::PartiallyChecked半选中状态
    //获取复选框状态
    Qt::CheckState state = this->checkBox->checkState();
    if(state==Qt::PartiallyChecked){
        qDebug()<<"半选中状态呢"<

复选框QCheckBox和分组框QGroupBox_第1张图片

1.2 信号

复选框被选中状态改变 触发信号

QCheckBox

绑定

dialog.cpp

//绑定复选框被选中信号
    connect(this->checkBox,SIGNAL(stateChanged(int)),this,SLOT(receive_State(int)));

定义

dialog.h


public slots://复选框被选中触发
    void receive_State(int state);

实现

dialog.cpp

//复选框被选中触发
void Dialog::receive_State(int state){
    if(state==0){
        qDebug()<<"未选中"<

复选框QCheckBox和分组框QGroupBox_第2张图片

1.3 UI实现

text:设置文本
	icon:设置图片
	iconsize:图片大小
	shortcut:快捷键
	....

2.分组框:QGroupBox

实例化

    //实例化
//    QGroupBox* groupBox = new QGroupBox("按钮组",this);
    QGroupBox* groupBox = new QGroupBox(this);

2.1 代码实现

2.1.1 分组框的基本函数

QGroupBox

dialog.cpp

#include "dialog.h"
#include "ui_dialog.h"


//分组框的使用
Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
    , ui(new Ui::Dialog)
{
    ui->setupUi(this);

    //获取标题对齐方式
    Qt::Alignment align = this->groupBox->alignment();

    //设置分组框的大小
    this->groupBox->resize(100,80);

    //移动
    this->groupBox->move(100,100);

    //设置分组框的对齐方式
    this->groupBox->setAlignment(Qt::AlignRight);//右对齐

    //设置标题
    this->groupBox->setTitle("按钮组");

    //获取标题
    QString title = this->groupBox->title();

    //设置分组框的复选框
    this->groupBox->setCheckable(true);//分组框标题前面右复选框

    //设置选中该分组框
    this->groupBox->setChecked(true);

    //设置分组框边框是否隐藏
//    this->groupBox->setFlat(true);//true 隐藏 false不隐藏


}

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


复选框QCheckBox和分组框QGroupBox_第3张图片

2.2 信号

void clicked(bool checked = false)当鼠标光标在按钮内时按下然后释放,或当键入快捷键时发出此信号。
void toggled(bool on)如果组框是可检查的,则在复选框被切换时发出此信号。如果复选框被选中,On为true;否则为false

2.3 UI实现

UI:
	titile:设置标题
	alignment:设置对齐方式
	flat:设置边框是否隐藏
	checkable:设置是否具有复选框
	checked:设置复选框是否选中

你可能感兴趣的:(Qt,Qt,c++,c语言,算法)