[Twisted-Python] having trouble displaying Tkinter photo images with twisted, help?
Jp Calderone
exarkun at intarweb.us
Fri Dec 5 09:48:13 MST 2003
On Thu, Dec 04, 2003 at 08:15:44PM -0800, John Benson wrote:
> The following toy program has no trouble displaying a GIF image:
>
> from twisted.internet import protocol, reactor, tksupport
> import Tkinter
> class FingerProtocol(protocol.Protocol):
> pass
> class FingerFactory(protocol.ServerFactory):
> protocol = FingerProtocol
> root = Tkinter.Tk()
> tksupport.install(root)
> iconimage = Tkinter.PhotoImage(master=root, file='buzzard.gif')
> Tkinter.Button(image=iconimage).pack()
> reactor.listenTCP(1079, FingerFactory())
> reactor.run()
>
> However, I have a larger program that gets a blank image when the
>
> iconimage = Tkinter.PhotoImage(master=root, file='buzzard.gif')
> Tkinter.Button(image=iconimage).pack()
>
> code runs. I've tried moving the code around and come up with the same
> result: no image, although a widget is created and displayed as a blank
> area.
>
> Has anyone run across this before, and is there a workaround?
>
Just a guess - if the PhotoImage is garbage collected (No, the Button does
not hold a reference to it), the image data is freed and will
consequentially not be available for display. Perhaps you need to stash a
reference to the PhotoImage somewhere?
Jp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: </pipermail/twisted-python/attachments/20031205/496a74c8/attachment.sig>
More information about the Twisted-Python
mailing list