Tkinter buttons with image ?

K

kowald

Hi everybody,

I'm just getting into Tkinter and try to create a button that displays an image
instead of text. I do something like:
tmp = PhotoImage(file='start.gif')
buttonStart = Button(frameWb,image=tmp,command=root.quit)

The button now displays a blank (grey) area of the size of the image, but as I
said, it is blank :-(.

Any idea what I'm doing wrong ?
I'm using Python2.3

Many thanks,

Axel
 
P

Peter Otten

I'm just getting into Tkinter and try to create a button that displays an
image instead of text. I do something like:


The button now displays a blank (grey) area of the size of the image, but
as I said, it is blank :-(.

Any idea what I'm doing wrong ?

Using the image in Tkinter will not keep it from being garbage-collected.
You need to keep a reference to the image, either in a global variable or
like so:

buttonStart = Button(frameWb, image=tmp, command=root.quit)
buttonStart.image = tmp

Peter
 
A

Axel Kowald

Using the image in Tkinter will not keep it from being garbage-collected.
You need to keep a reference to the image, either in a global variable or
like so:

buttonStart = Button(frameWb, image=tmp, command=root.quit)
buttonStart.image = tmp

Ah, that's the trick.

Many thanks,

Axel
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top