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();  

    }

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

相关推荐
SilentSlot1 小时前
【QT-QML】6.定位元素
qt·qml
王多鱼鱼鱼1 小时前
QT如何将exe打包成可执行文件
开发语言·qt
liu****1 小时前
Qt进阶实战:事件处理、文件操作、多线程与网络编程全解析
开发语言·网络·数据结构·c++·qt
无小道2 小时前
Qt——信号槽
开发语言·qt
SilentSlot17 小时前
【QT-QML】5. 简单变换
qt·qml
云中飞鸿1 天前
VS2015安装后,安装QT59,之后安装qt-vsaddin-msvc2015-2.4.3.vsix 文件失败问题!
开发语言·qt
凯子坚持 c1 天前
Qt常用控件指南(9)
开发语言·qt
创客小邓1 天前
Qt对SQLite数据库的操作
数据库·qt·sqlite
小小码农Come on1 天前
QT布局介绍
开发语言·qt
云中飞鸿1 天前
QTCreator error: C3861: “_mm_loadu_si64”: 找不到标识符
qt