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

设计软件网站制作网站建设整站seo排名要多少钱

设计软件网站制作网站建设,整站seo排名要多少钱,做网站宁波,网站链接结构有哪些情况描述 今天我创建了一个QT多线程的工程,框架如下。我希望通过指针的方式,让子线程去直接修改主线程的ui组件,但事与愿违。 class ChildThread : public QThread {Q_OBJECT public:ChildThread (MainThread* par):m_Par(par){}; protecte…

情况描述

今天我创建了一个QT多线程的工程,框架如下。我希望通过指针的方式,让子线程去直接修改主线程的ui组件,但事与愿违。

class ChildThread : public QThread {Q_OBJECT
public:ChildThread (MainThread* par):m_Par(par){};
protected:void run() override {while(true){m_Par.ui->label.setValue()//子线程修改主线程的ui组件}}
public:MainThread* m_Par
};class MainThread : public QWidget {Q_OBJECT
public:MainThread (QWidget *parent = nullptr) : QWidget (parent) {QLabel *label = new QLabel("Current Time: ", this);setCentralWidget(label);// 创建子线程m_ChildThread= new ChildThread (this);// 启动子线程m_ChildThread->start();}
private:ChildThread *m_ChildThread;
};

存在的问题:子线程修改主线程ui是不安全操作

在Qt中,GUI相关的操作(例如更新UI元素)通常应该在主线程中执行。直接在子线程中更新UI是不安全的,可能会导致未定义的行为或崩溃。
正确的做法是:利用QT的信号与槽函数机制。在子线程处理完业务后,发出信号并携带上结果给主线程,交给主线程渲染。

class ChildThread : public QThread {Q_OBJECT
signals:void Msg(const QString& message);
public:ChildThread ();
protected:void run() override {while(true){emit Msg("这是一条消息");}}
public:MainThread* m_Par
};class MainThread : public QWidget {Q_OBJECT
public:MainThread (QWidget *parent = nullptr) : QWidget (parent) {QLabel *label = new QLabel("Current Time: ", this);setCentralWidget(label);// 创建子线程m_ChildThread= new ChildThread ();connect(m_ChildThread, &m_ChildThread::Msg, this, &MainThread::Msg);// 启动子线程m_ChildThread->start();}
private slots:void Msg(const QString& message){ this.label.setText(message); }
private:ChildThread *m_ChildThread;
};

这里要注意两点:
1、信号携带的数据要和槽函数接受的数据保持一致,变量名可以不一样。

子线程信号: signals:void Msg(const QString& message);
主线程槽函数:private slots:void Msg(const QString& message){ this.label.setText(message); }

2、信号与槽函数链接,如果官方的链接方式无效果,就换成直接引用。

方式一 connect(m_ChildThread, SINGAL(m_ChildThread::Msg), this, SLOT(&MainThread::Msg));
方式二 connect(m_ChildThread, &m_ChildThread::Msg, this, &MainThread::Msg);

http://www.khdw.cn/news/64009.html

相关文章:

  • 濮阳网站建设熊掌网络站长素材网站
  • 微信 html5 网站广州营销课程培训班
  • wordpress 文章模板 css插件百度seo排名公司
  • dtcms怎么做自己网站百度竞价推广托管
  • 网站建设提升界面流畅程度谷歌搜索引擎香港入口
  • 微盟商城seo模拟点击
  • 怎么样将网站内容做的漂亮武汉网络推广平台
  • 深圳市建设交易网站秦皇岛seo排名
  • 陕西营销型网站建设武汉seo计费管理
  • 网站案例鉴赏推广网络广告
  • 自已建网站微信登录it人必看的网站
  • 泰安可以做网站的公司系统设置友情链接有什么作用
  • 学做网站多久数字营销工具
  • 企业品牌网站建设多少钱网络销售技巧
  • wordpress建站方法网络推广需要花多少钱
  • 高仿卡西欧手表网站自动外链
  • 曲靖网站制作公司seo站内优化教程
  • 可以免费做会计题的网站常德论坛网站
  • 天元建设集团有限公司公章图片seo的宗旨是什么
  • 建德网站设计公司百度关键词搜索热度
  • 网站定制公司哪家好成都网站seo推广
  • 建个购物网站要多少钱网络营销的优势包括
  • 深南花园裙楼+网站建设搜索引擎优化是什么意思
  • 安阳那里可以制作网站百度数据开放平台
  • 学校定制网站建设公司自媒体seo优化
  • 十堰优化网站排名公司百度网页游戏
  • 仿制别人网站近期新闻大事
  • 织梦播放器网站seo外链
  • 网站后台管理教程百度网盘app
  • 2024年还会封城吗互联网关键词优化