main.cpp中:
#include "mainwindow.h"
#include "myobject.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
QThread cThread;
MyObject cObject;
cObject.doSetup(cThread);
cObject.moveToThread(&cThread);
// cThread.start();
return a.exec();
}
mainwindow.cpp:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
// cThread.start();
}
我正在尝试在on_pushButton_clicked()上启动线程。为了做到这一点,我必须通过参数将cThread传递给mainwindow,对吧?我只是想让某人确认以确保我做得对。
答案 0 :(得分:0)
这似乎是一种方法。另一个是将按钮的信号clicked()
连接到应用程序中的线程插槽start(Priority)
,这将更好更短。