欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【QT】QT从零入门教程(九):QT常用控件 [QSlider、QSpinBox、QComboBox、QRadioButton]

程序员文章站 2024-01-05 17:41:04
...

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

  如果要在停靠窗口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); 
……

【QT】QT从零入门教程(九):QT常用控件 [QSlider、QSpinBox、QComboBox、QRadioButton]

相关标签: QT

上一篇:

下一篇: