步骤:
1、创建一个工作框threaddlg.h继承QDialog
2、创建一个工作线程workthread.h继承QThread,实现线程函数run();
3、在工作框threaddlg.h中定义控件、槽函数、工作线程对象数组
4、在工作框threaddlg.cpp的构造函数中初始化界面和关联信号与槽
5、创建一个工作线程workthread.h继承QThread,实现线程函数run();
6、使用start()函数和wait()函数执行和停止线程运行
#ifndef THREADDLG_H
#define THREADDLG_H
#include<QDialog>
#include<QPushButton>
#include "workthread.h"
#define MAXSIZE 2//设置最大线程数
namespace Ui {
class threaddlg;
}
class threaddlg : public QDialog
{
Q_OBJECT
public:
explicit threaddlg(QWidget *parent = 0);
~threaddlg();
private:
//定义三个按钮控件
QPushButton* startBtn;
QPushButton* stopBtn;
QPushButton* quitBtn;
private:
Ui::threaddlg *ui;
public slots://槽函数
void slotStart();
void slotStop();
private:
workthread* work[MAXSIZE];//指向工作线程的私有指针数组
};
#endif // THREADDLG_H
#include "threaddlg.h"
#include "ui_threaddlg.h"
#include <QHBoxLayout>
threaddlg::t