一、新建qt程序,界面如图所示:

二、在.h文件中:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <qDebug>namespace Ui {
class MainWindow;
}class MainWindow : public QMainWindow
{Q_OBJECT
signals:void signal_data(QString);public:explicit MainWindow(QWidget *parent = 0);~MainWindow();static MainWindow* getInstance();private slots:void on_pushButton_2_clicked();void slot_ReceiveData(QString);private:Ui::MainWindow *ui;
};#endif // MAINWINDOW_H

三、在.cpp文件中加入:

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <Windows.h>
#include <stdio.h>MainWindow* instance;
MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);instance = this;
//绑定信号和槽connect(this,SIGNAL(signal_data(QString)),this,SLOT(slot_ReceiveData(QString)));}MainWindow::~MainWindow()
{delete ui;
}//建立自身调用
MainWindow *MainWindow::getInstance()
{qDebug()<<"3333";return instance;
}
//普通函数
void showLab()
{qDebug()<<"111";QString str = "234";qDebug()<<"222";MainWindow::getInstance()->signal_data(str);
}void MainWindow::slot_ReceiveData(QString data)
{qDebug()<<"data"<<data;ui->label->setText(data);ui->pushButton_3->setEnabled(false);ui->textEdit->setText("234");
}void MainWindow::on_pushButton_2_clicked()
{showLab();
}

四:在main函数中:

#include "mainwindow.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);MainWindow w;w.show();return a.exec();
}

以上就是解决的方法,通过建立自身类的指针,进行调用自身的成员函数,同时也就解决了qt中普通函数无法调用界面中的控件的问题

qt中利用普通函数将调用ui界面的控件相关推荐

  1. WPF 中使用附加属性,将任意 UI 元素或控件裁剪成圆形(椭圆)

    原文:WPF 中使用附加属性,将任意 UI 元素或控件裁剪成圆形(椭圆) 版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可.欢迎转载.使用.重新发布,但务必保 ...

  2. qt中根据数据解析的结果动态的创建控件并布局

    引言 有时候程序中的控件的个数是无法预测的,当程序启动时,根据解析的数据动态的创建n行m列的控件,并为其布局.下面记录一下动态创建控件,并布局. 运行效果 示例 此示例主要是从json配置文件中读取参 ...

  3. Qt中利用定时器QTimer实时显示当前日期和时间

    Qt中利用定时器QTimer实时显示当前日期和时间 时显示当前日期和时间.下面说明方法: 1. 在工程中声明一个全局QTimer对象 QTimer *timer; 2. 在构造函数中定义QTimer, ...

  4. C语言中利用Swap函数交换变量a,b

    C语言中利用Swap函数交换变量a,b 常见错误写法 error1 void Sawp_error1(int a,int b) {int tmp;tmp=a;a=b;b=tmp; } int main ...

  5. ffmpeg php 快速播放,怎么在PHP中利用FFmpeg函数对视频播放的时长进行获取

    怎么在PHP中利用FFmpeg函数对视频播放的时长进行获取 发布时间:2020-12-18 16:02:20 来源:亿速云 阅读:96 作者:Leah 这篇文章给大家介绍怎么在PHP中利用FFmpeg ...

  6. C++对象模型8——构造函数和析构函数中对虚函数的调用、全局对象构造和析构、局部static数组的内存分配

    一.构造函数和析构函数中对虚函数的调用 仍然以https://blog.csdn.net/Master_Cui/article/details/109957302中的代码为例 base3构造函数和析构 ...

  7. Py之matplotlib:在matplotlib库中利用legend函数创建自定义图例(代码实现)

    Py之matplotlib:在matplotlib库中利用legend函数创建自定义图例(代码实现) 目录 matplotlib库中利用legend函数创建自定义图例 原始图像 在原始图像上创建自定义 ...

  8. 在 Apache Spark 中利用 HyperLogLog 函数实现高级分析

    在 Apache Spark 中利用 HyperLogLog 函数实现高级分析 预聚合是高性能分析中的常用技术,例如,每小时100亿条的网站访问数据可以通过对常用的查询纬度进行聚合,被降低到1000万 ...

  9. vue 执行函数this_在vue中使用回调函数,this调用无效的解决

    let self = this //使用新变量替换this,以免this无效 //updatestudentinfotoserver是一个将本身部分数据异步上传的接口,接收三个参数,其中第一个是数据, ...

最新文章

  1. oracle重启一个节点集群,帮忙分析一例数据库两节点集群每隔几个月节点重启
  2. Linux常用命令笔记一
  3. Eclipse中javascript文件 clg 变为console.log();
  4. 企业集成模式_企业集成模式简介
  5. java 绘制长方形_Java入门:绘制简单图形
  6. 中国水密门市场趋势报告、技术动态创新及市场预测
  7. Hibernate的单向1-1关联(二)
  8. 关于Redis缓存和数据库一致性问题
  9. 测度论与概率论笔记6:符号测度
  10. sap 双计量单位_SAP双计量单位实现基本要素.doc
  11. 微信诈骗产业链,俩字儿是核心:杀熟
  12. 卸载360天擎-奇安信
  13. Appium和Python实现蚂蚁森林自动化收取能量
  14. IOS应用分发的三种方式
  15. HTML页面背景音乐自动循环播放
  16. java字符串==_Java字符串(String)
  17. 基于链接密度聚类的重叠社区发现算法
  18. vue+vant图片上传压缩图片大小
  19. 2019年5月25日
  20. Android实现意见反馈剩余字数

热门文章

  1. paloalto防火墙接口使用方法及实例
  2. 手机客户端软件市场发展特点
  3. iPhone 14 竞品分析 Camera
  4. 前端怎样使用base64图片上传到七牛云
  5. 为什么在WORD中插入图片时,只显示图片最下面一小部分
  6. 快速配置电脑网络参数
  7. 容器编排compose部署
  8. Android开发之2016_最流行的Android组件、工具、框架大全
  9. 三菱PLC通讯错误号列表及原因
  10. Photo Sphere Viewer渲染全景图片