Фоновое изображение Tkinter - PullRequest
1 голос
/ 24 марта 2019

Я не могу отобразить изображение в качестве фона окна GUI с приведенным ниже кодом, есть идеи?Я много раз менял типы расширений файлов.

from tkinter import *
from PIL import ImageTk, Image

window = Tk()    
window.title("My Application")

lbl = Label(window, text="Hello", font=("arial italic", 25))
lbl.grid(column=0, row=0)


backgroundImage = PhotoImage(file = "C:\\Users\\User 
Person\\Desktop\\months.gif")

label = Label(master=window,
          image = backgroundImage,
          text='This is a test for stackflow',
          height = 2
          )
label.place(x=0, y=0, relwidth=1, relheight=1)

window.mainloop()

1 Ответ

0 голосов
/ 24 марта 2019

Я могу отобразить изображение с вашим кодом, но я использовал необработанную строку, чтобы определить путь для изображения GIF.Вы должны использовать его следующим образом:

backgroundImage = PhotoImage(file = r"C:\Users\User Person\Desktop\months.gif")

Обратите внимание на r" ", который делает путь к изображению необработанной строкой, поэтому вам не нужно экранировать \.

Iтакже определена геометрия окна:

 window.title("My Application")
 window.geometry("320x240")

Обновление :

В соответствии с комментарием, вы также можете использовать библиотеку PIL, чтобы сначала открыть изображение, чтобы исправитьошибка Tkinter error: Couldn't recognize data in image file:

from PIL import ImageTk, Image
backgroundImage = ImageTk.PhotoImage(Image.open(r"C:\Users\User Person\Desktop\months.gif")) 

Примечание :

Также необходимо убедиться, что это действительный файл GIF.Попробуйте открыть файл в средстве просмотра изображений Windows или аналогичном программном обеспечении.Кроме того, вы упомянули, что вы изменили расширение файла, это может сделать файл нестабильным и сделать его недействительным.Поэтому убедитесь, что вы используете оригинальное расширение файла.Если вы хотите преобразовать файл в другой формат, используйте для этого специальное программное обеспечение или напишите простой скрипт на Python (хотя я никогда не пробовал этот вариант), который мог бы выполнить это преобразование, не нарушая файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...