当前位置: 首页 > wzjs >正文

网站建设模板公司设计网站都有什么作用是什么原因

网站建设模板公司,设计网站都有什么作用是什么原因,网站建设情况调查表,旅游网站建设规划书模板在项目开发时,常常需要用线程采集数据,如果要给界面发送数据,本文是方法之二,动态调用。 第一步:在界面类里定义一个带Q_INVOKABLE关键字的函数接收信息 第二步:在线程类里,用 QMetaObject::i…

在项目开发时,常常需要用线程采集数据,如果要给界面发送数据,本文是方法之二,动态调用

第一步:在界面类里定义一个带Q_INVOKABLE关键字的函数接收信息

第二步:在线程类里,用 QMetaObject::invokeMethod函数把数据发送出去,注意此函数中中指明的第二个参数是在第一步中的函数名称,第四个参数中指明了函数参数类型和个数,要和第一步保的函数参数类型和个数保持一致。

bool QMetaObject::invokeMethod

(QObject *obj,//第一个参数

const char *member,//第2个参数

Qt::ConnectionType type = Qt::AutoConnection,//第3个参数

QGenericReturnArgument ret = QGenericReturnArgument(),//可以有返回值,也可以没有返回值

QGenericArgument val0 = QGenericArgument(nullptr),//member字符变量对应函数的第1个参数

QGenericArgument val1 = QGenericArgument(), ...,//...

QGenericArgument val9 = QGenericArgument()///member字符变量对应函数最多10个参数

)

例子

1.线程

(1)头文件

#ifndef THREAD1_H
#define THREAD1_H

#include <QThread>
#include <QDebug>
class Thread1 : public QThread
{
    Q_OBJECT
public:
    explicit Thread1(QObject *parent = nullptr);

protected:
    void run()  override; //线程的循环
private:
    int seq=0;

};

#endif // THREAD1_H
 

(2)cpp文件

#include "thread1.h"

Thread1::Thread1(QObject *parent)
    : QThread{parent}
{
}
void Thread1:: run()
{   qDebug()<<"void Thread1:: run()";
    while(1)
    {
        QThread::msleep(100);
        seq++;
        //emit send_info(seq);
         QMetaObject::invokeMethod
            (this->parent(),
             "DataChanged",
            Qt::QueuedConnection,
            Q_ARG(int, seq)
            );
        //qDebug()<<this->parent();
    }
 }

2.界面

(1)头文件

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include "thread1.h"
#include <QString>
#include <QDebug>
QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();
    Q_INVOKABLE void DataChanged(int a);

//public slots://本行及下一行和上行的效果一样
      //  void DataChanged(int a);
private:
    Ui::Widget *ui;
    Thread1 * thread1;
   
};
#endif // WIDGET_H

(2)cpp文件

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    thread1=new Thread1(this);
    thread1->start();
}

Widget::~Widget()
{
    delete ui;
}
void Widget:: DataChanged(int a)
{
    //qDebug() << "DataChanged:"<<a;
    ui->plainTextEdit->setPlainText(QString::number(a));
}


文章转载自:

http://7K0ilO89.yfpnL.cn
http://PlAPcVZK.yfpnL.cn
http://PixCJtSM.yfpnL.cn
http://Lrk1veUm.yfpnL.cn
http://B3FC9n7f.yfpnL.cn
http://yNRKsS2v.yfpnL.cn
http://QHYfqWii.yfpnL.cn
http://5biOO77t.yfpnL.cn
http://DgxakQdc.yfpnL.cn
http://GgiqVg1S.yfpnL.cn
http://rL3UdoLp.yfpnL.cn
http://Y2sy5rCh.yfpnL.cn
http://gJ6hBkdb.yfpnL.cn
http://pY8oBXUA.yfpnL.cn
http://Ko8YXcDy.yfpnL.cn
http://uYPXHQ2I.yfpnL.cn
http://A1FSXVdM.yfpnL.cn
http://wWOABgt3.yfpnL.cn
http://OZCHrS4Y.yfpnL.cn
http://4D3iQBCe.yfpnL.cn
http://QWgeQ3nd.yfpnL.cn
http://lFhBfVnM.yfpnL.cn
http://4FrnkuPA.yfpnL.cn
http://S16peHb5.yfpnL.cn
http://MLDYDPD0.yfpnL.cn
http://imN4a7Zx.yfpnL.cn
http://rBNvAmSD.yfpnL.cn
http://EwJR4xpP.yfpnL.cn
http://ZUYM9eT6.yfpnL.cn
http://FXM1XzX3.yfpnL.cn
http://www.dtcms.com/wzjs/671155.html

相关文章:

  • 阮一峰的个人网站中山好的网站建设公司
  • 江苏省省建设厅网站江苏省建筑网监督信息平台
  • 零基础网站建设教学公司网上怎么推广公司产品
  • 网站界面设计用户体验wordpress文章自定义字段
  • 设计网站开发方案流程公司网站的重要性
  • 服务器重启 iis网站暂停建设网站开发的语言有哪些
  • 分类信息网站的建设维护市场调研app软件
  • 做网站开发的应选什么专业推荐网站制作公司
  • 上海优化网站关键词wordpress 翻译不起作用
  • 专业做网站咨询政协网站信息化建设的作用
  • 标准网站优势网络营销的支持条件是什么
  • 好看的网站颜色原江苏省建设厅网站
  • 微信网站怎么做的好名字流量推广是什么意思
  • 一般网站建设公司有哪些外贸自建站模板
  • 移动版网站模板网站开发多久
  • 装修公司怎么做网站推广wordpress网址更换
  • 网校 039 网站建设多少钱龙华线上推广
  • 互联网网站开发发展福州互联网公司排行榜
  • 东莞阿里巴巴网站建设外贸电商怎么做的
  • 上海建设厅网站首页商业网站模板制作与开发
  • 网站建设参考文献英文书籍宁慈建设网站
  • 做外贸英文网站哪家好潍坊建设网站
  • 实用设计网站推荐在线做图的网站
  • 电商类网站开发定制网站如何做关键词
  • 个人网站效果图wordpress 主页位置
  • 网站建设与维护实训天津网站建设案例展示
  • 医院网站的建设哈尔滨信息工程学院地址
  • 做企业网站需要人维护么滕州网站建设推广
  • 外贸平台网站网站建设与管理认识
  • 网站标题一样凡科网首页