问题标签 [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.

0 投票
2 回答
7823 浏览

qt - 在 QObjects 之间跨不同线程连接信号/插槽

我想知道在 MainWindow 的构造器中创建的两个 QObjects 之间连接信号/插槽的最佳做法是什么,但后来移到不同的线程...默认连接似乎不起作用,然后当我使用选项连接时,Qt::Directconnection事情开始工作...但有时信号/插槽失败...以下是我的代码模式..如果我需要更改我的类设计,请告诉我...

主窗口.cpp

对象A.h

对象A.cpp

对象B.h

对象B.cpp

0 投票
3 回答
28533 浏览

qt - Object::connect: 没有这样的信号

我在使用结构创建自定义插槽/信号时遇到问题。我有以下代码:

运行程序时我得到:

我该如何解决这个问题?

PS:插槽和信号已在头文件文件 Q_SIGNALS 和 Q_SLOTS 关键字中正确声明,并带有正确的参数(aStruct)

0 投票
2 回答
218 浏览

c++ - 让 QObject 在执行函数之前等待它的监听器

我正在使用结构光,我有我写QCameraQProjector课程。当投影仪投射一个图案时,它必须等待所有连接的相机捕捉到该图案,然后才能移动到下一个。

我现在的模型是这样的:

  • QProjector投影图像并发出信号patternProjected(Pattern*)
  • Connected QCameras 接收信号并连接到投影仪的hold()信号(见下文)。然后相机开始异步捕获图像并frameCaptured(cv::Mat)在完成后发射。

以前我hold()QProjector. 希望投影仪等待它的相机会调用

哪里camera->wait()是一个虚拟函数。然后,在 中projector->disconnectNotify(),投影仪检查是否receivers(SIGNAL(hold()))为零。如果是,则投影仪将移动到其队列中的下一个图案;如果没有,它会再等一些。

这种方法是一团糟,甚至行不通——不能保证投影仪在发射patternProjected()和接收来自相机的连接之间不会移动到下一个模式。

任何人都有一种更清洁的方法,最好是一种更符合QObject哲学的方法?

0 投票
1 回答
839 浏览

c++ - 将 const QObject* 转换为 QObject*

我对 Qt 很陌生。让 MyClass 成为 QObject 的子类。

有没有办法将对象正确转换const MyClass *MyClass *对象?

我想创建一个构造函数MyClass(const MyClass *object);,但似乎不推荐。

0 投票
1 回答
189 浏览

c++ - Qt Q_OBJECT 类编译

添加标记为的类时,无错编译需要什么

? 应该运行 qmake 文件吗?

新类写在 .h .cpp 文件中,这些文件已经添加到 .pro .pri 文件中。

我的形而上学问题是

1/ qmke_all.bat 运行和重建是否足以清除 Qt 依赖项?如果不是,程序是什么?

2/ 为什么需要这个程序,会发生什么?

3/ .pro .pri 有什么用?他们都在这里与 qt 进行“映射”吗?添加类但没有 .h .cpp 文件时,我应该对它们进行任何更改吗?

我用VS2010

谢谢

0 投票
1 回答
174 浏览

qt - QGraphicsObject 自动销毁

QGraphicsObject继承自QGraphicsItemand QObject,但与大多数 QObject 子类不同,QGraphicsObject 的构造函数没有QObject *parent参数。

那么这是否意味着我应该在构造函数中提供这样的参数,当我对它进行子类化甚至使用setParent方法来具有自动销毁功能时?

PS:我有 Qt 5

0 投票
1 回答
510 浏览

qt - C++ BlackBerry10:所有自定义类都应该从 QObject 扩展吗?

我想制作我的第一个 BB10 应用程序。我的问题是,所有对象是否都应从 QObject 扩展,以及仅由控制器使用而不在 QML 文件中使用的自定义类?

0 投票
3 回答
12215 浏览

qt - 临时阻塞两个 QObject 之间的信号

我想在QObjects不修改其他信号/插槽行为并且不知道它们的上下文的情况下,一般性地和暂时地阻止两个信号之间的信号。

QObject::blockSignals(bool) 之类的东西,但只在两个之间起作用QObjects

即实现如下SignalBlocker::blockSignals(bool)功能:

可以通过断开和重新连接对象来实现,但首先必须存储信号/插槽列表。内省方法似乎不足以实现这一目标(我看过QMetaObjectQSignalSpy没有成功)。

0 投票
1 回答
597 浏览

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.

0 投票
0 回答
274 浏览

c++ - QObject 有多大?

我很好奇 QObject 实际上有多大,包括每个实例动态创建的典型私有数据。sizeof由于它们的实施方式,我无法获得这些。

编辑:请注意,我的是 QObject 的典型使用场景的大小,我不是问“如何获得大小”,这是另一个问题的意义,我问的是知道近似大小的人,因为显然,语言本身并没有提供报告的方式。