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 display images by associating prebuilt
image objects in this way. To illustrate, Example 9-36 throws a picture up
on a button.
Example 9-36. PP3E\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 9-36.
Figure 9-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 in this tour—can display pictures too;
Example 9-37 renders Figure 9-37.
Figure 9-37. An image on canvas
Example 9-37. PP3E\Gui\Tour\imgCanvas.py
gifdir = "../gifs/" ...
Get Programming Python, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.