
Originally Posted by
fatjuicymole
Connect the relevent signals from QProcess
#include "widgetcheckprocess.h"
#include <QtGui/QApplication>
int main(int argc, char *argv[])
{
WidgetCheckProcess w;
w.show();
return a.exec();
}
#include "widgetcheckprocess.h"
#include <QtGui/QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
WidgetCheckProcess w;
w.show();
return a.exec();
}
To copy to clipboard, switch view to plain text mode
WIDGETCHECKPROCESS.h
#ifndef WIDGETCHECKPROCESS_H
#define WIDGETCHECKPROCESS_H
#include <QtGui/QMainWindow>
#include "ui_widgetcheckprocess.h"
#include <QProcess>
{
Q_OBJECT
public:
WidgetCheckProcess
(QWidget *parent
= 0, Qt
::WFlags flags
= 0);
~WidgetCheckProcess();
public slots:
void SlotDetectFinish
(int *exitCode,
QProcess::ExitStatus *exitSatus
);
void StartProcess
(QString qsProcessPath
);
signals:
void finished
(int exitCode,
QProcess::ExitStatus exitStatus
);
private:
Ui::WidgetCheckProcessClass ui;
};
#endif // WIDGETCHECKPROCESS_H
#ifndef WIDGETCHECKPROCESS_H
#define WIDGETCHECKPROCESS_H
#include <QtGui/QMainWindow>
#include "ui_widgetcheckprocess.h"
#include <QProcess>
class WidgetCheckProcess : public QMainWindow
{
Q_OBJECT
public:
QProcess *qpProcess;
WidgetCheckProcess(QWidget *parent = 0, Qt::WFlags flags = 0);
~WidgetCheckProcess();
public slots:
void SlotDetectFinish(int *exitCode, QProcess::ExitStatus *exitSatus);
void StartProcess(QString qsProcessPath);
signals:
void finished(int exitCode, QProcess::ExitStatus exitStatus);
private:
Ui::WidgetCheckProcessClass ui;
};
#endif // WIDGETCHECKPROCESS_H
To copy to clipboard, switch view to plain text mode
WIDGETCHECKPROCESS.cpp
#include "widgetcheckprocess.h"
#include <QMessageBox>
WidgetCheckProcess
::WidgetCheckProcess(QWidget *parent, Qt
::WFlags flags
): QMainWindow(parent, flags
){
ui.setupUi(this);
StartProcess("D:/s.exe");
connect(qpProcess,
SIGNAL(finished
(int,
QProcess::ExitStatus)),
this,
SLOT(SlotDetectFinish
(int,
QProcess::ExitStatus)));
}
WidgetCheckProcess::~WidgetCheckProcess()
{
}
void WidgetCheckProcess
::StartProcess(QString qsProcessPath
) {
qpProcess->start(qsProcessPath);
}
void WidgetCheckProcess
::SlotDetectFinish(int *exitCode,
QProcess::ExitStatus *exitSatus
) {
msgBox.setText("Process Run Finnish");
msgBox.exec();
}
#include "widgetcheckprocess.h"
#include <QMessageBox>
WidgetCheckProcess::WidgetCheckProcess(QWidget *parent, Qt::WFlags flags): QMainWindow(parent, flags)
{
ui.setupUi(this);
StartProcess("D:/s.exe");
connect(qpProcess, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(SlotDetectFinish(int, QProcess::ExitStatus)));
}
WidgetCheckProcess::~WidgetCheckProcess()
{
}
void WidgetCheckProcess::StartProcess(QString qsProcessPath)
{
qpProcess->start(qsProcessPath);
}
void WidgetCheckProcess::SlotDetectFinish(int *exitCode, QProcess::ExitStatus *exitSatus)
{
QMessageBox msgBox;
msgBox.setText("Process Run Finnish");
msgBox.exec();
}
To copy to clipboard, switch view to plain text mode
Bookmarks