Insert image to a List box
Matimus
mccredie at gmail.com
Thu Nov 15 16:45:21 EST 2007
On Nov 15, 12:45 pm, linda.s <samrobertsm... at gmail.com> wrote:
> I run the following code and got the error (I put a .gif file on the desktop)
> Traceback (most recent call last):
> File "11.py", line 25, in <module>
> for gifname in os.listdir(dirpath):
> OSError: [Errno 2] No such file or directory: '.\\Desktop\\'
>
> import os
> import Tkinter
>
> root = Tkinter.Tk()
> L = Tkinter.Listbox(selectmode=Tkinter.SINGLE)
> gifsdict = {}
>
> dirpath = '.\\Desktop\\'
> for gifname in os.listdir(dirpath):
> if not gifname[0].isdigit():
> continue
> gifpath = os.path.join(dirpath, gifname)
> gif = Tkinter.PhotoImage(file=gifpath)
> gifsdict[gifname] = gif
> L.insert(Tkinter.END, gifname)
>
> L.pack()
> img = Tkinter.Label()
> img.pack()
> def list_entry_clicked(*ignore):
> imgname = L.get(L.curselection()[0])
> img.config(image=gifsdict[imgname])
> L.bind('<ButtonRelease-1>', list_entry_clicked)
> root.mainloop()
The exception points to this line as being the issue:
> for gifname in os.listdir(dirpath):
and the error says `No such file or directory: '.\\Desktop\\''
So, there must be no directory named '.\\Desktop\\' in your current
working directory. To find out your current working directory use
`os.getcwd()'. Make sure that `os.getcwd()' returns the path to a
directory with a Desktop folder in it. This is usually something like
'C:\\Documents and Settings\\username'.
Matt
Matt
More information about the Python-list
mailing list