14

如何将图片添加或导入到QWidget? 我找到了线索。我可以在该标签中添加一个Label并添加一个。Picture我需要QPicture(). 我可以使用的可能性是,QLabel.setPicture(self.QPicture)

4

3 回答 3

18

这是一些代码,可以完成您和@erelender 所描述的操作:

import os,sys
from PyQt4 import QtGui

app = QtGui.QApplication(sys.argv)
window = QtGui.QMainWindow()
window.setGeometry(0, 0, 400, 200)

pic = QtGui.QLabel(window)
pic.setGeometry(10, 10, 400, 100)
#use full ABSOLUTE path to the image, not relative
pic.setPixmap(QtGui.QPixmap(os.getcwd() + "/logo.png"))

window.show()
sys.exit(app.exec_())

泛型QWidget没有setPixmap(). 如果这种方法对您不起作用,您可以考虑制作自己的自定义小部件,该小部件派生自QWidget并覆盖paintEvent显示图像的方法。

于 2010-02-22T04:02:48.890 回答
14

QPicture不是你想要的。QPicture记录和回放QPainter命令。你想要的是QPixmap. 为构造函数提供一个文件名QPixmap,并将此像素图设置为使用QLabel.setPixmap().

python中的一个实现示例是:

label = QLabel() 
pixmap = QPixmap('path_to_your_image')
label.setPixmap(pixmap)
于 2010-02-18T07:18:15.340 回答
0

在您的 GUI 脚本中使用此代码段:

image = QtGui.QLabel(self)
image.setGeometry(50, 40, 250, 250)
pixmap = QtGui.QPixmap("C:\\address\\to\\your_image.png")
image.setPixmap(pixmap)
image.show()
于 2017-10-28T18:19:45.667 回答