Quoting William O'Higgins <[EMAIL PROTECTED]>: > I am writing a small application that takes a user through a set of > steps - like a wizard. What I need is an idea how I can start with a > window, have the use click "Next" and get another window. My > understanding is that it is undesirable to have more than one mainloop > per program. Thanks.
If you want more than one window, you use Tkinter.Toplevel. But I think this is not what you want here. A few options spring to mind.. You could build multiple frames, but only pack the one you are interested in. eg: from Tkinter import * tk = Tk() page1 = Frame(tk) Label(page1, text='This is page 1 of the wizard').pack() page1.pack(side=TOP) page2 = Frame(tk) Label(page2, text='This is page 2 of the wizard.').pack() page3 = Frame(tk) Label(page3, text='This is page 3. It has an entry widget too!').pack() Entry(page3).pack() pages = [page1, page2, page3] current = page1 def move(dirn): global current idx = pages.index(current) + dirn if not 0 <= idx < len(pages): return current.pack_forget() current = pages[idx] current.pack(side=TOP) def next(): move(+1) def prev(): move(-1) Button(tk, text='Next', command=next).pack(side=BOTTOM) Button(tk, text='Previous', command=prev).pack(side=BOTTOM) ------------------ Another option is to use Pmw.Notebook without the tabs (and with next/previous buttons to change pages). This could be a bit easier (and it will do stuff like making the wizard stay the same size). Thirdly, a google search turned up this: http://www.freshports.org/devel/wizard/ HTH. -- John. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor