Qt中radioButton使用
先在ui界面上拖几个radioButton控件,如图(加了个Group Box):
文章来源:https://www.toymoban.com/news/detail-596207.html
直接上代码:文章来源地址https://www.toymoban.com/news/detail-596207.html
//mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QAbstractButton>
//QAbstractButton类是按钮部件的抽象基类,提供了按钮所共有的功能.
//QAbstractButton提供了点击和勾选按钮。QRadioButton和QCheckBox类只提供了勾选按钮
#include <QButtonGroup> //
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
QButtonGroup *btnGroup; //添加buttongroup
public slots:
void onButtonClicked(QAbstractButton *button);
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
//mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
//radioButton
btnGroup= new QButtonGroup(this);
btnGroup->addButton(ui->radioBtnV1);
btnGroup->addButton(ui->radioBtnV2);
btnGroup->addButton(ui->radioBtnV3);
btnGroup->addButton(ui->radioBtnV4);
btnGroup->setId(ui->radioBtnV1,0);
btnGroup->setId(ui->radioBtnV2,1);
btnGroup->setId(ui->radioBtnV3,2);
btnGroup->setId(ui->radioBtnV4,3);
ui->radioBtnV1->setChecked(1); //默认选中第一个
//ButtonGroup信号链接
connect(btnGroup, SIGNAL(buttonClicked(QAbstractButton*)), this, SLOT(onButtonClicked(QAbstractButton*))); //信号输出选择
}
void MainWindow::onButtonClicked(QAbstractButton *button) //radio button选择
{
Q_UNUSED(button)
int sigChoose = btnGroup->checkedId(); //选择信号
if(sigChoose==0) qDebug() << sigChoose;
else if(sigChoose==1) qDebug() << sigChoose;
else if(sigChoose==2) qDebug() << sigChoose;
else if(sigChoose==3) qDebug() << sigChoose;
}
MainWindow::~MainWindow()
{
delete ui;
}
到了这里,关于Qt中radioButton使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!