qt线程槽与信号

qtgui.h

#ifndef QTGUI_H
#define QTGUI_H


#pragma once

#include <QObject>
#include<qthread.h>
#include<thread>
#include "prasejson.h"
using namespace std;
class QTgui :public QThread
{
    Q_OBJECT
    signals :
        void sigCurrentImage2(QList<float> img);
    public:
        QTgui(QObject *parent);
        ~QTgui();
        int k;
        int add;
        int timee=3;
        std::thread * tthread;
        QString a;
        QString b;

        void run();
        void addd();
        void porcess();
        void initgui(QString a,QString b);
        PraseJson *peasejson;

};

#endif // QTGUI_H

qtgui.cpp

#include "qtgui.h"
#include <QString>
#include <QJsonDocument>
#include <QJsonParseError>
#include <QFile>
#include <QJsonObject>
#include <QDebug>
#include <QJsonArray>
#include "sqlopen.h"
#include "prasejson.h"
#include <QMessageBox>
#include <QSqlQuery>
#include <QJsonDocument>

QTgui::QTgui(QObject *parent)
    : QThread(parent)
{

}
QTgui::~QTgui()
{
}

void QTgui::run()
{



        // 使用QSqlQuery查询整张表
        QSqlQuery query;
        query.exec("select * from student4");
        QList<float> intList;
        float max = 0;
        float min = 0;
        while(query.next())
        {

            if((this->a) == query.value(1).toString()){

                  QJsonObject qson =  peasejson->praseVarious(query.value(5).toString());
                  intList.append(qson.value(this->b).toString().toFloat());

            }

        }

        emit sigCurrentImage2(intList);


}

void QTgui::addd()
{

    start();


}


void QTgui::initgui(QString a,QString b)
{
    this->a = a;
    this->b = b;
}



void QTgui::porcess()
{

}

主函数

 public:

        QTgui* g1;
        QTgui* g2;
        qtgui1 * g3;
         qtgui2 * g4;
        QString iutem;

    private:

        private slots:
        void slot2(QStandardItemModel* );
        void slot1(QStandardItemModel* );
        void slot3(QList<float> intList);













  g1 = new QTgui(this);
        connect(g1, SIGNAL(sigCurrentImage2(QList<float>)), this, SLOT(slot3(QList<float>)));



        g3 = new qtgui1(this);
        connect(g3, SIGNAL(asd(QStandardItemModel*)), this, SLOT(slot1(QStandardItemModel*)));


        g4 = new qtgui2(this);
        connect(g4, SIGNAL(asd(QStandardItemModel*)), this, SLOT(slot2(QStandardItemModel*)));

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值