2015-04-02 2 views
0

В моей базе данных есть изображение (BLOB) с именем LOGO. Я хочу, чтобы отобразить изображение на питон TkInter окнеПоказать изображение (BLOB) из базы данных mysql в окно tkinter

import Tkinter 
    window= Tk() 
    db= MySQLdb.connect("localhost","root","anup","NursecallDB") 
    cursor=db.cursor() 
    sql= "SELECT LOGO FROM SYSTEMDETAILS" 
    cursor.execute(sql) 
    logo=cursor.fetchone() 
    img =PhotoImage(logo) 
    panel = Tkinter.Label(window, image = img) 
    panel.grid(row=0,rowspan=5,columnspan=2) 
    window.mainloop() 

, когда я бег этой программы он показывает ошибку в

panel = Tkinter.Label(window, image = img) 
TypeError:_str_returned non-string(type tuple) 

ответ

1

Загрузите изображение в папку и вставьте путь в базу данных. Если логотип - это путь к изображению. то программа будет работать.

0

PhotoImage взять строку в аргумент, который является именем файла изображения, которое вы хотите load или y объект изображения Python. Он не может принять blob в качестве аргумента. Вам нужно загрузить изображение из буфера (см. Метод здесь http://effbot.org/imagingbook/image.htm), а затем передать изображение в конструктор PhotoImage

+0

У меня есть сервер RPI, и я пишу приведенный выше код, чтобы сохранить загруженные изображения. Image.it показывает, что не удалось скопировать файл. –

Смежные вопросы