Insert image to a List box

linda.s samrobertsmith at gmail.com
Thu Nov 15 21:45:00 CET 2007


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()



More information about the Python-list mailing list