信号/插槽在PyQt5中不会断开连接

时间:2016-12-04 06:52:46

标签: pyqt pyside

在以下代码段中,PyQt5的行为与PyQt4PySide不同。在PyQt5按下按钮时,'无'打印到控制台,这意味着删除小部件时信号未断开。在PyQt4PySide中,一切都很好,没有打印出来,即信号断开连接。这是一个错误还是我做错了什么?我有PyQt5 v5.7.0

import sys
from PyQt5 import QtCore, QtWidgets  # for PyQt5
#from PyQt4 import QtCore, QtGui  # for PyQt4
#from PySide import QtCore, QtGui  # for PySide
#QtWidgets = QtGui  # for PySide and PyQt4

class MyWidget(QtCore.QObject):
    def doChange(self):
        print(self)

app = QtWidgets.QApplication([])
w = MyWidget()
button = QtWidgets.QPushButton("Push me")
button.clicked.connect(w.doChange)
del w
button.show()
sys.exit(app.exec_())

更新:此问题仅在Linux上可观察到。 Windows似乎工作正常。似乎这是一个错误。

0 个答案:

没有答案