首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows上的PyQt4应用程序在退出时崩溃

Windows上的PyQt4应用程序在退出时崩溃
EN

Stack Overflow用户
提问于 2011-04-01 05:53:46
回答 2查看 4.1K关注 0票数 3

我正在用PyQt4编写一个桌面应用程序,突然它开始在退出时崩溃。

我检查了我的所有代码,以确保我没有做任何有趣的事情使它崩溃,我不认为代码有任何错误。

我之前看到过一些关于这个问题的投诉,但它与以前的版本有关,人们建议将PyQt4升级到最新版本,所以我这样做了,但这对崩溃问题没有帮助。

所以我问,有没有什么东西会导致PyQt4的这种行为,我需要在终止过程中做一些事情来清理Qt或其他我遗漏的东西吗?

EN

回答 2

Stack Overflow用户

发布于 2014-01-09 16:58:11

我在一个简单的hello world应用程序(具有20个标签的QDialog)中也遇到了同样的问题。奇怪的是,这个问题在10个标签下就消失了。

我通过强制退出解决了这个问题,如下所示:

代码语言:javascript
复制
def closeEvent(self, event):
    exit()

这发生在VirtualBox上具有PythonV2.7 (x32)的PyQt v4.10.3forPythonv2.7(X32)的Windows上。

票数 7
EN

Stack Overflow用户

发布于 2011-07-11 02:41:35

调试器只会告诉我们已经知道的事情:应用程序在退出时崩溃。

您可能需要设置一个活动窗口,该窗口在关闭时将导致确定的垃圾回收和干净的应用程序退出。有更多合适的方法可以做到这一点,但下面这个简单的示例应该只需要最少的代码更改,并且基于我编写的一个对话框应用程序,并且运行良好。

代码语言:javascript
复制
#The application
app = QtGui.QApplication(sys.argv)

#The main window
MainWindow = QtGui.QMainWindow()
app.setActiveWindow(MainWindow) #<---- This is what's probably missing

#the ui
ui = Ui_MainWindow()
ui.setupUi(MainWindow)

#start the application's exec loop, return the exit code to the OS
exit(app.exec_())
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5506781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档