QT 信号与槽 最简单例子
QT 信号与槽 最简单例子
main.cpp 和 my_head.h源码:
- #ifndef MY_HEAD_H
- #define MY_HEAD_H
- #include <stdio.h>
- #include <QObject>
- //EastonWoo
- class A : public QObject //QObject::connect是在QObject定义的,继承一下。 <span style="color:#ff0000;">注意: 如果类A 本身就已经继承过QObject了,就不用再继承了,你可以这样查看是否已继承过:把光标移动到类A,右键,选择"Open Type Hierarchy",或直接按Ctrl+Shift+T,就可以查看到类的继承关系了。</span>
- {
- Q_OBJECT //信号和槽要用到的宏,要加上
- public:
- void test()
- {
- send_msg();
- }
- signals: //信号关键字
- void send_msg(); //发射信号函数,带的参数必须和槽一样。声明一下就可以了。
- };
- class B : public QObject
- {
- Q_OBJECT
- public slots: //槽关键字
- void recv_msg() //
- {
- printf("hello\n");
- }
- };
- //值得注意的是,凡是信号和槽的定义关键字都在头文件里定义
- //如Q_OBJECT,signal:,public slots:,声明如void send_msg();void recv_msg();
- #endif // MY_HEAD_H
- #include "my_head.h"
- //EastonWoo
- int main()
- {
- printf("start...\n");
- A send_a;
- B recv_b;
- QObject::connect(&send_a,SIGNAL(send_msg()),&recv_b,SLOT(recv_msg()));
- send_a.test();
- return 0;
- }
qmain一下:
运行结果:
/home/user/hello/hello 启动中...
start...
hello
/home/user/hello/hello 退出,退出代码: 0
{1 ?}
QT 信号与槽 最简单例子相关推荐
- Qt 信号和槽 事件处理
一:Qt信号和槽概述 信号与槽作为QT的核心机制在QT编程中有着广泛的应用,本章介绍了信号与槽的一些基本概念.元对象工具以及在实际使用过程中应注意的一些问题. 信号和槽机制是QT的核心机制,要精通QT ...
- QT信号与槽(自定义带参数的信号)
关于QT信号与槽的问题其实每个初学QT的人都会遇到,当时我需要做一个带界面的demo,在信号和槽的问题上,我需要的想法是让槽可以有参数的进行操作,但是系统内置的clicked()信号是不含参数的,这对 ...
- QT信号和槽函数学习笔记
//connect 函数有4个参数 分别是 发送者 信号.接受者 ,槽 //connect(sender,signal,receiver,slot) /* * 信号和槽 * 信号 就是一个普通的函数 ...
- 【Qt】Qt信号与槽使用不当,使程序崩溃
问题描述 跨线程使用Qt信号和槽,信号发送时间间隔小于槽函数处理时间时,造成程序崩溃. 原因分析 跨线程使用Qt信号和槽时,connect默认是QueuedConnection,队列连接方式. 信号传 ...
- QT信号与槽——观察者模式——回调函数
QT信号与槽--观察者模式--回调函数 1.QT信号与槽机制 1.1信号本质 信号是由于用户对窗口或控件进行了某些操作,导致窗口或控件产生了某个特定事件,这时候 Qt 对应的窗口类会发出某个信号.比如 ...
- Qt信号与槽传递自定义数据类型——两种解决方法
Qt信号与槽传递自定义数据类型--两种解决方法 参考文章: (1)Qt信号与槽传递自定义数据类型--两种解决方法 (2)https://www.cnblogs.com/tid-think/p/9300 ...
- Qt信号与槽传递QList动态数组
Qt信号与槽传递QList动态数组 根据实验,测试程序见下: - QString的QList动态数组能够通过signal-slot机制进行传递: - 自定义结构的QList动态数组也能通过signal ...
- Qt信号和槽函数连接不成功原因
Qt信号和槽连接失败原因主要有以下几点: 1.槽函数并没有声明在类的public slots(或private slots或protected slots)里,因此,所想要成为槽函数的那个函数只是普普 ...
- qt信号与槽连接的书写规范
环境 : vs2015 + qt 5.9.9 Qt信号和槽连接失败原因主要有以下几点: 1.槽函数并没有声明在类的public slots(或private slots或protected slot ...
最新文章
- VS2010 加入OpenCV 提示 0xc000007b 的错误
- javaFX的控制台实现
- 【CSON原创】HTML5游戏框架cnGameJS开发实录
- java中用iterator去检查最大值_Java中的Iterator vs forEach
- 42.Android之ListView中ArrayAdapter简单学习
- MySQL 5.7 LOGICAL_CLOCK 并行复制原理及实现分析
- bootstrap3 表单构建器_FastReport.NET报表设计器连接到OracleDB关系数据库
- node oauth2验证_如何设置和使用护照OAuth Facebook身份验证(第1部分)| Node.js
- 使用帅气的cordic算法进行坐标系互转及log10的求解
- 【SpringCloud】Spring cloud Alibaba Sentinel 降级规则
- android 课堂讨论内容,Android端课堂交互应用研究与实现
- Remote Desktop Connection Manager2.7 安装+基本使用
- 17.CRT的绿色版安装和使用。
- 3dmax实例教程-使用3ds Max 创建一个完整的场景
- Map获取key,value的方法
- ros软路由防火墙(双线路、日志配置)
- 怎样设定目标(三)—— 目标设定前的准备
- JAVA计算机毕业设计网上图书销售系统(附源码、数据库)
- 写给二线城市【Python工程师】的成长指南
- ResNet深度残差网络
热门文章
- 【Android 插件化】Hook 插件化框架 ( 创建插件应用 | 拷贝插件 APK | 初始化插件包 | 测试插件 DEX 字节码 )
- 【Flutter】Flutter 布局组件 ( FractionallySizedBox 组件 | Stack 布局组件 | Positioned 组件 )
- 【鸿蒙 HarmonyOS】Ability 中使用 XML 布局文件 绘制布局及 UI 组件
- 手机用appnium,web自动化用eclips+webdriver2
- 理解JAVA与C的运行机制
- 问候Maven3(笔记一)
- Advanced Transact-SQL for SQL Server 2000 学习译文
- Hyperic HQ HQU 插件开发指南
- 使用SqlBulkCopy数据导入和复制
- AOE网(求关键路径)(c/c++)