QT中的常见控件的使用

QSlider 滑动条与QSpinBox微调框

(这里只贴出控件的基本用法,需要时再查阅资料。)

QSlider *slider = new QSlider(Qt::Horizontal);  // 创建水平滑动条
slider->setRange(0, 100);       // 设置范围
slider->setValue(1);            // 设置初始值

QSpinBox *spinbox = new QSpinBox();             // 创建微调框
spinbox->setRange(0, 100);      // 设置范围
spinbox->setValue(1);           // 设置初始值

connect(spinbox, SIGNAL(valueChanged(int)), slider, SLOT(setValue(int)));   // 两者的值同时更改
connect(slider, SIGNAL(valueChanged(int)), spinbox, SLOT(setValue(int)));
connect(spinbox, SIGNAL(valueChanged(int)), this, SLOT(slot_spinbox()));    // slot_spinbox()是自定义的槽函数,可根据需求自行修改
 
 

    QComboBox下拉选择框

    QComboBox *combo = new QComboBox();     // 下拉选择框
    combo->addItem(tr("第一个选项"));    // 添加选项
    combo->addItem(tr("第二个选项"));
    connect(combo, SIGNAL(currentIndexChanged(int)), this, SLOT(slot_combo())); // slot_combo()是自定义的槽函数,可根据需求自行修改
    // combo->currentIndex()可以查看当前索引值
     
     

      QRadioButton 单选按钮

      QRadioButton *radio1 = new QRadioButton(tr("选项1"));// 单选按钮
      QRadioButton *radio2 = new QRadioButton(tr("选项2"));// 单选按钮
      radio1->setChecked(true);       // 用于设定初始值
      //radio1->isChecked() == true   // 该语句用于判断单选按钮是否被选定
      connect(radio1, SIGNAL(clicked()), this, SLOT(slot_radio1()));// 自定义的槽函数,可根据需求自行修改
      connect(radio2, SIGNAL(clicked()), this, SLOT(slot_radio2()));
      
      QButtonGroup *radioGroup = new QButtonGroup();  // 单选按钮组,不可视
      radioGroup->setExclusive(true);                 // 组内按钮互斥,即每次只能选定一个按钮
      radioGroup->addButton(radio1);                  
      radioGroup->addButton(radio2);
       
       
        // 布局
        slider->move(50, 200);
        spinbox->move(200, 200);
        combo->move(50, 250);
        radio1->move(50, 350);
        radio2->move(150, 350);
         
         
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6

          如果要在停靠窗口QDockWidget上添加控件,QWidget *parent参数(默认为this)需要设置为指定的窗口,比如上面的代码,需要改成

        ……
        QSlider *slider = new QSlider(Qt::Horizontal,dock_Geom); 
        ……
        QSpinBox *spinbox = new QSpinBox(dock_Geom); 
        ……
        QComboBox *combo = new QComboBox(dock_Geom); 
        ……
        QRadioButton *radio1 = new QRadioButton(tr("选项1"), dock_Geom); 
        ……
        QRadioButton *radio2 = new QRadioButton(tr("选项2"), dock_Geom); 
        ……
         
         

        评论
        添加红包

        请填写红包祝福语或标题

        红包个数最小为10个

        红包金额最低5元

        当前余额3.43前往充值 >
        需支付:10.00
        成就一亿技术人!
        领取后你会自动成为博主和红包主的粉丝 规则
        hope_wisdom
        发出的红包
        实付
        使用余额支付
        点击重新获取
        扫码支付
        钱包余额 0

        抵扣说明:

        1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
        2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

        余额充值