加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – “必须在QPaintDevice之前构建一个QApplication”来自

发布时间:2020-12-20 11:30:42 所属栏目:Python 来源:网络整理
导读:我正忙着从 Python 2.6到3.3移植一个IRC客户端,我偶然发现了PyQt的问题.该应用程序最初使用PyQt4,我也正在重新编码它以使其与PyQt5一起工作,但我收到一个没有任何行引用的错误:“QWidget:必须在QPaintDevice之前构造一个QApplication”.我已将问题缩小到一
我正忙着从 Python 2.6到3.3移植一个IRC客户端,我偶然发现了PyQt的问题.该应用程序最初使用PyQt4,我也正在重新编码它以使其与PyQt5一起工作,但我收到一个没有任何行引用的错误:“QWidget:必须在QPaintDevice之前构造一个QApplication”.我已将问题缩小到一个单一的课程.

我知道这里已经多次被问过了,但是我无法为我的案例提供一个肯定的答案,所以如果我的问题看起来无知,我会道歉.

这是一些代码:http://pastebin.com/Lj60icgQ

愚蠢的我没有在我应该的导入语句之后放置“app”变量.然后我把剩下的代码放在主文件的底部,我不再得到那个错误.谢谢您的帮助!

解决方法

在这种情况下,我担心单个文件是不够的 – 执行流程不仅仅来自这个模块.当您尝试使用某些资源/创建一些需要初始化QApplication的对象(例如QIcon)时,通常会出现相关消息.

基于Qt的GUI应用程序的实例化通常如下所示:

if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    main_window = MainWindowClass()
    main_window.show()
    sys.exit(app.exec_())

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读