I want to create a program by using Qt framework. The aim is to write a program which uses QThread to show a simple digital clock. but nothing happened when running.

This is the subclass of Qthread for running

paytamtimers.h

```
#ifndef PAYTAMTIMERS_H
#define PAYTAMTIMERS_H
#include <QThread>

class PaytamTimers:public QThread
{
    Q_OBJECT
public:
    PaytamTimers();
QString now;
protected:
    virtual void run();
private:
    QMutex mutex;
    QThread *thread;

signals:
    void mySignal(QString);
};

#endif // PAYTAMTIMERS_H

```

and this is the implementation of this.class
paytamtimers.cpp

```
#include "paytamtimers.h"
#include <QTime>

PaytamTimers::PaytamTimers()
{
    this->now="";
    this->thread=new QThread(0);
}

void PaytamTimers::run(){
forever{
    mutex.lock();
    this->now=QTime::currentTime().toString();
    this->thread->sleep(1000);
    emit mySignal(this->now);
    mutex.unlock();

}
}

```

and this is the implementation of GUI form. This for consist of QLabel and an instance of paytamtimers,just for simplity

```
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "paytamtimers.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    t=new PaytamTimers();
    t->start();
    connect(t,SIGNAL(t->mySignal(QString)),this,SLOT(this->now(const QString &string)));
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::now(const QString &string){
    this->ui->label->setText(t->now);
}

```