版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zx13525079024/article/details/82954325
今天研究了下QT中combobox的用法,只是了解了简单实用,下面来看下怎么用,遇到一个小插曲,由于刚接触qt,不知道怎么向qt中添加窗体,默认建项目的时候只有一个MainWindow.UI,项目启动的时候也是从这个UI启动的。我们先从这里讲起
1.添加UI窗体
添加UI窗体很简单,如图,右键选中项目--Add New
看了上面的步骤,有人会问 widget与main window有什么区别,唯一区别就是继承的父类不同,widget继承QWidget,
mainwindow继承QMainWindow, 坦白的说,mainwindow界面中多了菜单栏,工具栏,状态栏,qwidget是没有这些的。
然后我们设置新添加的widget窗体为启动界面,在main函数里面修改,代码如下
#include "mainwindow.h"
#include "comboxform.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// MainWindow w;
// w.show();
ComBoxForm w;
w.show();
return a.exec();
}
2. combobox用法
combobox的用法也挺简单,主要是combobox添加数据,获取combobox选中的值
第一步向combobox添加数据,首先我们拖动一个combobox控件到UI界面中
ui->comboBox->addItem("中国");
ui->comboBox->addItem("美国");
ui->comboBox->addItem("小日本");
获取combobox的值使用currentText()方法
combobox下拉选择事件currentIndexChanged
.h文件
#ifndef COMBOXFORM_H
#define COMBOXFORM_H
#include <QWidget>
#include <QMessageBox>
namespace Ui {
class ComBoxForm;
}
class ComBoxForm : public QWidget
{
Q_OBJECT
public:
explicit ComBoxForm(QWidget *parent = nullptr);
~ComBoxForm();
private slots:
void on_pushButton_clicked();
void on_select(const QString &text);//定义combox下拉选择事件槽
private:
Ui::ComBoxForm *ui;
};
#endif // COMBOXFORM_H
cpp文件
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->pushButton->setText("第一种点击实现方式");
//连接信号与槽
connect(ui->pushButton, SIGNAL(clicked()), this, SLOT(ClickButton()));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::ClickButton()
{
ui->label->setText("Hello World,你使用的是第一种点击方式");
}
void MainWindow::on_pushButton_3_clicked()
{
ui->label->setText("Hello World,你使用的是第二种点击方式");
}
代码在下一章提供下载