美文网首页
QT 信号和槽中使用自定义的类型作为参数时

QT 信号和槽中使用自定义的类型作为参数时

作者: 可不期诺Cappuccino | 来源:发表于2019-04-11 18:32 被阅读0次

如果要在Qt信号槽中使用自定义类型,需要注意使用qRegisterMetaType对自定义类型进行注册,当然在不跨线程时使用自定义类型signal/slot来传递,可能不会出现什么问题;一旦涉及跨线程就很容易出错,回想下信号槽的作用就是用来对象与对象之间通信的,难免会跨线程,建议在使用自定义类型利用信号槽通信时,最好先通过qRegisterMetaType()将自定义类型进行注册,以免出错。

总结qRegisterMetaType使用方法如下:
1、注册位置:在第一次使用此类链接跨线程的signal/slot之前,一般在当前类的构造函数中进行注册;
2、注册方法:在当前类的顶部包含:#include <QMetaType>,构造函数中加入代码:qRegisterMetaType<MyClass>("Myclass");
3、Myclass的引用类型需单独注册:qRegisterMetaType<MyClass>("Myclass&");

相关文章

  • QT 信号和槽中使用自定义的类型作为参数时

    如果要在Qt信号槽中使用自定义类型,需要注意使用qRegisterMetaType对自定义类型进行注册,当然在不跨...

  • Qt5 - 3. 自定义信号&槽

    信号&槽是 Qt 的核心特性之一,Qt 允许我们自定义信号&槽,因此我们可以在 Qt 程序中定义我们自己的信号&槽...

  • Qt 开发技术点

    1.qRegisterMetaType Qt线程间信号槽传递自定义数据类型 需要使用qRegisterMetaTy...

  • 信号槽

    【Qt】信号和槽对值传递参数和引用传递参数的总结[https://www.cnblogs.com/liushui-...

  • Qt5 - 2. 信号&槽

    Qt 中一个重要的机制就是信号与槽,理解和熟练使用信号与槽对于学好 Qt 非常有必要。先上码看看: 效果图: 注意...

  • 22--Qt定义自己的信号

    标签(空格分隔): Qt 自定义信号与使用如果你自己定义新的QML类型,可以使用signal关键字给你的类型添加信...

  • 信号与槽

    在Qt Designer中设置信号与槽 信号(signal) 槽(slot) 是Qt的核心机制,也是PyQt的核心...

  • Qt学习笔记(四)事件处理机制

    1、信号和槽 Qt中的事件处理机制叫“信号和槽”,signal和slot。模型:对象a中有一个信号signal:X...

  • PyQt5中信号连接槽的方法

    信号连接槽的方法有4种: 在创建 Widget 的时候使用信号作为关键字参数,其值为连接的槽函数名 使用信号的 c...

  • DTK教程 七 :信号与槽 [ 就是我点一下按钮,按钮做什么事情

    信号与槽是Qt的特色,dtk使用了Qt的库,自然是拥有这个特色的。与事件相比较而言,我更喜欢信号与槽,主要是信号与...

网友评论

      本文标题:QT 信号和槽中使用自定义的类型作为参数时

      本文链接:https://www.haomeiwen.com/subject/fauxwqtx.html