Images
In Tkinter, graphical images are displayed by creating independent
PhotoImage or BitmapImage
objects, and then attaching those image objects to other widgets via
image attribute settings. Buttons, labels,
canvases, text, and menus can all display images by associating
prebuilt image objects this way. To illustrate, Example 7-36 throws a picture up on a button.
Example 7-36. PP2E\Gui\Tour\imgButton.py
gifdir = "../gifs/" from Tkinter import * win = Tk() igm = PhotoImage(file=gifdir+"ora-pp.gif") Button(win, image=igm).pack() win.mainloop()
I could try to come up with a simpler example, but it would be
tough -- all this script does is make a Tkinter
PhotoImage object for a GIF file stored in another
directory, and associate it with a Button
widget’s image option. The result is
captured in Figure 7-36.

Figure 7-36. imgButton in action
PhotoImage and its cousin,
BitmapImage, essentially load graphics files, and
allow those graphics to be attached to other kinds of widgets. To
open a picture file, pass its name to the file
attribute of these image objects. Canvas
widgets -- general drawing surfaces discussed in more detail later
on this tour -- can display pictures too; Example 7-37 renders Figure 7-37.
Example 7-37. PP2E\Gui\Tour\imgCanvas.py
gifdir = "../gifs/" from Tkinter import * win = Tk() img = PhotoImage(file=gifdir+"ora-lp.gif") can = Canvas(win) can.pack(fill=BOTH) can.create_image(2, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access