单独文件中的 PySide 信号
Posted
技术标签:
【中文标题】单独文件中的 PySide 信号【英文标题】:PySide Signals in separate file 【发布时间】:2013-01-15 02:34:32 【问题描述】:我正在使用 Qt 和 PySide 编写一个 GUI 应用程序,我通常在我的类的 init 函数中连接我的信号。如何将所有信号放在一个单独的文件中,然后从我的主文件中的文件中调用该函数?像这样。
import Signals
class Program(QtGui.QMainWindow, GUI.Ui_MainWindow):
def __init__(self, parent=None):
super(Program, self).__init__(parent)
self.setupUi(self)
Signals.ConnectSignals()
信号.py
class ConnectSignals(QtGui.QMainWindow, VUI.Ui_MainWindow):
def __init__(self, parent=None):
super(ConnectSignals, self).__init__(parent)
self.setupUi(self)
self.actionClose.triggered(self.close)
但是当我这样做时,我会收到此消息 self.actionClose.triggered(self.close) TypeError: native Qt signal is not callable
【问题讨论】:
你解决过这个问题吗? 【参考方案1】:我不确定其余部分是否应该/将起作用,但错误是因为你缺少 .connect
我认为应该是
self.actionClose.triggered.connect(self.close)
self.actionClose.triggered
是一个信号(我假设actionClose
是一个动作),错误告诉您信号没有定义__call__
。
【讨论】:
以上是关于单独文件中的 PySide 信号的主要内容,如果未能解决你的问题,请参考以下文章
使用重载的 PySide 信号调用 Python 函数而不传递参数