python - QLabel 不显示像素图

标签 python linux qt pyqt

我试图在 QLabel 中显示一个 QPixmap,但我得到的标签是空的。

这是我的代码:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui

class Test(QtGui.QWidget):

    def __init__(self):
        super(Test, self).__init__()

        self.initUI()

    def initUI(self):      
        pixmap = QtGui.QPixmap("test.png")

        lbl = QtGui.QLabel(self)
        lbl.setPixmap(pixmap)

        self.move(300, 200)
        self.setWindowTitle('Test')
        self.show()        

app = QtGui.QApplication(sys.argv)
ex = Test()
sys.exit(app.exec_())

当我启动应用程序时,我只得到一个空窗口:

empty window

我使用 Linux 发行版 (Manjaro)。我用 Ubuntu 进行了测试,但我遇到了同样的问题。

我不明白哪里出了问题,因为我成功地在 QGraphicsSceneQIcon 中显示了其他 QPixmapsQPushButton.

如何在我的标签中显示一个QPixmap

编辑:

这是另一个带有布局的版本,但没有解决问题:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui

class Test(QtGui.QWidget):

    def __init__(self):
        super(Test, self).__init__()

        self.initUI()

    def initUI(self):      
        layout = QtGui.QVBoxLayout()
        pixmap = QtGui.QPixmap("test.png")

        lbl = QtGui.QLabel(self)
        lbl.setPixmap(pixmap)

        layout.addWidget(lbl)
        self.setLayout(layout)

        self.move(300, 200)
        self.setWindowTitle('test')
        self.show()        

app = QtGui.QApplication(sys.argv)
ex = Test()
sys.exit(app.exec_())

最佳答案

问题不在于路径 问题是从 VSC 执行程序时 如果您在 CMD 或 TERMINAL 中执行程序,程序运行并显示图像! 已测试!

关于python - QLabel 不显示像素图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25397671/

相关文章:

python - 按组排序 float 列表

python - Mac OS El Capitan 上的 Jupyter 安装

linux - 如何对多行文本文件重复使用 tail 命令?

linux - 如何按列值分组到行和列标题中,然后对值求和

python - 如何在 Google App Engine Datastore 中存储非 ASCII 字符

python - 两个列表之间的匹配和计数的时间复杂度

新项目的 Java 或单声道

qt - 剔除可见区域之外的项目

c++ - 简单的文档切换器功能?

c++ - QAbstractItemModel + ModelTest::rowsInserted ASSERTion问题