我正在使用QTCreator和pyqt5开发GUI,它使用一对线程从传感器获取数据以在GUI上显示它们。我有一个退出和关闭GUI的按钮,但关闭后会显示以下异常:
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x71d4ef60>
Traceback (most recent call last):
File "/usr/lib/python3.5/weakref.py", line 117, in remove
TypeError: 'NoneType' object is not callable
现在我的程序开始于:
if __name__ == '__main__':
app = QApplication(sys.argv)
form = Powapp()
#form.showFullScreen()
form.show()
sys.exit(app.exec())
我发现,如果按照以下方式启动它,则不会出现任何异常,并且该应用程序可以正确关闭:
def main():
app = QApplication(sys.argv)
form = Powapp()
#form.showFullScreen()
form.show()
sys.exit(app.exec())
if __name__ == '__main__':
main()
有人知道导致该异常的原因吗?我已经阅读了几篇有关启动GUI的文章,但是我不太了解两种启动程序之间的区别。有人可以引导我吗?