我在python的tablewidget pyqt5中将图像从url插入单元格时遇到问题。我想在单元格中显示图像。您可以从附件中的图像中看到我的桌子。当我使用下面的代码时,我的单元格中什么都没有(零图像)。请向我展示执行此操作的方法。
# sample link with image i use from loop:
#https://a.allegroimg.com/original/037495/be1ecbef43e7a2039a0bc42ceddf.jpg
zdi2 = 'https://a.allegroimg.com/original/037495/be1ecbef43e7a2039a0bc42ceddf.jpg'
data = urllib.urlopen(zdi2).read()
pixmap = QPixmap()
pixmap.loadFromData(data)
icon = QIcon(pixmap)
self.tableWidget_14.setItem(row_numer13,1,QTableWidgetItem(icon))
问题已解决。解决方案是QLabel:
zdi2 = 'https://a.allegroimg.com/original/037495/be1ecbef43e7a2039a0bc42ceddf.jpg'
r = requests.get(zdi2,stream=True)
assert r.status_code == 200
img = QImage()
assert img.loadFromData(r.content)
w = QLabel()
w.setPixmap(QPixmap.fromImage(img))
w.setGeometry(0,0,5,5)
w.resize(20,20)
self.tableWidget_14.setCellWidget(row_numer13,1,w)