gpt4 book ai didi

c++ - 来自线程的 Qt 信号导致错误

转载 作者:太空宇宙 更新时间:2023-11-04 11:36:34 25 4
gpt4 key购买 nike

我有一个线程,我需要从中发送一个带有参数的信号到一个指针,如下所示:

connect(insThread, SIGNAL(sgGetCurrentElement(QWebElement&)), this, SIGNAL(sgGetCurrentElement(QWebElement&)));

其中 insThread 是线程。但是我得到了错误:

QObject::connect: Cannot queue arguments of type ‘QWebElement&’ (Make sure ‘QWebElement&’ is registered using qRegisterMetaType().)

我已经知道我需要使用 qRegisterMetaType 但我不知道如何构造它。我试过了

qRegisterMetaType<QWebElement&>("myElement");

但失败了。我该如何解决这个问题?

谢谢。

最佳答案

我假设您正在尝试使用引用 (&) 注册 QWebElement,因为已经对插槽进行了原型(prototype)设计以将 QWebElement 作为引用,但是如果您将信号从一个线程发布到另一个线程,这不是一个好主意, 请参阅 here .无论如何,正如 Laszlo 所指出的,您必须注册基本类型,使用引用标记 (&) 注册类型是没有意义的。

关于c++ - 来自线程的 Qt 信号导致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22886736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com