为什么PyQt5 QPixmap会使python崩溃?

2024-09-27 00:19:20 发布

您现在位置:Python中文网/ 问答频道 /正文

当我尝试将这个字符串列表转换为pixmap时,python崩溃了。 有什么建议吗

openIcon = [
    '16 13 5 1',
    '. c #040404',
    '# c #808304',
    'a c None',
    'b c #f3f704',
    'c c #f3f7f3',
    'aaaaaaaaa...aaaa',
    'aaaaaaaa.aaa.a.a',
    'aaaaaaaaaaaaa..a',
    'a...aaaaaaaa...a',
    '.bcb.......aaaaa',
    '.cbcbcbcbc.aaaaa',
    '.bcbcbcbcb.aaaaa',
    '.cbcb...........',
    '.bcb.#########.a',
    '.cb.#########.aa',
    '.b.#########.aaa',
    '..#########.aaaa',
    '...........aaaaa'
    ]

if __name__ == "__main__":
    from PyQt5.QtGui import QPixmap
    openIcon_p = QPixmap(openIcon)
    openIcon_p.save("openIcon.png")

使用:

win32上的Python 3.7.4(tags/v3.7.4:e0935912e,2019年7月8日,20:34:20)[MSC v.1916 64位(AMD64)]

PyQt5==5.13.0


Tags: 字符串none列表建议pyqt5aaaaaaaaaaaa
1条回答
网友
1楼 · 发布于 2024-09-27 00:19:20

从控制台运行代码以查看错误消息。 在QPixmap之前需要QApplication

from PyQt5 import QtWidgets, QtGui
import sys

openIcon = [
    '16 13 5 1',
    '. c #040404',
    '# c #808304',
    'a c None',
    'b c #f3f704',
    'c c #f3f7f3',
    'aaaaaaaaa...aaaa',
    'aaaaaaaa.aaa.a.a',
    'aaaaaaaaaaaaa..a',
    'a...aaaaaaaa...a',
    '.bcb.......aaaaa',
    '.cbcbcbcbc.aaaaa',
    '.bcbcbcbcb.aaaaa',
    '.cbcb...........',
    '.bcb.#########.a',
    '.cb.#########.aa',
    '.b.#########.aaa',
    '..#########.aaaa',
    '...........aaaaa'
    ]

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv) 
    openIcon_p = QtGui.QPixmap(openIcon)
    openIcon_p.save("openIcon.png")

编辑:如果没有添加行,代码将显示以下错误消息:

QPixmap::fromImageInPlace: QPixmap cannot be created without a QGuiApplication
QPixmap: Must construct a QGuiApplication before a QPixmap 

有关说明,请参见Qt-Documentation。还有一个关于何时使用QtWidgets.QApplication和何时使用QtGui.QGuiApplication的描述,如eyllanesc所评论的

相关问题 更多 >

    热门问题