3
我一直在尝试从URL设置图像到QLabel。但我没有运气。 下面是我尝试做正确的现在:PyQt - 从URL设置QLabel图像
import urllib, cStringIO
img_file = cStringIO.StringIO(urllib.urlopen(image_url).read())
image_file = Image.open(img_file)
然后将其设置为QImage的:
final_image = QImage(image_file)
self.emit(SIGNAL("finished(QImage)"),
final_image
)
的图像获得通过从一个线程返回到主界面的方法。
def set_image(self, final_image):
self.main_picture_pixmap = QPixmap.fromImage(final_image).scaled(
QSize(self.picture_label.size()),
Qt.KeepAspectRatio,
Qt.FastTransformation
)
self.picture_label.setPixmap(self.main_picture_pixmap)
这样做,我得到的错误:
QPixmap::scaled: Pixmap is a null pixmap
反正是有解决这个问题,或者以不同的方式来做到这一点?
我试过了,我也得到了错误 “”“QImage.loadFromData(STR,STR格式=无):不受约束的方法必须有型‘的QImage’的第一个参数‘’” 也许我不是读取的权利,将其存储到一个字符串? – Edvinauskas
线索是'unbound method':你必须在'QImage'的实例上使用它,而不是在类上。 [这](http://pastebin.com/2h6JHkBh)应该工作 – mata
太棒了!它的工作原理,谢谢!问题是从URL中获取图像。 – Edvinauskas