这一次我对Qt又了解了很大一步。我们实现一个输入2个数,按下button,输出2个数的和,看个效果图
工程文件下载链接在文章后面
首先建立一个工程,这个就没什么好说的了
然后我们绘制自己的ui,拖3个lineEdit,一个textBrowser,一个PushButton
注意:ui里每个组件(比如lineEdit)它们的名字,比如图中标出的 line1 就是它在代码里名称,你要在头文件的定义中里声明的
然后 对PushButton这个组件,右键 转到槽
选择clicked()
下面看程序
我的工程文件结构
先看头文件:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QWidget>
#include <QTextBrowser>
#include <QPushButton>
#include <QLineEdit>
#include<iostream>
using namespace std;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
signals:
private slots:
void on_pushButton_clicked();
private:
QAction *openAction;
Ui::MainWindow *ui;
QLineEdit *line1;//声明我ui中的每个组件,PushButton可以省略,不用声明
QLineEdit *line2;
QLineEdit *lineEdit;
QTextBrowser *Bro;
};
#endif // MAINWINDOW_H
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QAction>
#include <QMenuBar>
#include <QMessageBox>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
setWindowTitle(tr("Main Window"));
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
int num_1 = ui->line1->text().toInt();
int num_2 = ui->line2->text().toInt();
ui->Bro->append(QString::number(num_1+num_2));
ui->lineEdit->setText(ui->lineEdit->text()+=QString::number(num_1+num_2));
}
main.c,大家都一样
#include "mainwindow.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
这样就可以实现了