signals-slots相关内容

Qt Creator - 如何查看设计器的代码?

我正在使用 Qt Creator. 我正在使用信号和槽编辑器,我想查看它生成的代码. 如何查看代码? 谢谢! 解决方案 假设您在 Qt Creator 中有一个名为 widget.ui 的表单文件. 编译项目后,您将在项目文件夹中找到一个名为 ui_widget.h 的文件. 如果你打开它,你会看到由 uic 工具. ..
发布时间:2021-06-30 18:53:25 其他开发

QT:没有这样的插槽

问题是每次我从主窗口启动“设置"窗口时,我都会在 Qt Creator 中不断收到“没有这样的插槽"运行时错误.到目前为止,我发现 Qt 非常违反直觉,而且这个 slot 'n 信号的概念似乎与简单地传递变量或函数调用有点牵强.基本上,我有一个带有设置选项的菜单,单击该选项时会打开一个设置窗口,该窗口需要从用户那里获取一个 double 并在主窗口中更新一个 var. 设置窗口.h cla ..
发布时间:2021-06-30 18:50:50 其他开发

Qt:将受保护的 QListWidget::itemChanged 信号连接到插槽

我根据新的连接语法在Qt5中使用了以下语法,以避免插槽和信号的类型不匹配对于带有可检查项的 QListWidget. connect(item, &QListWidget::itemChanged,this, &mainWindow::checkItemChanged); 我想运行我的插槽,以防任何列表项更改其状态.为此,由于 this answer,我使用了 itemChanged 信号,但 ..
发布时间:2021-06-30 18:33:15 C/C++开发

Python PyQt 信号并不总是有效

希望我的第一个问题正确地遵循了指南.我正在尝试使用 MVC 结构创建一个 GUI.我很难理解为什么控制器并不总是接收我的信号.我知道我缺少一些简单的东西.我正在从一个简单的计算器中附加代码,我用作指南.我删除了大部分功能以尽可能地简化它.现在只有 3 个原始按钮和我自己的按钮.为了调试,我只是在按下按钮时打印出按钮上的值. 导入系统# 从 PyQt5.QtWidgets 导入 QApplicat ..
发布时间:2021-06-24 20:30:35 Python

Pyside:多个 QProcess 输出到 TextEdit

我有一个调用可执行文件的 pyside 应用程序.我想在 n 个进程中异步运行这个可执行文件,并在 QTextEdit 中捕获每个进程的输出. 目前我有: def run(self, args, worklist):self.viewer = OutputDialog(self)self.procs = []对于工作列表中的路径:final_args = args + 路径p = QtCo ..
发布时间:2021-06-24 20:27:26 Python

PySide 发出信号导致 python 崩溃

我正在阅读“使用 Python 和 Qt 进行快速 GUI 编程"这本书,并且在信号/插槽项目上遇到了问题.我已经下载了作者的代码来与我自己的代码进行比较,看起来都一样,但是,当我从派生的旋转框类发出信号时,python 只是崩溃了.这是我拥有的完整代码: 导入系统从 PySide.QtCore 导入 *从 PySide.QtGui 导入 *类 ZeroSpinBox(QSpinBox):零 = ..
发布时间:2021-06-24 20:27:17 Python

如何使用自定义 python 类型参数发出 PySide 信号?

我在 PySide python Qt 程序中无法正确使用信号.我想发出一个信号,该信号采用自定义 python 类型的单个参数.文档说 可以使用 QtCore.signal() 类定义信号.Python 类型和 C 类型可以作为参数传递给它. 所以我尝试了以下方法: from PySide import QtCore从 PySide.QtCore 导入 QObjectFoo类:经过 ..
发布时间:2021-06-24 20:26:32 Python

PySide:从插槽返回值

Pyside 文档 指出插槽可以有返回值,但我还没有弄清楚如何让它这样做. 我找不到任何可用的代码示例,所以我按照文档的建议添加了一个装饰器: def testSlot(self):print('testSlot 被调用')return '返回值返回值返回值' 我正在尝试像这样捕获返回值: ret = foo.testSignal.emit() 但它不起作用.我的测试代码,你可以在这 ..
发布时间:2021-06-24 20:25:43 Python

从单例接收 pyqtSignal

python 中有单例类: from PyQt5.QtCore import QObject, pyqtSignal导入日志类单例(QObject):_instance = 无def __new__(cls, *args, **kwargs):如果不是 isinstance(cls._instance, cls):cls._instance = QObject.__new__(cls, *arg ..
发布时间:2021-06-24 20:09:41 Python

PyQt5:如何将 QPushButton 连接到插槽?

好的,几乎每个教程/可理解的人类语言文档都是针对 PyQt4 的.但是,PyQt5 改变了整个“连接按钮到插槽"的工作方式,我仍然不知道如何去做. 我在 QtDesigner 中做了一个快速的 gui,我有一个 QPushButton 和一个标签.当我单击按钮时,我希望标签上的文本发生变化.在 QtDesigner 中的 C++ 中,很容易将两者连接起来.但是我必须全部用python编写. ..
发布时间:2021-06-24 20:06:41 Python

在 PyQt5 中,为什么 Signal 无法连接外部类中的 Slot?

背景 我正在使用信号在 PyQt5 中实现 MVC.一个程序中有多个接口.每个页面都有一个对应的控制器,最后所有的控制器组合在一起. 问题 我的问题是:我在四个不同的地方实现了相同的slot函数,但是为什么Signal不能连接外部类中的slot? 这是目录树: 错误├─ 界面│ └─ main_window.py├─ 控制│ ├─ 控制器.py│ └─ login_con ..
发布时间:2021-06-24 20:05:50 Python

我可以创建一个不是类的字段成员的新样式 pyqt 信号吗?

因此,我可以看到使用 PyQt4 创建样式信号的唯一方法如下: class MyCustomClass(QtCore.QThread):custom_signal = QtCore.pyqtSignal(str) 我的问题是,如果我在其他任何地方声明该信号,pyqt 就会向我抛出一个关于 custom_signal 没有 connect() 函数的错误. 当我想做一些简单的事情时,我想创 ..
发布时间:2021-06-24 19:58:07 Python

pyqt 自动连接信号

我想使用自动连接功能.我正在使用这个例子: http://www.eurion.net/python-snippets/snippet/Connecting%20signals%20and%20slots.html 它有效,但我想创建自己的信号和插槽,示例使用内置信号. 例如,这里有一个带有自定义槽的自定义信号,但不起作用: 导入系统从 PyQt4 导入 QtGui、QtCor ..
发布时间:2021-06-24 19:52:53 Python

使用新式语法连接重载的 PyQT 信号

我正在设计一个自定义小部件,它基本上是一个 QGroupBox,其中包含可配置数量的 QCheckBox 按钮,其中每个按钮都应控制表示的位掩码中的特定位通过 QBitArray.为了做到这一点,我将 QCheckBox 实例添加到了 QButtonGroup,每个按钮都有一个整数 ID: def populate(self, num_bits, parent = None):"""根据位掩码 ..
发布时间:2021-06-24 19:51:02 Python

从 qComboBox 弹出菜单中捕捉鼠标按钮按下信号

我做了多选QComboBox.项目是可检查的(每个项目都有复选框和文本值).CheckBox 仅在用户单击时才被选中.我想要的是在用户单击文本值时捕捉信号,以便我可以将旁边的复选框设置为选中状态.如何做到这一点? 这是我将模型设置为组合框的方式: areas = [“区域一"、“区域二"、“区域三"、“区域四"]模型 = QtGui.QStandardItemModel(5, 1)# 5 ..
发布时间:2021-06-24 19:50:06 Python