signals-slots相关内容
所以我需要在我的 PyQt 应用程序中传递一个 numpy 数组.我首先尝试使用新型信号/插槽,定义我的信号: newChunkToProcess = pyqtSignal(np.array()),但是这给出了错误:类型错误:找不到所需的参数“对象"(位置 1) 我已经研究出如何使用旧式信号和插槽来做到这一点self.emit(SIGNAL("newChunkToProcess(PyQ
..
我正在使用 python 和 Qt 开发应用程序. 我使用 Qt 设计了 2 个主窗口,即..QMainWindow(不是 QWidget 或 QDialog). 就这样吧. 1.LoginWindow -- LoginUI(Qt) 2.StuffWindow --- StuffUI 首先我应该显示登录窗口. 然后我应该将用户名传递给 StaffWindow
..
我看过一些使用@QtCore.Slot 装饰器的 PySide 插槽示例代码,有些则没有.自己测试了一下,好像没什么区别.有什么理由我应该或不应该使用它吗?例如,在以下代码中: 导入系统从 PySide 导入 QtCore# 下一行似乎没什么区别@QtCore.Slot()def a_slot(s):印刷类SomeClass(QtCore.QObject):发生 = QtCore.Signal(
..
考虑这样一个简单的例子,它使用信号和插槽连接两个滑块: from PySide.QtCore import *从 PySide.QtGui 导入 *导入系统类 MyMainWindow(QWidget):def __init__(self):QWidget.__init__(self, None)vbox = QVBoxLayout()sone = QSlider(Qt.Horizonta
..
我正在使用 pyqt5,并且使用类似于以下的代码连接了多个方法: self.progress.canceled.connect(self.cancel) 例如,self.cancel 是: def 取消(自我):self.timer.stop() 这段代码似乎在多种情况下都能正常工作,没有用 pyqtSlot 装饰 cancel 或用它做任何特别的事情. 我的问题是: 这样做我
..
我正在阅读有关 PyQt5 的一些文档,以提出一个简单的信号槽机制.由于设计考虑,我已停止. 考虑以下代码: 导入系统从 PyQt5.QtCore 导入(Qt,pyqtSignal)从 PyQt5.QtWidgets 导入(QWidget、QLCDNumber、QSlider、QVBoxLayout、QApplication)类示例(QWidget):def __init__(self):
..
我在一个工具栏中有大约 10 个 QAction(这个数字在运行时会有所不同),它们都会做同样的事情,但使用不同的参数.我想将参数作为属性添加到 QAction 对象,然后,QAction 的触发信号也会将对象本身发送到回调函数,以便我可以获得该函数所需的参数.我实际上对此有两个问题: 能做到吗? 有没有更好的方法来做到这一点? 解决方案 您可以使用 信号映射器.但是,最好简单地发
..
简而言之,我收到以下错误: QObject::connect: 不能将 'cv::Mat' 类型的参数排队(确保使用 qRegisterMetaType() 注册了 'cv::Mat'.) 我想要做的是将包含两个 cv::Mat 图像的信号从 QThread 发送到主线程,以便我可以显示输出.没有编译时错误,但是当我运行程序时,它卡在 qglobal.h 的断点处(inline void qt
..
我正在使用 Qt 生成一个窗口.此外,我使用 libnfc 来访问 nfc 阅读器,到目前为止一切顺利.在我自己编写的 nfc 类中,我生成了一个新线程,该线程正在轮询阅读器上的新标签.如果有新标签,线程将为 MainWindow 启动一个信号事件.在主窗口中,我只有一个 QWebView,它将显示不同状态的不同网站(启动后,新标签,标签删除),只是非常基本的东西. 我现在的问题是:主窗口(
..
我试图更好地理解 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
..
我想知道用户是否打开了文件以进行读取(双击或使用...打开),经过研究,我正在Windows上使用Qt Creator编写 C ++ 应用程序找到了 QFileSystemWatche ,但只有在发生更改时,它才让我知道特定的文件夹. void QFileSystemWatcher :: fileChanged(const QString& path)[signal]当指定路径的文件位于修改
..
我有一个带有这种main()的Qt应用程序... int main(int argc,char * argv []){QApplication app(argc,argv);MainWindow mainWin;...一个单独的非GUI线程在这里启动mainWin.Init();mainWin.show();app.exec();} 在mainWin之前创建的另一个线程需要知道何时可以开始
..
我有处理QMainWindow的"Core"对象. Core.h代码 class核心:公共QObject{Q_OBJECT上市:显式Core(QObject * parent = 0);〜Core();无效的appInit();int getAuth();公共插槽:无效的appExit();专用插槽:void appMenuTriggered(QAction * action);私人的:无效
..
我有一个班级服务器,已经为其创建了一个信号连接(QString名称).我在名为join(QString name)的函数中调用它,但是出现错误 Server.o:在函数 Server :: join(QString)'中:Server.cpp :(.text + 0x48):未定义的引用 Server :: joined(QString)'collect2:ld返回1个退出状态 这是我
..
我让Qt-Creator使用Qt为我生成一个基本的窗口应用程序.我在那里添加了一个按钮,然后尝试将其连接到插槽.编译正常,但应用程序崩溃并返回3,请帮帮我,我不知道该怎么办. #include"form1.h"#include"ui_form1.h"#includeForm1 :: Form1(QWidget * parent):QMainWindow(parent),u
..
我有以下升级的QTableView: 类QRightClickableTableView:公共QTableView {Q_OBJECT上市:明确的QRightClickableTableView(QWidget * parent = 0):QTableView(parent){}专用插槽:void mouseReleaseEvent(QMouseEvent * e){if(e-> button(
..
有没有一种方法可以将任何C ++函数用作Qt插槽,而不必让其类继承自QWidget? 解决方案 您不能在Qt版本中
..
我可以以任何方式将模板类型用作插槽或信号参数吗?例如,我尝试定义以下内容: void exampleSignal(std :: map arg);void exampleSlot(std :: map arg); 这会在运行
..
我想在另一个启动时启动一个QThread,但是它不起作用. main.cpp代码段 Worker stat_worker;stat_worker.moveToThread(stat_worker.stat_thread);工人一些;some.moveToThread(some.somethread);QObject :: connect(stat_worker.stat_thread,S
..
我可以从C ++到QML发出带有Q_GADGET标签的结构的信号. 是否可以将这样的结构从QML发送到C ++插槽?我的代码第一步失败:在QML中创建实例. 此代码在第一行失败... var bs = new BatteryState()bs.percentRemaining = 1.0bs.chargeDate =新的Date()DataProvider.setBatterySt
..