如何解决将图像从tableWidget显示为PyQt5形式
图像已在表格小部件列中显示为图标。我现在试图展示一种搜索功能,该功能将接受行编辑,以便可以通过某些标签显示查询的行数据。如果我的查询格式容易受到SQL注入的影响,请按照最佳实践帮助检查和修改此代码,并帮助进行更正,以使我能够在表单上显示从数据库中获取的图像。该代码仅用于显示文本数据,但我没有重新显示从tablewidget提取的图像的逻辑。
def searchPers(self):
con = MySQLdb.connect(host="localhost",user="root",password="",database="db")
with con:
cur = con.cursor()
name = self.ui.name_edit.text()
cmd = "SELECT * FROM persons WHERE name LIKE'"+name+"'"
cur.execute(cmd)
row = cur.fetchone()
if row == None:
self.ui.response_label.setText("Person not found")
else:
self.ui.name_label.setText(str(row[0]))
pixmap = QPixmap()
pixmap.loadFromData(QByteArray.toBase64(row[1]))
self.ui.photo_label.setPixmap(QPixmap(pixmap))
解决方法
经过几次试验和错误,我后来知道了:
def searchPers(self):
con = MySQLdb.connect(host="localhost",user="root",password="",database="db")
with con:
cur = con.cursor()
name = self.ui.name_edit.text()
cmd = "SELECT * FROM persons WHERE name LIKE'"+name+"'"
cur.execute(cmd)
row = cur.fetchone()
if row == None:
self.ui.response_label.setText("Person not found")
else:
self.ui.name_label.setText(str(row[0]))
pixmap = QPixmap()
pixmap.loadFromData(QByteArray.fromBase64(row[1]))
self.ui.photo_label.setPixmap(QPixmap(pixmap))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。