QT线程1
2023-09-14 09:16:27 时间
#include "threaddlg.h"
#include <QHBoxLayout>
ThreadDlg::ThreadDlg(QWidget *parent)
: QDialog(parent)
{
setWindowTitle(tr("线程"));
startBtn = new QPushButton(tr("开始"));
stopBtn = new QPushButton(tr("停止"));
quitBtn = new QPushButton(tr("退出"));
QHBoxLayout *mainLayout = new QHBoxLayout(this);
mainLayout->addWidget(startBtn);
mainLayout->addWidget(stopBtn);
mainLayout->addWidget(quitBtn);
connect(startBtn,SIGNAL(clicked()),this,SLOT(slotStart()));
connect(stopBtn,SIGNAL(clicked()),this,SLOT(slotStop()));
connect(quitBtn,SIGNAL(clicked()),this,SLOT(close()));
}
ThreadDlg::~ThreadDlg()
{
}
void ThreadDlg::slotStart()
{
for(int i=0;i<MAXSIZE;i++)
{
workThread[i]=new WorkThread();
}
for(int i=0;i<MAXSIZE;i++)
{
workThread[i]->start();
}
startBtn->setEnabled(false);
stopBtn->setEnabled(true);
}
void ThreadDlg::slotStop()
{
for(int i=0;i<MAXSIZE;i++)
{
workThread[i]->terminate();
workThread[i]->wait();
}
startBtn->setEnabled(true);
stopBtn->setEnabled(false);
}
#include "workthread.h"
#include <QtDebug>
WorkThread::WorkThread()
{
}
void WorkThread::run()
{
while(true)
{
for(int n=0;n<10;n++)
qDebug()<<n<<n<<n<<n<<n<<n<<n<<n;
}
}
相关文章
- Qt之等待提示框(QMovie)
- QT-Qt中MediaPlay的使用,播放视频或MP4
- QT-Qt组件QTimer使用方法
- QT-Qt显示GIF图片
- 修改qt版本
- s3c2410上搭建QT/Embedded4.8.5开发环境(四)--安装intel-x86 X11平台qt库qt-everywhere-opensource-src-4.8.5
- Qt音视频开发31-Onvif抓拍图片
- Qt系列文章021-HTTP文件上传
- paip.pyqt python qt 最新版本环境最佳实践
- paip.c++ qt messagebox用法
- Qt进程与线程的概念、Qt多线程编程、多线程间的同步
- QT线程同步之读写锁
- Qt如何实现高亮按钮控件
- Qt进程和线程之四:线程实际应用
- Qt进程和线程之三:线程同步、可重入与线程安全
- Qt进程和线程之二:启动线程的两种方式
- QT多线程实战_Qt多线程开发项目
- Qt开发-QT Widgets
- 【Qt】Qt5.12在ubuntu下解决 GL/gl.h: No such file or directory 与 cannot find -lGL
- qt如何支持openssl
- qt之实现鼠标操作子控件移动窗体(亲测简单好用,有问题私聊)
- qt vlc使用测试
- Qt中使用vlc-qt处理音视频
- Qt+Opencv视频播放
- 面试怎么回答:QT和MFC对比
- vs2015中无法设置Qt版本,qt project setting 是灰色,Qt无法编译ui文件
- Qt——多个线程打印数字