vs2015 + Qt插件——将程序运行数据显示到界面的方法

1.建立一个定义信号的类
右键项目->添加->add Qt Class。
这里要注意最好添加Qt Class,否则出现与Qt不兼容的问题,报moc错误。
在类头文件中添加以下内容


#include <QObject>

class runtimestate : public QObject
{
	Q_OBJECT

public:
	runtimestate();
	~runtimestate();
	void testAddNums(int a);
signals:
	void add(int num);
};

注意要把构造函数改成普通构造函数,runtimestate();
添加一个 void add(int num)信号,添加一个发送这个信号的函数void testAddNums(int a)。
2.写cpp文件

#include "runtimestate.h"

runtimestate::runtimestate()
{
}

runtimestate::~runtimestate()
{
}
void runtimestate::testAddNums(int a) {
	emit add(a);
}

非常简单的几行,当调用runtimestate时发出一个add(int)的信号。
3.在主界面头文件添加

#include "runtimestate.h"
private slots:
void showNum(int a);

定义了一个接收前面add(int)信号的槽。
4.在主界面cpp添加

runtimestate addNums2;
QtGuiApplication3::QtGuiApplication3(QWidget *parent)
	: QMainWindow(parent)
{
	ui.setupUi(this);
	connect(&addNums2, SIGNAL(add(int)), this, SLOT(showNum(int)));
}

定义了一个runtimestate类型的对象addNums2,将该对象的地址与槽showNum(int a)连接起来。

void QtGuiApplication3::showNum(int a) {
	ui.lineEdit_Imgnum->setText(QString::number(a));
}

实现槽函数showNum(int a),槽函数内对界面上文本框的值进行设置。
5.

addNums2.testAddNums(fileNum);

通过addNums2对象调用testAddNums(int)函数,发出add(int)信号,信号链接到槽函数,对界面上的值进行了修改。

(完)

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值