先创建ui界面,如下图:
mainwindow.h
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
signals:
void starting(int num);
private:
Ui::MainWindow *ui;
};
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "mythread.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
//1.创建子线程对象
Generate* gen = new Generate();
connect(this,&MainWindow::starting,gen,&Generate::recvNum); //使用信号和槽机制将随机数的个数发送到gen
//2.启动子线程
connect(ui->start,&QPushButton::clicked,this,[=]()
{
emit st