Python, tkinter: Почему этот jpeg не отображается?

Попытка отобразить изображение из Интернета в окне моего графического интерфейса.

Пока мой код:

picURL = "https://graph.facebook.com/" + ID + "/picture" picBytes= urlopen(picURL).read() picData = io.BytesIO(picBytes) picPil = Image.open(picData) picTk = ImageTk.PhotoImage(picPil) label = Label(image = picTK, bg = "blue").pack() 

Проблема в том, что все, что я получаю, это синяя коробка, где должна быть картинка. Как это исправить?

Использование python 3.3 для окон

One Solution collect form web for “Python, tkinter: Почему этот jpeg не отображается?”

Сейчас это дикая догадка, но я просто вспомнил о подобной проблеме . Таким образом, я смог воспроизвести вашу «синюю коробку», так что это может быть и вашей проблемой. Я просто попробую.

Я предполагаю, что PhotoImage создается в какой-то другой области (возможно, метод showImage(self, id) или что-то в этом роде), и никакая ссылка на него не выходит за рамки этого метода. Это приводит к тому, что PhotoImage будет PhotoImage мусор в конце этого метода, даже если он используется в Label!

Попробуйте создать переменную, которая существует в течение всего срока службы фрейма и привязать PhotoImage к этой переменной (например, self.images[ID] при использовании класса для GUI или какой-либо глобальной переменной в противном случае). Если я прав, и это действительно проблема, то это должно помочь.

  • Как подключить индикатор выполнения к функции?
  • Tkinter привязывает клики к кадру
  • Как получить горячие клавиши быстрого доступа Tkinter Mac (cmd + key)
  • Текст в поле ввода очищается при нажатии Tkinter
  • как проверить, нажата ли клавиша ввода python
  • Установите значение по умолчанию для ttk Combobox
  • В чем разница между виджетами tkinter и tkinter.ttk в Python?
  • python tkinter с потоковой обработкой
  • Переменный размер списка флажков в Tkinter?
  • Tkinter Canvas create_window ()
  • Позиция мыши Python Tkinter
  • Python - лучший язык программирования в мире.