QT-信号槽中传递自定义数据类型

2023-05-16

Qt编程一个核心亮点就是信号槽机制,通过:

QMetaObject::connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type=Qt::AutoConnection)

进行连接,此处不做详细介绍:

当我们传递一些自定义类型,比如类和结构体的时候,传递可能会出错,自己亲身体会,看到自己的信号槽已经关联了但是信号发出之后根本不会进入槽函数,因为这个信号槽是无效的,因为你自己定义的类型没有注册的话,信号槽机制将无法识别,解决办法就是进行如下操作进行注册

(1)首先包含头文件

#include <QMetaType>

(2)然后注册自自己定义的类型,比如定义结构体stTest

qRegisterMetaType<stTest>("stTest");

(3)进行正常信号槽连接

connect(sender, SIGNAL(sig_test(stTest)), accepter, SLOT(slo_test(stText)));

然后你就会发现信号发出时,槽得到了响应,然后就可以继续在槽函数中对自己传进来的数据进行后续处理了.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QT-信号槽中传递自定义数据类型 的相关文章

  • realsense版本号问题

    问题 xff1a librealsense2 so 2 47 cannot open shared object file No such file or directory 打开驱动查看版本号 realsense span class t
  • YOLOv3

    YOLOv3 论文信息论文标题 xff1a 论文作者 xff1a 收录期刊 会议及年份 xff1a 论文学习YOLOv3 网络架构 xff1a YOLO 输出特征图解码 xff08 前向过程 xff09 xff1a 训练策略与损失函数 xf
  • 使用Gazebo进行移动机械臂抓取仿真

    该项目在Gazebo中搭建一款机器人模型 xff0c 其底盘使用turtlebot移动机器人底盘 xff0c 机械臂采用结构较为简单的turtlebot arm xff0c 并在底盘上添加kinect深度相机 最终该机器人可实现自主导航 物
  • 【树莓派——Ubuntu 20.04 系统安装及Windows远程桌面连接显示】

    前言 文章A主要是Raspberry Pi官方系统的安装和用VNC查看器远程连接显示 xff1b 这篇文章主要分享一下Ubuntu 20 04系统的安装以及用Windows 远程桌面连接显示 Ubuntu 20 04系统的下载和烧录 专门的
  • Abstract写作常用句式

    Abstract 摘要以最简洁的文字概括论文 xff0c 点明研究的目的 途径 结果 意义 xff0c 以便读者决定是否要阅读全文 摘要一般包含几项内容 xff1a 1 论文主题 xff08 1句 xff09 2 理论基础 途径 方法 xf
  • mysql备份与恢复:完全备份,增量备份,基于位置点恢复,基于时间点恢复

    理论介绍 数据备份的重要性数据库备份的分类 常见的备份方法MySQL完全备份数据库完全备份分类 数据库备份与恢复MySQL数据库完全备份与恢复mysqldump备份与恢复MySQL数据库增量备份恢复基于位置的恢复基于时间恢复 数据备份的重要
  • vue => element 进度条 自定义文字 三层数据渲染页面报错:Invalid prop: custom validator check failed for prop “percentage

    三层数据渲染页面报错 报错原因分析 xff1a 解决方案 xff1a span class token operator lt span span class token operator span span class token ope
  • 使用xfsdump进行文件的备份与恢复

    1 添加一块硬盘大小随意 2 sdb为新添加的硬盘 3 格式化为xfs格式 4 新建目录并永久挂载 mount dev sdb xfsdump 5 将sdb设备挂载到 xfsdump 目录 编辑 etc fstab 文件 将 挂载的信息卸写
  • Jetson Orin NX上手使用(Linux系统的配置)

    先介绍手上拿到的orin nx模块 xff1a Jetson Orin NX 16GB 100TOPS的算力听起来顶呱呱 摸过一些jetson系列套件的我拿到手自信开搞 然后就自闭了 他好像跟以前的不是一个路子啊 xff08 以前摸过的有n
  • 51单片机的串口通信原理

    一 并行和串行通信方式 通信有并行和串行两种通信方式 在单片机系统以及现代单片机测控系统中信息交换多采用串行通信方式 1 并行通信方式 并行通信通常是将数据字节的各位用多条数据线同时进行传送 xff0c 每一位数据都需要一条传输线 如下图所
  • 正点原子stm32F407学习笔记3——蜂鸣器实验

    一 硬件设计 蜂鸣器为有源蜂鸣器 xff0c 当 PF 8 输出高电平的时候 xff0c 蜂鸣器将发声 xff0c 当 PF 8 输出低电平的时候 xff0c 蜂鸣器停止发声 xff0c 硬件原理图如下 二 软件设计 1 新建beep c文
  • 先面试还是先笔试-找工作,是先面试,还是先笔试?

    有些工作不需要笔试 有采访 一般来说 xff0c 你会先在笔试中检查你的专业水平 xff0c 然后在面试时检查你的形象和沟通水平 公务员考试先面试还是笔试 先笔试 xff0c 通过后面试 是先面试还是先笔试 xff1f 不同的单位会有不同的
  • 北京邮电大学2023级工商管理硕士MBA(非全日制)已开启

    工商管理硕士专业学位 xff08 非全日制 xff09 预面试通知 北京邮电大学MBA项目以 技术叠加管理 科学叠加艺术 为理念 xff0c 以 追求卓越 持续创新 为驱动 xff0c 面向信息化社会的企事业单位 政府部门及创业者 xff0
  • 【视频教程】基于PyTorch机器学习与深度学习实践应用与案例分析

    近年来 xff0c 随着AlphaGo 无人驾驶汽车 医学影像智慧辅助诊疗 ImageNet竞赛等热点事件的发生 xff0c 人工智能迎来了新一轮的发展浪潮 尤其是深度学习技术 xff0c 在许多行业都取得了颠覆性的成果 另外 xff0c
  • ORB-SLAM3运行过程记录

    试着运行ORB SLAM3 xff0c 做的部分修改 在ORB SLAM3 Examples ROS ORB SLAM3 src中修改ros rgbd cc的topic订阅 xff1a xff08 参考https blog csdn net
  • Introduction写作常用句式

    Introduction 引言部分介绍此项研究的主题 背景 范畴 xff0c 并说明全文的结构 xff0c 便于读者阅读 xff0c 一般包含几项内容 xff1a 1 背景介绍 2 现有问题 3 研究目标 4 篇章结构 1 背景介绍 has
  • mysql中的CURRENT_TIMESTAMP和ON UPDATE CURRENT_TIMESTAMP

    在mysql中 xff0c 如果类型为时间的列设置了CURRENT TIMESTAMP xff0c 那么在insert一条新记录的收 xff0c 时间字段自动获取到当前时间 xff0c 如果设置了ON UPDATE CURRENT TIME
  • vncviewer使用教程

    首先安装vncviewer 之后在服务器输入你想要开启的 端口号 conda deactivate vncserver 88 VNC Server这里写 你的服务器地址 5900 43 端口号 如果出现以下问题 xff0c 可能是配置文件的
  • podman常见使用命令

    常用命令 容器 podman run 创建并启动容器 podman start 启动容器 podman ps 查看容器 podman stop 终止容器 podman restart 重启容器 podman attach 进入容器 podm

随机推荐