【发布时间】:2020-09-15 07:05:03
【问题描述】:
我有几个显示图像的标签。这些标签被添加到self.lay = QtWidgets.QVBoxLayout(self.scrollAreaWidgetContents) 。我从数据库中获取要使用 date_time 显示的图像并以这种方式显示图像。
if rows2 != None:
for row in rows2:
pixmap = QtGui.QPixmap("../"+row[1]).scaled(QtCore.QSize(200, 200)
, QtCore.Qt.KeepAspectRatio)
if not pixmap.isNull():
self.date_time.append(row[2])
self.count += 1
label = QtWidgets.QLabel()
label.setPixmap(pixmap)
label.mousePressEvent = self.showInfo
self.lay.addWidget(label)
+------+-----------------------------+---------------------+
| p_id | image_path | date_time |
+------+-----------------------------+---------------------+
| 0 | transfered_images/0/027.jpg | 2020-09-14 17:12:46 |
| 2 | transfered_images/2/227.jpg | 2020-09-15 09:44:38 |
+------+-----------------------------+---------------------+
点击时showInfo被调用
def showInfo(self,event):
print(self.date_time[self.count-1])
但是这种方式只显示最后一张图片的 date_time
如何识别点击了哪个标签并相应地显示时间。
【问题讨论】:
标签: python-3.x user-interface pyqt5