Adding a background image in python Adding a background image in python tkinter tkinter

Adding a background image in python


PhotoImage is not an attribute of the Tk() instances (root). It is a class from Tkinter.

So, you must use:

backgroundImage = PhotoImage("D:\Documents\Background.gif")

Beware also Label is a class from Tkinter...

Edit:

Unfortunately, Tkinter.PhotoImage only works with gif files (and PPM).If you need to read png files you can use the PhotoImage (yes, same name) class in the ImageTk module from PIL.

So that, this will put your png image in the canvas:

from Tkinter import *from PIL import ImageTkcanvas = Canvas(width = 200, height = 200, bg = 'blue')canvas.pack(expand = YES, fill = BOTH)image = ImageTk.PhotoImage(file = "C:/Python27/programas/zimages/gato.png")canvas.create_image(10, 10, image = image, anchor = NW)mainloop()

enter image description here


just change to :

    image = Image.open("~~~path.png")    backgroundImage=ImageTk.PhotoImage(image)

believe me this will 100% work


from Tkinter import *from PIL import ImageTkcanvas = Canvas(width = 200, height = 200, bg = 'blue')canvas.pack(expand = YES, fill = BOTH)image = ImageTk.PhotoImage(file = "C:/Python27/programas/zimages/gato.png")canvas.create_image(10, 10, image = image, anchor = NW)mainloop()