Я пытаюсь открыть изображение (jpg) из буфера (получить как BLOB-объект из базы данных Oracle) как Gtk.Image () и добавить его в окно Gtk, но я получаю сообщение об ошибке "Ожидается Gtk.Widget, но получено PIL.JpegImagePlugin.JpegImageFile». Я могу показать изображение с помощью show (), я могу открыть файл jpeg window.add из пути на диске, а затем показать окно, но когда я пытаюсь добавить jpg из буфера, я получаю ошибку. Вот что я произвел:
my_source=Here_I_get_BLOB_img_from_database()
newimage=Gtk.Image()
newimage=my_source.read()
image=io.BytesIO(newimage)
dt=Image.open(image)
newwindow = Gtk.Window(modal=True)
На данный момент у меня есть jpg в буфере, и я могу сделать:
dt.show() # to display the image in system imageviewer
Или сохраните dt как jpg, или добавьте в новое окно результат image.set_from_file («путь с расширением jpg»), но не знаете, как это сделать:
newwindow.add(dt)
Или что-нибудь с подобным эффектом. Как это сделать самым простым способом?