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

QT两个类之间使用信号槽

        在做一些东西的时候,习惯性的引入头文件并且调用,因此出现了很多bug,qt的信号槽机制便可以有效的避免一些问题。

        A类

#ifndef A_H
#define A_H#include <QObject>
#include <QDebug>
class A : public QObject
{Q_OBJECT
public:explicit A(QObject *parent = nullptr);signals:void Asignal(void);
public slots:void Aslot(void){qDebug()<<"A类的槽函数被调用";}};#endif // A_H

        B类

#ifndef B_H
#define B_H#include <QObject>
#include <QDebug>
class B : public QObject
{Q_OBJECT
public:explicit B(QObject *parent = nullptr);signals:void Bsignal(void);
public slots:void Bslot(void){qDebug()<<"B类的槽函数被调用";}};#endif // B_H

        mainwindow 

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "a.h"
#include "b.h"
MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)
{ui->setupUi(this);}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_2_clicked()
{qDebug()<<"PushButton(A>B)";A *a = new A;B *b = new B;connect(a,SIGNAL(Asignal()),b,SLOT(Bslot()));emit a->Asignal();}
void MainWindow::on_pushButton_clicked()
{qDebug()<<"PushButton(B>A)";B *b = new B;A *a = new A;connect(b,SIGNAL(Bsignal()),a,SLOT(Aslot()));emit b->Bsignal();}

当点击PushButton(A>B)时,A类发送信号,调用B类的槽函数;

当点击PushButton(B>A)时,B类发送信号,调用A类的槽函数。

http://www.lryc.cn/news/307609.html

相关文章:

  • 【Ubuntu】使用WSL安装Ubuntu
  • 【Node.js】自动生成 API 文档
  • 小红书3C家电行业种草营销策略打法,纯干货
  • 防火墙的内容安全
  • Redis 管道详解
  • 【Redis】理论进阶篇------浅谈Redis的缓存穿透和雪崩原理
  • Rocky Linux安装部署Elasticsearch(ELK日志服务器)
  • Linux浅学笔记04
  • 【Day59】代码随想录之动态规划_647回文子串_516最长回文子序列
  • ECLIP
  • STM32 +合宙1.54“ 电子墨水屏(e-paper)驱动显示示例
  • 使用Postman和JMeter进行signature签名
  • uni-app nvue vue3 setup中实现加载webview,解决nvue中获取不到webview实例的问题
  • IPD(集成产品开发)—核心思想
  • uniapp android 原生插件开发-测试流程
  • MyCAT从入门到实战(配置文件介绍)
  • 【LeetCode-300】最长递增子序列(动归)
  • Mysterious-GIF-攻防世界-MISC
  • 【数据结构和算法初阶(C语言)】链表-单链表(手撕详讲单链表增删查改)
  • 【Go语言】Go语言中的切片
  • Qt程序设计-钟表自定义控件实例
  • Redis的发布订阅功能教程,实现实时消息和key过期事件通知功能
  • 4核8g服务器能支持多少人访问?
  • 【Android】切换系统全局语言设置
  • 【递归】【回溯】Leetcode 112. 路径总和 113. 路径总和 II
  • AxureCloud配置文件详细介绍
  • Centos开机网卡自启动失败
  • 华为OD技术面试案例3-2024年
  • 全面升级!Apache HugeGraph 1.2.0版本发布
  • WinCC如何与三菱Q系列PLC进行以太网通讯