ヘッダー:
#ifndefのHEAD_H
#define HEAD_Hの#include <QWidgetの>
する#include <QThread>
の#include <QMessageBox>
の#include <はQApplication>
の#include <QDebug>
クラスMyThread:公共QThread
{
Q_OBJECT
公共:
MyThread();
無効実行();
信号:
無効送信(QStringのS)。
}、
クラスはMyWidget:公共QWidgetの{
Q_OBJECTの
公共:
はMyWidget(QWidgetの*親= 0)。
〜はMyWidget();
公共スロット:
ボイドreceiveslot(QStringのS)。
}、
#endifの// HEAD_H
CPP文件ます。#include "head.h"
MyThread :: MyThread()
{
}
ボイドMyThread ::ラン()
{
一方(TRUE)
{
睡眠(5)。
EMITセンド(「これは息子のスレッドです」);
qDebug()<< "スレッドが実行されています!"。
}
// EXEC()。
QThread ::実行();
}
はMyWidget ::はMyWidget(QWidgetの*親):はQWidget(親)
{
}
はMyWidget ::〜はMyWidget()
{
}
のボイドはMyWidget :: receiveslot(QStringのS)
{
QMessageBox ::情報(0、 "情報"、S);
}
int型のmain(int型のargc、char型* ARGV [])
{
はQApplication(ARGC、ARGV)。
wのはMyWidget;
w.show();
MyThread * m番目=新しいMyThread。
QObject :: CONNECT(m番目、SIGNAL(センド(QStringの))、&W、SLOT(receiveslot(QStringの)));
mth->スタート();
リターンa.exec();
}
PROファイル:
QT + =コアGUI
演算子:GreaterThan(QT_MAJOR_VERSION、4):QT + =ウィジェット
CONFIG + = C ++ 11
TARGET = untitled35
TEMPLATE =アプリ
SOURCES + = main.cppに
HEADERS + = \
head.h