On Sat, 21 May 2016 08:22:41 -0700 (PDT), sweating_...@yahoo.com wrote: > > I am working on an image project, and I can display my image in > main(). I mean, I can load my image in my main(). Needless, it is > awkward. I am trying to load my image with a function, but got an > empty image window popped up, no image content loaded. Please take a > look at code: > > rom Tkinter import * > > def load_img(win): > img = PhotoImage(file="xxx.gif") > Label(win, image=img).pack() > > win = Tk() > load_img(win) > win.mainloop() >
This seems to work: ----------- from Tkinter import Tk, PhotoImage, Label def load_img(win): img = PhotoImage(file="/home/peter/dow.gif") Label(win, image=img).pack() return img win = Tk() img = load_img(win) win.mainloop() ----------- I guess the problem was that the "img" created in load_img went out of scope and was deleted when load_img returned. I just tried the "return img" as an experiment to keep it from going out of scope; from a software-engineering standpoint this might be a gross kluge. Baffling? Personally, I never got past feeling generally bewildered in Tkinter-land, and now I use matplotlib for all my graphical needs. I had great hopes for PyGUI at one point, but I hear very little about it now. -- To email me, substitute nowhere->runbox, invalid->com. -- https://mail.python.org/mailman/listinfo/python-list