问题标签 [qobject]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 在 QObjects 之间跨不同线程连接信号/插槽
我想知道在 MainWindow 的构造器中创建的两个 QObjects 之间连接信号/插槽的最佳做法是什么,但后来移到不同的线程...默认连接似乎不起作用,然后当我使用选项连接时,Qt::Directconnection
事情开始工作...但有时信号/插槽失败...以下是我的代码模式..如果我需要更改我的类设计,请告诉我...
主窗口.cpp
对象A.h
对象A.cpp
对象B.h
对象B.cpp
qt - Object::connect: 没有这样的信号
我在使用结构创建自定义插槽/信号时遇到问题。我有以下代码:
运行程序时我得到:
我该如何解决这个问题?
PS:插槽和信号已在头文件文件 Q_SIGNALS 和 Q_SLOTS 关键字中正确声明,并带有正确的参数(aStruct)
c++ - 让 QObject 在执行函数之前等待它的监听器
我正在使用结构光,我有我写QCamera
的QProjector
课程。当投影仪投射一个图案时,它必须等待所有连接的相机捕捉到该图案,然后才能移动到下一个。
我现在的模型是这样的:
QProjector
投影图像并发出信号patternProjected(Pattern*)
。- Connected
QCamera
s 接收信号并连接到投影仪的hold()
信号(见下文)。然后相机开始异步捕获图像并frameCaptured(cv::Mat)
在完成后发射。
以前我hold()
在QProjector
. 希望投影仪等待它的相机会调用
哪里camera->wait()
是一个虚拟函数。然后,在 中projector->disconnectNotify()
,投影仪检查是否receivers(SIGNAL(hold()))
为零。如果是,则投影仪将移动到其队列中的下一个图案;如果没有,它会再等一些。
这种方法是一团糟,甚至行不通——不能保证投影仪在发射patternProjected()
和接收来自相机的连接之间不会移动到下一个模式。
任何人都有一种更清洁的方法,最好是一种更符合QObject
哲学的方法?
c++ - 将 const QObject* 转换为 QObject*
我对 Qt 很陌生。让 MyClass 成为 QObject 的子类。
有没有办法将对象正确转换const MyClass *
为MyClass *
对象?
我想创建一个构造函数MyClass(const MyClass *object);
,但似乎不推荐。
c++ - Qt Q_OBJECT 类编译
添加标记为的类时,无错编译需要什么
? 应该运行 qmake 文件吗?
新类写在 .h .cpp 文件中,这些文件已经添加到 .pro .pri 文件中。
我的形而上学问题是
1/ qmke_all.bat 运行和重建是否足以清除 Qt 依赖项?如果不是,程序是什么?
2/ 为什么需要这个程序,会发生什么?
3/ .pro .pri 有什么用?他们都在这里与 qt 进行“映射”吗?添加类但没有 .h .cpp 文件时,我应该对它们进行任何更改吗?
我用VS2010
谢谢
qt - QGraphicsObject 自动销毁
QGraphicsObject
继承自QGraphicsItem
and QObject
,但与大多数 QObject 子类不同,QGraphicsObject 的构造函数没有QObject *parent
参数。
那么这是否意味着我应该在构造函数中提供这样的参数,当我对它进行子类化甚至使用setParent
方法来具有自动销毁功能时?
PS:我有 Qt 5
qt - C++ BlackBerry10:所有自定义类都应该从 QObject 扩展吗?
我想制作我的第一个 BB10 应用程序。我的问题是,所有对象是否都应从 QObject 扩展,以及仅由控制器使用而不在 QML 文件中使用的自定义类?
qt - 临时阻塞两个 QObject 之间的信号
我想在QObjects
不修改其他信号/插槽行为并且不知道它们的上下文的情况下,一般性地和暂时地阻止两个信号之间的信号。
像QObject::blockSignals(bool) 之类的东西,但只在两个之间起作用QObjects
。
即实现如下SignalBlocker::blockSignals(bool)
功能:
可以通过断开和重新连接对象来实现,但首先必须存储信号/插槽列表。内省方法似乎不足以实现这一目标(我看过QMetaObject
但QSignalSpy
没有成功)。
c++ - Multiple inheritance with QObject
I want to inherit QObject and another class and got an error: undefined reference for `vtable for EduGraph' I've read some threads about it and have fixed the sequence of the inherited classes in the class definition, but it haven't solved the problem.
c++ - QObject 有多大?
我很好奇 QObject 实际上有多大,包括每个实例动态创建的典型私有数据。sizeof
由于它们的实施方式,我无法获得这些。
编辑:请注意,我问的是 QObject 的典型使用场景的大小,我不是问“如何获得大小”,这是另一个问题的意义,我问的是知道近似大小的人,因为显然,语言本身并没有提供报告的方式。