¿Cómo puedo agregar o importar una imagen a un QWidget
? He encontrado una pista. Puedo agregar una Label
y agregar una Picture
en esa etiqueta. Necesito los argumentos para el QPicture()
. El probable que puedo usar es, QLabel.setPicture(self.QPicture)
.
Aquí hay un código que hace lo que usted y @erelender describieron:
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_())
Un QWidget
genérico no tiene setPixmap()
. Si este enfoque no funciona para usted, puede crear su propio widget personalizado que se deriva de QWidget
y anular el método paintEvent
para mostrar la imagen.
QPicture
no es lo que quieres. QPicture
graba y reproduce los comandos de QPainter
. Lo que quieres es QPixmap
. Asigne un nombre de archivo al constructor de QPixmap
y establezca este pixmap en la etiqueta usando QLabel.setPixmap()
.
Un ejemplo de implementación en python sería:
label = QLabel() pixmap = QPixmap('path_to_your_image') label.setPixmap(pixmap)
Utilice este fragmento de código en su script de 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()