python - 如何查找信号是否连接到任何东西

标签 python qt pyqt signals slot

有没有办法判断一个信号是否已经连接到一个函数?

即我想看看 signals.siSelectionChange 是否连接到任何东西

signals.siSelectionChange.connect( self.SelAsSiAssets )

最佳答案

您可以使用 QObject.receivers获取连接函数的计数。我按如下方式使用它,在 QWidget 的 closeEvent() 中,我用作窗口:

    receiversCount = self.receivers(QtCore.SIGNAL("siSelectionChanged()"))
    if receiversCount > 0:
        self.sigChanged.disconnect()

请注意,参数字符串中的签名必须与真实签名匹配。

关于python - 如何查找信号是否连接到任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8166571/

相关文章:

python - 使用 QCompleter 全局输入?

python - 我的单元测试报告失败(AssertionError : List differ) but they don't appear to differ, 为什么?

python - 'int' 对象没有属性 'sub' ?

c++ - 如何使用 QFtp::list 和 QFtp::listInfo 检查目录是否存在

c++ - Qt单元测试依赖问题

python - 将 QStringList (PyQt) 转换为普通的 python 列表

接受参数与输入的 Python 函数

python - 多项式回归失败

qt - 如何使用打过补丁的qt安装wkhtmltopdf?

python - 如何设置像素图的最大宽度和高度?