QLabel不显示像素图

时间:2014-08-20 06:00:12

标签: python linux qt pyqt

我正在尝试在QPixmap中显示QLabel,但我的标签是空的。

这是我的代码:

#!/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测试过,但我遇到了同样的问题。

我不明白出了什么问题,因为我成功地在QPixmaps中的QGraphicsSceneQIcon中显示了其他QPushButton

如何在我的标签中显示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_())

1 个答案:

答案 0 :(得分:0)

麻烦不是路径 问题是从VSC执行程序时 如果您以CMD或TERMINAL执行程序,则程序将运行并显示图像! 经过测试!