gpt4 book ai didi

python-2.7 - 这是 PyQt 4 python 错误还是行为错误的代码?

转载 作者:行者123 更新时间:2023-12-02 22:44:31 27 4
gpt4 key购买 nike

以下代码应创建 QGraphicsView 小部件,该小部件拥有一个其中包含文本的 QGraphicsScene:

#!/usr/bin/python

import sys
from PyQt4.QtGui import *


if __name__ == '__main__':
app = QApplication(sys.argv)

view = QGraphicsView()
scene = QGraphicsScene()

scene.addText("Hello!")

view.setScene(scene)
view.show();

sys.exit(app.exec_())

这会打开窗口,将文本放在那里,但在我关闭窗口后 - python 转储核心并打印出几个问题:

(python:5387): Gtk-CRITICAL **: IA__gtk_container_add: assertion `GTK_IS_CONTAINER (container)' failed

(python:5387): Gtk-CRITICAL **: IA__gtk_widget_realize: assertion `GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed
...clip...
... above message is shown many, many times ...
...clip...
(python:5387): Gtk-CRITICAL **: IA__gtk_widget_realize: assertion `GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget)' failed
Segmentation fault (core dumped)

版本:python2.7 2.7.3-0ubuntu3.1python-qt4 4.9.1-2ubuntu1

最佳答案

它看起来与退出时删除 QApplication 对象有关,但我不确定为什么。你的代码在 Windows 下工作得很好,但我得到了与 Ubuntu 安装下相同的段错误输出。

我设法使用以下代码作为解决方法干净退出。

#!/usr/bin/python

import sys
from PyQt4.QtGui import QApplication, QGraphicsView, QGraphicsScene


if __name__ == '__main__':
app = QApplication(sys.argv)

view = QGraphicsView()
scene = QGraphicsScene()

scene.addText("Hello!")

view.setScene(scene)
view.show()

app.exec_()
app.deleteLater()
sys.exit()

关于python-2.7 - 这是 PyQt 4 python 错误还是行为错误的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12433491/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com