signals-slots相关内容

PyQt_PyObject 在使用新型信号/插槽时等效吗?

所以我需要在我的 PyQt 应用程序中传递一个 numpy 数组.我首先尝试使用新型信号/插槽,定义我的信号: newChunkToProcess = pyqtSignal(np.array()),但是这给出了错误:类型错误:找不到所需的参数“对象"(位置 1) 我已经研究出如何使用旧式信号和插槽来做到这一点self.emit(SIGNAL("newChunkToProcess(PyQ ..
发布时间:2021-06-24 18:58:27 其他开发

PySide 插槽装饰器是必需的吗?

我看过一些使用@QtCore.Slot 装饰器的 PySide 插槽示例代码,有些则没有.自己测试了一下,好像没什么区别.有什么理由我应该或不应该使用它吗?例如,在以下代码中: 导入系统从 PySide 导入 QtCore# 下一行似乎没什么区别@QtCore.Slot()def a_slot(s):印刷类SomeClass(QtCore.QObject):发生 = QtCore.Signal( ..
发布时间:2021-06-24 18:57:27 Python

PySide(或 PyQt)信号和插槽基础知识

考虑这样一个简单的例子,它使用信号和插槽连接两个滑块: from PySide.QtCore import *从 PySide.QtGui 导入 *导入系统类 MyMainWindow(QWidget):def __init__(self):QWidget.__init__(self, None)vbox = QVBoxLayout()sone = QSlider(Qt.Horizo​​nta ..
发布时间:2021-06-24 18:55:45 Python

为什么我需要用 pyqtSlot 装饰连接的插槽?

我正在使用 pyqt5,并且使用类似于以下的代码连接了多个方法: self.progress.canceled.connect(self.cancel) 例如,self.cancel 是: def 取消(自我):self.timer.stop() 这段代码似乎在多种情况下都能正常工作,没有用 pyqtSlot 装饰 cancel 或用它做任何特别的事情. 我的问题是: 这样做我 ..
发布时间:2021-06-24 18:52:42 Python

PyQt 正确使用emit() 和pyqtSignal()

我正在阅读有关 PyQt5 的一些文档,以提出一个简单的信号槽机制.由于设计考虑,我已停止. 考虑以下代码: 导入系统从 PyQt5.QtCore 导入(Qt,pyqtSignal)从 PyQt5.QtWidgets 导入(QWidget、QLCDNumber、QSlider、QVBoxLayout、QApplication)类示例(QWidget):def __init__(self): ..
发布时间:2021-06-24 18:52:30 Python

如何将参数传递给 PyQt 中的回调函数

我在一个工具栏中有大约 10 个 QAction(这个数字在运行时会有所不同),它们都会做同样的事情,但使用不同的参数.我想将参数作为属性添加到 QAction 对象,然后,QAction 的触发信号也会将对象本身发送到回调函数,以便我可以获得该函数所需的参数.我实际上对此有两个问题: 能做到吗? 有没有更好的方法来做到这一点? 解决方案 您可以使用 信号映射器.但是,最好简单地发 ..
发布时间:2021-06-24 18:51:35 Python

如何发送包含 cv::Mat 的 Qt 信号?

简而言之,我收到以下错误: QObject::connect: 不能将 'cv::Mat' 类型的参数排队(确保使用 qRegisterMetaType() 注册了 'cv::Mat'.) 我想要做的是将包含两个 cv::Mat 图像的信号从 QThread 发送到主线程,以便我可以显示输出.没有编译时错误,但是当我运行程序时,它卡在 qglobal.h 的断点处(inline void qt ..
发布时间:2021-06-12 19:38:28 其他开发

Qt MainWindow 未更新

我正在使用 Qt 生成一个窗口.此外,我使用 libnfc 来访问 nfc 阅读器,到目前为止一切顺利.在我自己编写的 nfc 类中,我生成了一个新线程,该线程正在轮询阅读器上的新标签.如果有新标签,线程将为 MainWindow 启动一个信号事件.在主窗口中,我只有一个 QWebView,它将显示不同状态的不同网站(启动后,新标签,标签删除),只是非常基本的东西. 我现在的问题是:主窗口( ..
发布时间:2021-06-04 20:34:50 其他开发

Qt线程在调用exit/quit后不停止

我试图更好地理解 Qt 信号和插槽以及线程.所以我尝试了这个最小的应用程序: foo.h: #include A 类:公共 QObject {Q_OBJECT上市:void doit();信号:无效 x();};B 类:公共 QObject {Q_OBJECT公共插槽:空 h();}; foo.cpp: #include "foo.h"#include #include 无效 B::h ..
发布时间:2021-06-04 20:02:06 其他开发

如何知道文件已打开?QT

我想知道用户是否打开了文件以进行读取(双击或使用...打开),经过研究,我正在Windows上使用Qt Creator编写 C ++ 应用程序找到了 QFileSystemWatche ,但只有在发生更改时,它才让我知道特定的文件夹. void QFileSystemWatcher :: fileChanged(const QString& path)[signal]当指定路径的文件位于修改 ..
发布时间:2021-05-07 18:45:57 C/C++开发

Qt:事件循环开始时是否有通知?

我有一个带有这种main()的Qt应用程序... int main(int argc,char * argv []){QApplication app(argc,argv);MainWindow mainWin;...一个单独的非GUI线程在这里启动mainWin.Init();mainWin.show();app.exec();} 在mainWin之前创建的另一个线程需要知道何时可以开始 ..
发布时间:2021-05-04 21:10:30 其他开发

Qt Mainwindow菜单信号

我有处理QMainWindow的"Core"对象. Core.h代码 class核心:公共QObject{Q_OBJECT上市:显式Core(QObject * parent = 0);〜Core();无效的appInit();int getAuth();公共插槽:无效的appExit();专用插槽:void appMenuTriggered(QAction * action);私人的:无效 ..
发布时间:2021-04-24 18:37:48 其他开发

qt信号未定义参考误差

我有一个班级服务器,已经为其创建了一个信号连接(QString名称).我在名为join(QString name)的函数中调用它,但是出现错误 Server.o:在函数 Server :: join(QString)'中:Server.cpp :(.text + 0x48):未定义的引用 Server :: joined(QString)'collect2:ld返回1个退出状态 这是我 ..
发布时间:2021-04-19 21:03:58 C/C++开发

如何将信号连接到插槽

我让Qt-Creator使用Qt为我生成一个基本的窗口应用程序.我在那里添加了一个按钮,然后尝试将其连接到插槽.编译正常,但应用程序崩溃并返回3,请帮帮我,我不知道该怎么办. #include"form1.h"#include"ui_form1.h"#includeForm1 :: Form1(QWidget * parent):QMainWindow(parent),u ..
发布时间:2021-04-19 20:36:50 C/C++开发

如何在QML中创建Q_GADGET结构的新实例?

我可以从C ++到QML发出带有Q_GADGET标签的结构的信号. 是否可以将这样的结构从QML发送到C ++插槽?我的代码第一步失败:在QML中创建实例. 此代码在第一行失败... var bs = new BatteryState()bs.percentRemaining = 1.0bs.chargeDate =新的Date()DataProvider.setBatterySt ..
发布时间:2021-04-19 18:52:53 C/C++开发