qt QRadioButton详解

**QRadioButton**是一个可以切换选中(checked)或未选中(unchecked)状态的选项按钮。单选按钮通常呈现给用户一个"多选一"的选择,即在一组单选按钮中,一次只能选中一个按钮。

重要方法

  • QRadioButton(QWidget* parent = nullptr):默认构造函数。
  • QRadioButton(const QString& text, QWidget* parent = nullptr):使用指定的文本创建单选按钮。
  • void setText(const QString& text):设置单选按钮显示的文本。
  • void setChecked(bool checked):设置单选按钮的选中状态,true为选中,false为未选中。
  • bool isChecked() const:返回单选按钮的选中状态,如果选中则返回true,否则返回false。
  • void setIcon(const QIcon& icon):设置单选按钮显示的图标。
  • void setShortcut(const QKeySequence& shortcut):设置单选按钮的快捷键。

重要信号

  • toggled(bool checked):当单选按钮切换选中状态时发射,参数为是否选中。

  • clicked(bool checked):当单选按钮被点击时发射,参数为是否选中。

    #include <QApplication>
    #include <QWidget>
    #include <QHBoxLayout>
    #include <QRadioButton>
    #include <QButtonGroup>

    int main(int argc, char *argv[]) {
    QApplication app(argc, argv);

      // 创建主窗口  
      QWidget window;  
      window.setWindowTitle("RadioButton 示例");  
    
      // 创建水平布局  
      QHBoxLayout* layout = new QHBoxLayout(&window);  
    
      // 创建按钮组  
      QButtonGroup* buttonGroup = new QButtonGroup(&window);  
    
      // 创建三个单选按钮  
      QRadioButton* radioBtn1 = new QRadioButton("选项1");  
      QRadioButton* radioBtn2 = new QRadioButton("选项2");  
      QRadioButton* radioBtn3 = new QRadioButton("选项3");  
    
      // 默认设置第一个单选按钮选中  
      radioBtn1->setChecked(true);  
    
      // 将单选按钮添加到按钮组中  
      buttonGroup->addButton(radioBtn1);  
      buttonGroup->addButton(radioBtn2);  
      buttonGroup->addButton(radioBtn3);  
    
      // 将按钮组的 exclusive 属性设置为 true, 确保只能选中一个选项  
      buttonGroup->setExclusive(true);  
    
      // 将单选按钮添加到布局中  
      layout->addWidget(radioBtn1);  
      layout->addWidget(radioBtn2);  
      layout->addWidget(radioBtn3);  
    
      // 设置主窗口的布局  
      window.setLayout(layout);  
    
      // 显示主窗口  
      window.show();  
    
      return app.exec();  
    

    }

觉得有帮助的话,打赏一下呗。。

相关推荐
晓纪同学3 小时前
QT-简单视觉框架代码
开发语言·qt
威桑3 小时前
Qt SizePolicy详解:minimum 与 minimumExpanding 的区别
开发语言·qt·扩张策略
飞飞-躺着更舒服3 小时前
【QT】实现电子飞行显示器(简易版)
开发语言·qt
fyzy3 小时前
Qt获取本地计算的CPU温度
qt
cbdg37573 小时前
Qt 6 QML Settings location 不创建指定路径文件
qt
了一li3 小时前
Qt中的QProcess与Boost.Interprocess:实现多进程编程
服务器·数据库·qt
杨德杰3 小时前
QT网络(一):主机信息查询
网络·qt
黄金右肾4 小时前
Qt之串口设计-线程实现(十二)
qt·thread·serialport
飞飞-躺着更舒服5 小时前
【QT】实现电子飞行显示器(改进版)
开发语言·qt
CYBEREXP20086 小时前
MacOS M3源代码编译Qt6.8.1
c++·qt·macos